CVE-2021-40875: Gurock TestRail バージョン 7.2.0.3014 未満における不適切なアクセス制御により、機密情報が漏洩しました。脅威アクターは Gurock TestRail アプリケーションのクライアント側で /files.md5 ファイルにアクセスでき、アプリケーションファイルの完全なリストと対応するファイルパスが開示されます。対応するファイルパスはテスト可能であり、場合によっては、ハードコードされた認証情報、API キー、またはその他の機密データの開示につながります。
John Jackson Twitter: https://twitter.com/johnjhacking
SickCodes Twitter: https://twitter.com/sickcodes
なぜこのスクリプトを使うのか?標準的な機密ファイルのリストを単に作成するだけではだめなのか? カスタムリストの作成も確かに機能します。しかし、多くの場合、TestRail アプリケーションにはカスタムファイルが存在することが観察されており、これは偵察(recon)フェーズでチェックする価値があります。必要であれば、Python スクリプトを実行して、dirsearch でチェックするカスタムファイルリストを取得できます。これは、ファイルをダウンロードすることに興味がない場合の、より手動的な方法です。それ以外の場合は、bash スクリプトを実行するだけで、すべてを自動で処理してくれます。
Python スクリプト
git clone https://github.com/SakuraSamuraii/derailed.git
cd ./derailed
python3 derailed.py
---> give it the url of the target without the md5 path (https://foo.com)
リストに対して dirsearch またはお好みのファジングツールを実行してください。多くのファイルのサイズがかなり標準的であることに気づくでしょう(0B/15B または 25B/31B/32MB -- これらのファイルはおそらく役に立たないため避けてください)
sudo dirsearch -w derailed.txt -u 'https://foo.com' -x 300,301,302,303,304,305,400,401,402,403,404,405,406,500,501,502,503,504 > paths.txt
Bash スクリプトの実行(注意 - ファイルを出力フォルダにダウンロードします。慎重に進めてください)
bash derailed.sh 'https://target'