Lỗ hổng trong Realtek SDK dẫn đến sự cố trên thiết bị của 65 nhà sản xuất

Bốn lỗ hổng đã được xác định trong các thành phần của Realtek SDK, được nhiều nhà sản xuất thiết bị không dây khác nhau sử dụng trong chương trình cơ sở của họ, có thể cho phép kẻ tấn công không được xác thực thực thi mã từ xa trên thiết bị có đặc quyền nâng cao. Theo ước tính sơ bộ, sự cố này ảnh hưởng đến ít nhất 200 mẫu thiết bị từ 65 nhà cung cấp khác nhau, bao gồm nhiều mẫu bộ định tuyến không dây Asus, A-Link, Beeline, Belkin, Buffalo, D-Link, Edison, Huawei, LG, Logitec, MT- Liên kết, Netgear, Realtek, Smartlink, UPVEL, ZTE và Zyxel.

Vấn đề này bao gồm nhiều loại thiết bị không dây khác nhau dựa trên SoC RTL8xxx, từ bộ định tuyến không dây và bộ khuếch đại Wi-Fi đến camera IP và thiết bị điều khiển ánh sáng thông minh. Các thiết bị dựa trên chip RTL8xxx sử dụng kiến ​​trúc bao gồm việc cài đặt hai SoC - thiết bị đầu tiên cài đặt chương trình cơ sở dựa trên Linux của nhà sản xuất và thiết bị thứ hai chạy môi trường Linux rút gọn riêng biệt với việc triển khai các chức năng của điểm truy cập. Việc lấp đầy môi trường thứ hai dựa trên các thành phần tiêu chuẩn do Realtek cung cấp trong SDK. Các thành phần này cũng xử lý dữ liệu nhận được do gửi yêu cầu bên ngoài.

Các lỗ hổng ảnh hưởng đến các sản phẩm sử dụng Realtek SDK v2.x, Realtek “Jungle” SDK v3.0-3.4 và Realtek “Luna” SDK trước phiên bản 1.3.2. Bản sửa lỗi đã được phát hành trong bản cập nhật Realtek "Luna" SDK 1.3.2a và các bản vá cho SDK "Jungle" Realtek cũng đang được chuẩn bị để xuất bản. Không có kế hoạch phát hành bất kỳ bản sửa lỗi nào cho Realtek SDK 2.x vì hỗ trợ cho nhánh này đã bị ngừng. Đối với tất cả các lỗ hổng, các nguyên mẫu khai thác đang hoạt động được cung cấp cho phép bạn thực thi mã của mình trên thiết bị.

Các lỗ hổng được xác định (hai lỗ hổng đầu tiên được ấn định mức độ nghiêm trọng là 8.1 và phần còn lại - 9.8):

  • CVE-2021-35392 - Tràn bộ đệm trong các quy trình mini_upnpd và wscd triển khai chức năng “Cấu hình đơn giản WiFi” (mini_upnpd xử lý các gói SSDP và wscd, ngoài việc hỗ trợ SSDP, còn xử lý các yêu cầu UPnP dựa trên giao thức HTTP). Kẻ tấn công có thể thực thi mã của mình bằng cách gửi các yêu cầu “SUBSCRIBE” UPnP được tạo thủ công đặc biệt với số cổng quá lớn trong trường “Gọi lại”. SUBSCRIBE /upnp/event/WFAWLANConfig1 HTTP/1.1 Máy chủ: 192.168.100.254:52881 Gọi lại: NT:upnp:sự kiện
  • CVE-2021-35393 là lỗ hổng trong trình xử lý WiFi Simple Config xảy ra khi sử dụng giao thức SSDP (sử dụng UDP và định dạng yêu cầu tương tự như HTTP). Sự cố xảy ra do việc sử dụng bộ đệm cố định 512 byte khi xử lý tham số "ST:upnp" trong tin nhắn M-SEARCH do khách hàng gửi để xác định sự hiện diện của dịch vụ trên mạng.
  • CVE-2021-35394 là lỗ hổng trong quy trình MP Daemon, chịu trách nhiệm thực hiện các hoạt động chẩn đoán (ping, traceroute). Vấn đề cho phép thay thế các lệnh của chính mình do không kiểm tra đầy đủ các đối số khi thực thi các tiện ích bên ngoài.
  • CVE-2021-35395 là một loạt lỗ hổng trong giao diện web dựa trên máy chủ http /bin/webs và /bin/boa. Các lỗ hổng điển hình do thiếu kiểm tra đối số trước khi khởi chạy các tiện ích bên ngoài bằng hàm system() đã được xác định trên cả hai máy chủ. Sự khác biệt chỉ nằm ở việc sử dụng các API khác nhau cho các cuộc tấn công. Cả hai trình xử lý đều không bao gồm khả năng bảo vệ chống lại các cuộc tấn công CSRF và kỹ thuật “khởi động lại DNS”, cho phép gửi yêu cầu từ mạng bên ngoài trong khi chỉ hạn chế quyền truy cập vào giao diện đối với mạng nội bộ. Các quy trình cũng được mặc định là tài khoản người giám sát/người giám sát được xác định trước. Ngoài ra, một số lỗi tràn ngăn xếp đã được xác định trong các trình xử lý, xảy ra khi các đối số quá lớn được gửi đi. POST /goform/formWsc HTTP/1.1 Máy chủ: 192.168.100.254 Độ dài nội dung: 129 Loại nội dung: application/x-www-form-urlencoded submit-url=%2Fwlwps.asp&resetUnCfg=0&peerPin=12345678;ifconfig>/tmp/1 ;&setPIN=Bắt đầu+PIN&configVxd=off&resetRptUnCfg=0&peerRptPin=
  • Ngoài ra, một số lỗ hổng khác đã được xác định trong quy trình UDPServer. Hóa ra, một trong những vấn đề đã được các nhà nghiên cứu khác phát hiện vào năm 2015 nhưng vẫn chưa được khắc phục hoàn toàn. Sự cố xảy ra do thiếu xác thực hợp lệ các đối số được truyền cho hàm system() và có thể bị khai thác bằng cách gửi một chuỗi như 'orf;ls' tới cổng mạng 9034. Ngoài ra, lỗi tràn bộ đệm đã được xác định trong UDPServer do việc sử dụng chức năng sprintf không an toàn, chức năng này cũng có thể được sử dụng để thực hiện các cuộc tấn công.

Nguồn: opennet.ru

Thêm một lời nhận xét