
警告: これはJetpack < 13.9.1のアクセス制御の欠陥(CVE-2024-9926)に対するエクスプロイトをテストするための脆弱性アプリケーションです。自己責任で実行してください!
これは、Jetpack < 13.9.1 のブロークンアクセス制御(CVE-2024-9926)のエクスプロイトをテストするための脆弱性アプリケーションです。
このアプリケーションには深刻なセキュリティ脆弱性が含まれています。自己責任で実行してください!バックアップ済みで隔離された環境(最近のスナップショットとホストオンリーネットワークを備えたVMなど)を使用することをお勧めします。このアプリケーションをインターネットに公開されているサーバーにアップロードしないでください。侵害されます。
免責事項: このアプリケーションの使用方法について、私は一切の責任を負いません。このアプリケーションの唯一の目的は、Jetpack < 13.9.1 のブロークンアクセス制御(CVE-2024-9926)エクスプロイトのテストシナリオとなることであり、悪意を持って使用されるべきではありません。このアプリケーションのインストールを介してサーバーが侵害された場合、それは私の責任ではなく、それをアップロードしてインストールした人の責任です。
環境をセットアップする手順は次のとおりです。
./up.sh を実行して構成を開始します。コンテナは vuln-wp-jetpack という名前になります。
環境を破棄するには、./down.sh コマンドを使用します。または ./down_and_delete.sh コマンドを使用すると、イメージとデータベースのボリュームも削除されます。
修正を見れば、get_items_permissions_check() と get_item_permissions_check() の両メソッドによって実行される唯一のチェックが、ブログへのユーザーの所属であることは明白です。
両メソッドは、automattic/jetpack-forms/src/contact-form/class-contact-form-endpoint.php ファイルの Contact_Form_Endpoint クラスで宣言されています。クラスの先頭にあるコメントが述べているように、このクラスは...
feedback投稿タイプが\Automattic\Jetpack\Forms\ContactForm\Contact_Formで登録されるときに、rest_controller_classパラメータとして使用されます。
これは、カスタム投稿タイプ feedback が登録されている automattic/jetpack-forms/src/contact-form/class-contact-form-plugin.php ファイルの201行目で確認できます。
利用可能なタイプは、次のようなリクエストで REST API を介して取得できます。
GET /?rest_route=/wp/v2/types
レスポンスには feedback タイプが含まれます。
脆弱性を悪用するには、次のようなリクエストで十分です。
GET /?rest_route=/wp/v2/feedback
リクエストには、次のような アプリケーションパスワード を含む認証ヘッダーが必要です。
Authorization: Basic eW91cl91c2VybmFtZTp5b3VyX2FwcGxpY2F0aW9uX3Bhc3N3b3Jk
Python のエクスプロイトスクリプトは ここ にあります。
このプロジェクトは Unlicense の下でライセンスされています。詳細は LICENSE ファイルを参照してください。