Hello there, ('ω')ノ
デフォルトの資格情報からリモートコード実行までの方法を。
脆弱性:
記事:
P1のバグを取得するためには、偵察が非常に重要であることを知っていて。
ShodanとCensysはおそらく最高の検索エンジンで。
最近、Tomcatを使用しているアプリケーションに出くわし。
ドメインをwww.example.comとし。
最初に行ったことは、Tomcatのディレクトリをブルートフォースすることでしたが、
残念ながらうまくいかず。
他にもいくつか試しましたが、うまくいかなかったので、
Shodanにアクセスすることに。
ドメイン名をShodanに貼り付け。
ポートを基準に結果をフィルタリングし。
そこで、何か奇妙なことに気づき。
ポート8082で動作しているアプリケーションがいくつかあり、
Tomcatが使用されていて。
IPアドレスはx.x.x.xで。
http://x.x.x.x:8082/managerにアクセスしてみましたが、
ユーザ名とパスワードを入力するよう促され。
そこでusername=tomcat、password=s3cretとすると、
Tomcat Application Manager Consoleにアクセスできて。
技術的には、ここで止めるべきだったかもしれませんが、
悪意のあるwarファイルをアップロードすることでリモートコード実行を
行うことができると思っていて。
悪意のある.JSPファイルが必要で、warファイルを作成するために必要で。
下記よりJSPファイルを取得し、名前をindex.jspとしてデスクトップに保存して。
https://github.com/tennc/webshell/blob/master/fuzzdb-webshell/jsp/cmd.jsp
その後、以下のスクリーンショットのコマンドを使用してwarファイルを作成して。
warファイルが生成されたら、「Select WAR file to upload 」セクションに移動し、
アップロードして。
ページを更新した後、アプリケーションリストに「webshell」という名前の
アプリケーションが追加されたのがわかり。
すぐに新しいタブでそれを開き。
webshellは正常にアップロードされ、いくつかのコマンドを実行することができて。
重要なアドバイス:
常に逆の視点を考えて。
古い脆弱性は決して死なず、それらを見つけるために
十分に創造的である必要があって。
Best regards, (^^ゞ