Thiết lập môi trường thí nghiệm sẽ khá đơn giản khi triển khai tường lửa XG ảo. Các tệp firmware ISO có thể tải từ cổng tải xuống chính thức. Điều đáng chú ý là firmware này cho phép quản trị viên truy cập trực tiếp vào root shell qua giao diện serial, TelnetConsole.jsp trong giao diện web hoặc máy chủ ssh . Vì vậy không còn bị giới hạn bởi các shell hay tránh các biện pháp bảo vệ khác để phân tích.

image.png

Báo cáo của XG thông báo có 1 bản bán sửa lỗi nhanh (hotfix) cho lỗ hổng n-day mà tôi đang kiểm tra được tự động áp dụng.

Kiến trúc

Để hiểu được hotfix, cần phải đào sâu vào kiến ​​trúc phần mềm cơ bản. Vì thông tin đã công bố chỉ ra rằng sự cố có thể được kích hoạt thông qua giao diện web nên chúng tôi đặc biệt quan tâm đến cách các yêu cầu HTTP đến được xử lý bởi thiết bị.

Cả hai giao diện web (người dùng và quản trị viên) đều dựa trên cùng một mã Java được phục vụ bởi máy chủ Jetty phía sau máy chủ Apache.

image.png

image.png

Hầu hết các tương tác giao diện (như nỗ lực đăng nhập) đều dẫn đến yêu cầu HTTP POST đến điểm cuối /webconsole/Controller . Yêu cầu như vậy chứa ít nhất hai tham số: mode & requestObj . Tham số đầu tiên chỉ định một số được ánh xạ nội bộ đến một hàm cần được gọi. Tham số sau chỉ định các đối số cho lệnh gọi hàm này.

image.png

Servlet tương ứng sẽ kiểm tra xem hàm được yêu cầu có yêu cầu xác thực hay không, thực hiện một số xác thực tham số cơ bản (mã phụ thuộc vào hàm được gọi) và truyền thông điệp đến một thành phần khác - CSC