- Lỗ hổng Authenticated SQL Injection tại plugin Easy Digital Download
Easy Digital Downloads: CVE-2023-23489 - Unauthenticated SQL Injection
Reference: https://wordpress.org/plugins/easy-digital-downloads/
Affected Versions: 3.1.0.2 & 3.1.0.3
CVSSv3 Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSSv3 Score: 9.8
Plugin không escape tham số 's' tại hành động 'edd_download_search' khi đưa vào câu truy vấn SQL.
Lỗ hổng yêu cầu cần được xác thực..
Setup
Wordpress 6.1.1
Easy Digital Downloads 3.1.0.2
Phân tích.
Tại hành động edd_download_search ta có thể thấy biến $new_search không được escape trước khi đưa vào câu truy vấn.
Sau đó sẽ truyền lại giá trị cho biến query arguments.
Tham số 'edd_search' sẽ được thêm vào câu truy vấn LIKE như sau.
Payload
http://localhost/wordpress-6.1.1-vi/wordpress/wp-admin/admin-ajax.php?action=edd_download_search&s=g%27%20AND%20(SELECT+1+FROM+(SELECT(SLEEP(2)))a)--+-
Như vậy có thể SQLi với time out 3s.