-
09/04/2020
-
95
-
769 bài viết
Lỗ hổng SQL Injection nghiêm trọng được phát hiện trong thư viện PHP ADOdb
Lỗ hổng nghiêm trọng CVE-2025-46337 đã được phát hiện trong thư viện ADOdb dành cho PHP. Lỗ hổng này ảnh hưởng đến các phiên bản ADOdb trước 5.22.9 và được đánh giá với điểm CVSS tối đa là 10.
Nguyên nhân dẫn tới lỗ hổng là việc xử lý không đúng cách dữ liệu đầu vào của người dùng khi được truyền vào tham số $fieldname của hàm pg_insert_id(), dẫn đến khả năng chèn mã SQL độc hại (SQL Injection).
Lỗ hổng SQL injection này đã được gán điểm CVSS tối đa là 10, tương ứng với mức độ nghiêm trọng cao nhất. Vị trí ảnh hưởng là hàm pg_insert_id() trong trình điều khiển PostgreSQL của ADOdb. Ảnh hưởng đến nhiều driver PostgreSQL bao gồm: postgres64, postgres7, postgres8, và postgres9.
Tác động tiềm tàng:
Các nhà phát triển được khuyến cáo cập nhật ngay lập tức để loại bỏ rủi ro:
- Lỗ hổng đã được vá trong phiên bản ADOdb 5.22.9, cụ thể trong commit có mã định danh 11107d6.
- Đối với các hệ thống chưa thể nâng cấp ngay, cần kiểm soát dữ liệu truyền vào tham số $fieldname của hàm pg_insert_id() hoặc xử lý bằng hàm pg_escape_identifier() trước khi sử dụng.
Nguyên nhân dẫn tới lỗ hổng là việc xử lý không đúng cách dữ liệu đầu vào của người dùng khi được truyền vào tham số $fieldname của hàm pg_insert_id(), dẫn đến khả năng chèn mã SQL độc hại (SQL Injection).
Lỗ hổng SQL injection này đã được gán điểm CVSS tối đa là 10, tương ứng với mức độ nghiêm trọng cao nhất. Vị trí ảnh hưởng là hàm pg_insert_id() trong trình điều khiển PostgreSQL của ADOdb. Ảnh hưởng đến nhiều driver PostgreSQL bao gồm: postgres64, postgres7, postgres8, và postgres9.
Tác động tiềm tàng:
- Thực thi các câu lệnh SQL tùy ý
- Truy cập, sửa đổi hoặc xóa dữ liệu trái phép
- Khả năng chiếm quyền kiểm soát toàn bộ cơ sở dữ liệu, tùy thuộc vào quyền hạn của ứng dụng
Các nhà phát triển được khuyến cáo cập nhật ngay lập tức để loại bỏ rủi ro:
- Lỗ hổng đã được vá trong phiên bản ADOdb 5.22.9, cụ thể trong commit có mã định danh 11107d6.
- Đối với các hệ thống chưa thể nâng cấp ngay, cần kiểm soát dữ liệu truyền vào tham số $fieldname của hàm pg_insert_id() hoặc xử lý bằng hàm pg_escape_identifier() trước khi sử dụng.
Theo Security Online
Chỉnh sửa lần cuối: