NAT slipstreaming, một cuộc tấn công bỏ qua cho phép truy cập vào bất kỳ dịch vụ TCP / UDP nào

Samy kamkar (một nhà nghiên cứu bảo mật nổi tiếng với việc tạo ra nhiều thiết bị tấn công tinh vi khác nhau, chẳng hạn như keylogger trên bộ sạc điện thoại USB) đã giới thiệu một kỹ thuật tấn công mới được gọi là "NAT slipstreaming".

Cuộc tấn công cho phép, khi mở một trang trong trình duyệt, thiết lập kết nối từ máy chủ của kẻ tấn công tới bất kỳ cổng UDP hoặc TCP nào trên hệ thống của người dùng nằm phía sau trình dịch địa chỉ. Bộ công cụ tấn công được xuất bản trên GitHub.

Phương pháp dựa vào việc đánh lừa cơ chế theo dõi kết nối ALG (Cổng cấp ứng dụng) trong trình dịch địa chỉ hoặc tường lửa, được sử dụng để tổ chức chuyển tiếp NAT của các giao thức sử dụng nhiều cổng mạng (một cho dữ liệu và một cho điều khiển), chẳng hạn như SIP. H323, IRC DCC và FTP.

Cuộc tấn công có thể áp dụng cho người dùng kết nối mạng sử dụng địa chỉ nội bộ từ phạm vi mạng nội bộ (192.168.xx, 10.xxx) và cho phép mọi dữ liệu được gửi đến bất kỳ cổng nào (không có tiêu đề HTTP).

Để thực hiện một cuộc tấn công, nạn nhân có thể thực thi mã JavaScript do kẻ tấn công chuẩn bị là đủVí dụ: bằng cách mở một trang trên trang web của kẻ tấn công hoặc xem quảng cáo độc hại trên một trang web hợp pháp.

Trong giai đoạn đầu, kẻ tấn công lấy được thông tin về địa chỉ nội bộ của người dùng, có thể được xác định bởi WebRTC hoặc, nếu WebRTC bị vô hiệu hóa, bằng các cuộc tấn công bạo lực với phép đo thời gian phản hồi khi yêu cầu hình ảnh ẩn (đối với các máy chủ hiện có, nỗ lực yêu cầu hình ảnh nhanh hơn so với máy không tồn tại hết thời gian trước khi trả về phản hồi TCP RST).

Trong giai đoạn thứ hai, mã JavaScript thực thi trong trình duyệt của nạn nhân tạo một yêu cầu HTTP POST lớn (không nằm trong một gói tin) đến máy chủ của kẻ tấn công bằng cách sử dụng số cổng mạng không chuẩn để bắt đầu điều chỉnh các tham số phân mảnh TCP và kích thước MTU trên ngăn xếp TCP của nạn nhân.

Đáp lại, máy chủ của kẻ tấn công trả về một gói TCP với tùy chọn MSS (Kích thước phân đoạn tối đa), xác định kích thước tối đa của gói nhận được. Trong trường hợp của UDP, thao tác cũng tương tự, nhưng dựa vào việc gửi một yêu cầu WebRTC TURN lớn để kích hoạt phân mảnh cấp IP.

«NAT Slipstreaming khai thác trình duyệt của người dùng kết hợp với cơ chế theo dõi kết nối Application Level Gateway (ALG) được tích hợp trong NAT, bộ định tuyến và tường lửa bằng cách chuỗi trích xuất IP nội bộ thông qua một cuộc tấn công theo thời gian hoặc WebRTC, phát hiện phân mảnh Kamkar cho biết trong một bài phân tích về IP và MTU từ xa tự động, tạo kích thước gói TCP, lạm dụng xác thực TURN, kiểm soát chính xác các giới hạn gói và nhầm lẫn giao thức do lạm dụng trình duyệt "

Ý tưởng chính là rằng, biết các tham số phân mảnh, có thể gửi một yêu cầu HTTP lớn, hàng đợi sẽ rơi vào gói thứ hai. Đồng thời, hàng đợi đi vào gói thứ hai được chọn để nó không chứa tiêu đề HTTP và được cắt trên dữ liệu hoàn toàn tương ứng với một giao thức khác được hỗ trợ qua NAT.

Trong giai đoạn thứ ba, sử dụng thao tác trên, mã JavaScript tạo và gửi một yêu cầu HTTP được chọn đặc biệt (hoặc TURN cho UDP) đến cổng TCP 5060 của máy chủ của kẻ tấn công, sau khi phân mảnh, sẽ được chia thành hai gói: gói có tiêu đề HTTP và một phần dữ liệu và gói SIP hợp lệ với IP nội bộ của nạn nhân.

Hệ thống theo dõi kết nối trên mạng chồng sẽ coi gói này là phần mở đầu của phiên SIP và nó sẽ cho phép chuyển tiếp gói tin cho bất kỳ cổng nào được kẻ tấn công chọn, giả sử cổng này được sử dụng để truyền dữ liệu.

Cuộc tấn công có thể được thực hiện bất kể trình duyệt được sử dụng. Để giải quyết vấn đề, các nhà phát triển Mozilla đề xuất chặn khả năng gửi các yêu cầu HTTP đến các cổng mạng 5060 và 5061 được liên kết với giao thức SIP.

Các nhà phát triển của công cụ Chromium, Blink và WebKit cũng có ý định thực hiện một biện pháp bảo vệ tương tự.

Fuente: https://samy.pl


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.