Bản cập nhật OpenWrt 19.07.1 loại bỏ lỗ hổng giả mạo gói

Các bản phát hành khắc phục của bản phân phối OpenWrt đã được xuất bản 18.06.7 и 19.07.1, trong đó nó bị loại bỏ lỗ hổng nguy hiểm (CVE-2020-7982) trong trình quản lý gói opkg, cho phép bạn thực hiện cuộc tấn công MITM và thay thế nội dung của gói được tải xuống từ kho lưu trữ. Do lỗi trong mã xác minh tổng kiểm tra, kẻ tấn công có thể tạo điều kiện theo đó tổng kiểm tra SHA-256 có trong chỉ mục gói được ký điện tử sẽ bị bỏ qua, điều này giúp có thể bỏ qua các cơ chế kiểm tra tính toàn vẹn của tài nguyên ipk đã tải xuống.

Vấn đề đã xuất hiện từ tháng 2017 năm XNUMX, sau bổ sung mã để bỏ qua khoảng trắng ở đầu trước tổng kiểm tra. Do lỗi khi bỏ qua khoảng trắng nên con trỏ tới vị trí trong dòng không được dịch chuyển và vòng giải mã chuỗi thập lục phân SHA-256 ngay lập tức trả về quyền điều khiển và trả về tổng kiểm tra có độ dài bằng XNUMX.

Vì trình quản lý gói opkg trong OpenWrt được khởi chạy với quyền root, nên trong trường hợp bị tấn công MITM, kẻ tấn công có thể lặng lẽ thực hiện các thay đổi đối với gói ipk được tải xuống từ kho lưu trữ trong khi người dùng đang thực thi lệnh “opkg install” và sắp xếp thực thi mã của anh ấy bằng quyền root bằng cách thêm các tập lệnh xử lý của riêng bạn vào gói, được gọi trong khi cài đặt. Để khai thác lỗ hổng, kẻ tấn công cũng phải sắp xếp việc thay thế chỉ mục gói chính xác và có chữ ký (ví dụ: được cung cấp từ downloads.openwrt.org). Kích thước của gói sửa đổi phải khớp với kích thước ban đầu được xác định trong chỉ mục.

Trong trường hợp bạn cần thực hiện mà không cần cập nhật toàn bộ chương trình cơ sở, bạn chỉ có thể cập nhật trình quản lý gói opkg bằng cách chạy các lệnh sau:

cd / tmp
cập nhật opkg
opkg tải về opkg
zcat ./opkg-lists/openwrt_base | grep -A10 "Gói: opkg" | grep SHA256sum
sha256sum ./opkg_2020-01-25-c09fe209-1_*.ipk

Tiếp theo, so sánh tổng kiểm tra được hiển thị và nếu chúng khớp nhau, hãy thực hiện:

opkg install ./opkg_2020-01-25-c09fe209-1_*.ipk

Phiên bản mới còn loại bỏ thêm một cái nữa sự dễ bị tổn thương trong thư viện libubox, điều này có thể dẫn đến tràn bộ đệm khi được xử lý trong một hàm blobmsg_format_json dữ liệu nhị phân hoặc JSON được tuần tự hóa được định dạng đặc biệt. Thư viện được sử dụng trong các thành phần phân phối như netifd, procd, ubus, rpcd và uhttpd, cũng như trong gói tiếng kêu (Đã tham dự sysUpgrade CLI). Lỗi tràn bộ đệm xảy ra khi các thuộc tính số lớn thuộc loại “double” được truyền trong các khối blob. Bạn có thể kiểm tra lỗ hổng bảo mật của hệ thống bằng cách chạy lệnh:

$ubus gọi luci getFeatures\
'{ "banik": 00192200197600198000198100200400.1922 }'

Ngoài việc loại bỏ các lỗ hổng và sửa các lỗi tích lũy, bản phát hành OpenWrt 19.07.1 còn cập nhật phiên bản nhân Linux (từ 4.14.162 lên 4.14.167), giải quyết các vấn đề về hiệu suất khi sử dụng tần số 5GHz và cải thiện hỗ trợ cho Ubiquiti Rocket M. Thiết bị Titanium, Netgear WN2500RP v1,
Zyxel NSA325, Netgear WNR3500 V2, Archer C6 v2, Ubiquiti EdgeRouter-X, Archer C20 v4, Archer C50 v4 Archer MR200, TL-WA801ND v5, HiWiFi HC5962, Xiaomi Mi Router 3 Pro và Netgear R6350.

Nguồn: opennet.ru

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