Lỗ hổng trong SQLite cho phép tấn công từ xa vào Chrome thông qua WebSQL

Các nhà nghiên cứu bảo mật từ công ty Trung Quốc Tencent trình bày biến thể lỗ hổng mới Magellan (CVE-2019-13734), cho phép bạn thực thi mã khi xử lý các cấu trúc SQL được thiết kế theo một cách nhất định trong SQLite DBMS. Có một lỗ hổng tương tự xuất bản bởi cùng các nhà nghiên cứu một năm trước. Lỗ hổng đáng chú ý ở chỗ nó cho phép kẻ tấn công từ xa vào trình duyệt Chrome và giành quyền kiểm soát hệ thống của người dùng khi mở các trang web do kẻ tấn công kiểm soát.

Cuộc tấn công vào Chrome/Chromium được thực hiện thông qua API WebSQL, trình xử lý dựa trên mã SQLite. Một cuộc tấn công vào các ứng dụng khác chỉ có thể xảy ra nếu chúng cho phép chuyển các cấu trúc SQL từ bên ngoài sang SQLite, ví dụ: chúng sử dụng SQLite làm định dạng để trao đổi dữ liệu. Firefox không dễ bị tổn thương vì Mozilla từ chối từ việc triển khai WebSQL được hưởng lợi API IndexedDB.

Google đã khắc phục sự cố trong bản phát hành Chrome 79. Đã xảy ra sự cố trong cơ sở mã SQLite đã sửa Ngày 17 tháng XNUMX và trong cơ sở mã Chrome - 21 tháng mười một.
Vấn đề hiện diện ở mã số Công cụ tìm kiếm toàn văn bản FTS3 và thông qua thao tác với bảng bóng (một loại bảng ảo đặc biệt có khả năng ghi) có thể dẫn đến hỏng chỉ mục và tràn bộ đệm. Thông tin chi tiết về kỹ thuật vận hành sẽ được công bố sau 90 ngày.

Hiện đã có bản phát hành SQLite mới có bản sửa lỗi không được hình thành (dự kiến ngày 31 tháng 3.26.0). Là một giải pháp bảo mật, bắt đầu với SQLite XNUMX, có thể sử dụng chế độ SQLITE_DBCONFIG_DEFENSIVE để vô hiệu hóa việc ghi vào bảng ẩn và được khuyến nghị đưa vào khi xử lý các truy vấn SQL bên ngoài trong SQLite. Trong bộ công cụ phân phối, lỗ hổng trong thư viện SQLite vẫn chưa được sửa trong Debian, Ubuntu, RHEL, openSUSE / SUSE, Arch Linux, Fedora, FreeBSD. Chrome trong tất cả các bản phân phối đã được cập nhật và không bị ảnh hưởng bởi lỗ hổng bảo mật, nhưng sự cố có thể ảnh hưởng đến nhiều trình duyệt và ứng dụng của bên thứ ba sử dụng công cụ Chrome cũng như các ứng dụng Android dựa trên Webview.

Ngoài ra, 4 vấn đề ít nguy hiểm hơn cũng đã được xác định trong SQLite (CVE-2019-13750, CVE-2019-13751, CVE-2019-13752, CVE-2019-13753), điều này có thể dẫn đến rò rỉ thông tin và lách các hạn chế (có thể được sử dụng làm yếu tố góp phần gây ra cuộc tấn công vào Chrome). Những vấn đề này đã được khắc phục trong mã SQLite vào ngày 13 tháng XNUMX. Tổng hợp lại, các vấn đề cho phép các nhà nghiên cứu chuẩn bị một cách khai thác hoạt động cho phép thực thi mã trong bối cảnh quy trình Chrome chịu trách nhiệm hiển thị.

Nguồn: opennet.ru

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