-
09/04/2020
-
94
-
675 bài viết
Lỗ hổng SQL Injection nghiêm trọng trong PostgreSQL mở đường cho tấn công từ xa
Các nhà nghiên cứu đã phát hiện một lỗ hổng SQL Injection nghiêm trọng là CVE-2025-1094 trong công cụ tương tác psql của PostgreSQL. Lỗ hổng này được phát hiện trong quá trình điều tra một lỗ hổng khác trong các sản phẩm BeyondTrust, cho phép kẻ tấn công thực thi mã tùy ý trên các hệ thống bị ảnh hưởng.
CVE-2025-1094 có điểm CVSS 8,1, bắt nguồn từ việc PostgreSQL xử lý không đúng dữ liệu đầu vào không tin cậy, dù đã được thoát ký tự bằng cơ chế bảo vệ mặc định. Khi kết hợp với cách psql xử lý chuỗi UTF-8 không hợp lệ, kẻ tấn công có thể chèn và thực thi mã SQL độc hại.
Đáng chú ý, ngay cả khi dữ liệu đầu vào đã được xử lý để tránh SQL Injection, vẫn có những tình huống đặc biệt mà lỗ hổng này có thể bị khai thác. Điều này xảy ra khi dữ liệu đầu vào (đã được thoát ký tự an toàn) được chèn vào một câu lệnh SQL và thực thi thông qua psql. Đặc biệt, kẻ tấn công có thể thực thi lệnh hệ thống bằng cách lợi dụng meta-command ! của psql, vốn cho phép chạy các lệnh hệ điều hành.
Trong quá trình điều tra việc khai thác CVE-2024-12356 - một lỗ hổng thực thi mã từ xa (RCE) không cần xác thực trong các sản phẩm của BeyondTrust, các chuyên gia Rapid7 phát hiện rằng khai thác CVE-2025-1094 là bước cần thiết để đạt được RCE. Mặc dù BeyondTrust đã phát hành bản vá cho CVE-2024-12356 vào tháng 12/2024, nhưng lỗ hổng trong PostgreSQL vẫn chưa được khắc phục cho đến khi Rapid7 phát hiện ra.
Tất cả các phiên bản PostgreSQL được hỗ trợ trước các bản cập nhật 17.3, 16.7, 15.11, 14.16, và 13.19 đều bị ảnh hưởng.
Người dùng PostgreSQL được khuyến cáo nâng cấp lên phiên bản mới nhất. Rapid7 cũng đã công bố phân tích kỹ thuật chi tiết về CVE-2025-1094 và mối liên hệ của nó với CVE-2024-12356 trên AttackerKB, cùng với một module khai thác Metasploit để phục vụ mục đích kiểm thử.
CVE-2025-1094 có điểm CVSS 8,1, bắt nguồn từ việc PostgreSQL xử lý không đúng dữ liệu đầu vào không tin cậy, dù đã được thoát ký tự bằng cơ chế bảo vệ mặc định. Khi kết hợp với cách psql xử lý chuỗi UTF-8 không hợp lệ, kẻ tấn công có thể chèn và thực thi mã SQL độc hại.
Đáng chú ý, ngay cả khi dữ liệu đầu vào đã được xử lý để tránh SQL Injection, vẫn có những tình huống đặc biệt mà lỗ hổng này có thể bị khai thác. Điều này xảy ra khi dữ liệu đầu vào (đã được thoát ký tự an toàn) được chèn vào một câu lệnh SQL và thực thi thông qua psql. Đặc biệt, kẻ tấn công có thể thực thi lệnh hệ thống bằng cách lợi dụng meta-command ! của psql, vốn cho phép chạy các lệnh hệ điều hành.
Trong quá trình điều tra việc khai thác CVE-2024-12356 - một lỗ hổng thực thi mã từ xa (RCE) không cần xác thực trong các sản phẩm của BeyondTrust, các chuyên gia Rapid7 phát hiện rằng khai thác CVE-2025-1094 là bước cần thiết để đạt được RCE. Mặc dù BeyondTrust đã phát hành bản vá cho CVE-2024-12356 vào tháng 12/2024, nhưng lỗ hổng trong PostgreSQL vẫn chưa được khắc phục cho đến khi Rapid7 phát hiện ra.
Tất cả các phiên bản PostgreSQL được hỗ trợ trước các bản cập nhật 17.3, 16.7, 15.11, 14.16, và 13.19 đều bị ảnh hưởng.
Người dùng PostgreSQL được khuyến cáo nâng cấp lên phiên bản mới nhất. Rapid7 cũng đã công bố phân tích kỹ thuật chi tiết về CVE-2025-1094 và mối liên hệ của nó với CVE-2024-12356 trên AttackerKB, cùng với một module khai thác Metasploit để phục vụ mục đích kiểm thử.
Theo Security Online
Chỉnh sửa lần cuối: