Pentesting JDWP - Java Debug Wire Protocol
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
あなたのウェブアプリ、ネットワーク、クラウドに対するハッカーの視点を得る
実際のビジネスに影響を与える重大で悪用可能な脆弱性を見つけて報告します。 20以上のカスタムツールを使用して攻撃面をマッピングし、特権を昇格させるセキュリティ問題を見つけ、自動化されたエクスプロイトを使用して重要な証拠を収集し、あなたの努力を説得力のある報告書に変えます。
JDWPの悪用は、プロトコルの認証と暗号化の欠如に依存しています。一般的にはポート8000で見られますが、他のポートも可能です。最初の接続は、ターゲットポートに「JDWP-Handshake」を送信することで行われます。JDWPサービスがアクティブであれば、同じ文字列で応答し、その存在を確認します。このハンドシェイクは、ネットワーク上のJDWPサービスを特定するためのフィンガープリンティング手法として機能します。
プロセス識別に関しては、Javaプロセス内で「jdwk」という文字列を検索することで、アクティブなJDWPセッションを示すことができます。
使用する主なツールはjdwp-shellifierです。さまざまなパラメータで使用できます:
I found that the use of --break-on 'java.lang.String.indexOf'
makes the exploit more stable. And if you have the chance to upload a backdoor to the host and execute it instead of executing a command, the exploit will be even more stable.
これはhttps://ioactive.com/hacking-java-debug-wire-protocol-or-how/の要約です。 詳細については確認してください。
JDWPの概要:
パケットベースのネットワークバイナリプロトコルで、主に同期的です。
認証と暗号化が欠如しており、敵対的なネットワークにさらされると脆弱になります。
JDWPハンドシェイク:
通信を開始するためにシンプルなハンドシェイクプロセスが使用されます。デバッガ(クライアント)とデバッグ対象(サーバー)間で14文字のASCII文字列「JDWP-Handshake」が交換されます。
JDWP通信:
メッセージは長さ、ID、フラグ、コマンドセットなどのフィールドを持つシンプルな構造です。
コマンドセットの値は0x40から0x80までで、異なるアクションやイベントを表します。
悪用:
JDWPは任意のクラスとバイトコードをロードおよび呼び出すことを許可し、セキュリティリスクを引き起こします。
記事では、Javaランタイムの参照を取得し、ブレークポイントを設定し、メソッドを呼び出すという5つのステップからなる悪用プロセスを詳述しています。
実際の悪用:
ファイアウォール保護の可能性にもかかわらず、JDWPサービスは発見可能であり、ShodanHQやGitHubなどのプラットフォームでの検索によって実世界のシナリオで悪用可能です。
悪用スクリプトはさまざまなJDKバージョンに対してテストされており、プラットフォームに依存せず、信頼性のあるリモートコード実行(RCE)を提供します。
セキュリティの影響:
インターネット上にオープンなJDWPサービスが存在することは、定期的なセキュリティレビュー、プロダクション環境でのデバッグ機能の無効化、および適切なファイアウォール設定の必要性を強調しています。
http://www.secdev.org/projects/scapy(no longer active)
http://www.hsc-news.com/archives/2013/000109.html (no longer active)
https://github.com/search?q=-Xdebug+-Xrunjdwp&type=Code&ref=searchresults
あなたのウェブアプリ、ネットワーク、クラウドに対するハッカーの視点を得る
実際のビジネスに影響を与える重大で悪用可能な脆弱性を見つけて報告します。 20以上のカスタムツールを使用して攻撃面をマッピングし、特権を昇格させるセキュリティ問題を見つけ、自動化された悪用を使用して重要な証拠を収集し、あなたの努力を説得力のある報告に変えます。
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE) GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)