Lỗ hổng bypass tường lửa thông qua FTP Injection
Hai ngôn ngữ lập trình Java và Python chứa cùng một lỗ hổng giúp tin tặc khai thác gửi email độc hại và vượt qua hệ thống phòng thủ tường lửa. Hai lỗ hổng nằm trong cách xử lý liên kết File Transfer Protocol (FTP) của Java và Python, trong đó tham số username không được kiểm tra dẫn tới lỗ ...
Hai ngôn ngữ lập trình Java và Python chứa cùng một lỗ hổng giúp tin tặc khai thác gửi email độc hại và vượt qua hệ thống phòng thủ tường lửa.
Hai lỗ hổng nằm trong cách xử lý liên kết File Transfer Protocol (FTP) của Java và Python, trong đó tham số username không được kiểm tra dẫn tới lỗ hổng protocol injection.
Lỗ hổng Java/Python FTP Injection gửi SMTP Email
Trong bài viết được đăng tải vao tuần trước, nhà nghiên cứu bảo mật Alexander Klink đã đưa ra thông tin chi tiết về lỗ hổng FTP protocol injection trong thành phần XML eXternal Entity (XXE) của Java, cho phép tin tặc đưa lệnh độc hại vào trong kết nối FTP.
Để minh họa tấn công, Alexander đã gửi một email thông qua SMPT (Simple Mail Transfer Protocol) trong một kết nối FTP, mặc dù kết nối FTP thất bại do máy chủ yêu cầu xác thực, nhưng phần lệnh độc hại trong trường username vẫn được thực thi.
Lỗ hổng Java/Python FTP Injection vượt mặt (bypass) tường lửa
Hai ngày sau đó, một nhà nghiên cứu khác đã tiếp tục tìm ra cách bypass tường lửa thông qua khai thác FTP URL trong cả Java và Python. FTP Injection đánh lừa tường lửa của nạn nhân chấp nhận kết nối TCP từ website tới thiết bị với cổng từ 1024 đến 65535.
Bên cạnh đó, rất nhiều tường lửa còn hỗ trợ một giao thức FTP cũ tồn tại nhiều vấn đề bảo mật là classic mode FTP. Khi một kết nối dưới dạng classic mode FTP được thiết lập, tường lửa tạm thời mở cổng từ 1024 đến 65535 – gây ra những nguy cơ bảo mật cao.
Sử dụng khai thác FTP protocol injection trong Java và Python, tin tặc sẽ thực hiện kết nối classic mode FTP và thực hiện các tấn công khác. Cuộc tấn công diễn ra như sau:
- Xác định địa chỉ IP nội bộ của nạn nhân – việc này yêu cầu tin tặc gửi một URL, xem cách client phản hồi và thử cho đến khi thành công.
- Xác định phương hướng của gói tin và đảm bảo lệnh PORT được “tiêm” vào đúng thời điểm.
- Khai thác lỗ hổng.
Lỗ hổng FTP Injection được báo cáo tới Python vào tháng 1 năm 2016 và Oracle và tháng 11 năm 2016 nhưng tới thời điểm hiện tại vẫn chưa được vá. Các nhà nghiên cứu hiện đã thử nghiệm thành công trên thiết bị tường lửa Palo Alto Networks và Cisco ASA nhưng chưa công bố bản chứng minh vì lí do an ninh.
Để bảo vệ, quản trị viên và người dùng được khuyến cáo gỡ bỏ Java và vô hiệu hóa hỗ trợ “classic mode” FTP trên thiết bị tường lửa.
THN