Built To Last

廃れない計算機科学の知識体系を残す

HackTheBox Responderを理解する

HackTheBox上で公開されているResponderボックスのエクスプロイットが難しかったので、理解する。

 

とりあえずnmapで全ポートスキャン。

HTTPが空いているので、ブラウザからアクセスする。

Server Not Connectedエラーが出るので、Wiresharkでパケット見てみると、http://unika.htbにリダイレクトされるが、そのホストネームを解決できてないっぽい。

よって、/etc/hostsを編集して解決。

アクセスするとこんなページが。

このWebページ上で色々といじってると、デフォルトでは英語のページで、他の言語はフランス語とドイツ語をサポートしており、それらのhtmlはpageパラメータで指定しているっぽい。

 

pageパラメータでローカルのファイル(今の例だとfrench.html)を読み込めるので、ファイルインクルージョン脆弱性があるかもしれない。

 


ファイルインクルージョンについて

ファイルインクルージョンには2種類ある。

①ローカルファイルインクルージョン

サーバー内のファイルを読み込むことで、内部ファイルの閲覧を許してしまう。

②リモートファイルインクルージョン

攻撃者がサーバー外に用意したファイルを読み込むことで、攻撃者のコードを実行したりする。


nmapの出力によりサーバーサイドレンダリングPHPで行われていることがわかるので、phpのincludeを調べてみる。

PHPのincludeはリモートのPHPファイルを読み込めることがわかった。

 

 

 

引用

ファイルインクルードの対策 | セキュリティ対策 | CyberSecurityTIMES

PHP: include - Manual