
CVE-2024-23897 は、人気のある継続的インテグレーションツールである Jenkins で発見された重大な脆弱性です。この脆弱性により、ノードへのアクセスおよび接続機能に対する適切な制限が欠如しているため、Jenkins サーバー上でリモートコード実行 (RCE) が可能になります。
CVE-ID: CVE-2024-23897Type: リモートコード実行 (RCE)Impact: 認証されていない攻撃者が特別に細工されたリクエストを送信することで、Jenkins サーバー上で任意のコマンドを実行でき、システムを侵害される可能性があります。Affected: この CVE の修正前の Jenkins バージョン。Jenkins とそのノード間の通信を可能にする jenkins-cli.jar ファイルを使用して、この脆弱性を悪用できます。Jenkins サーバー上で任意のコマンドをアップロードして実行できます。Jenkins を更新することをお勧めします。この Python スクリプトは、古い Jenkins サーバーにおける CVE-2024-23897 の脆弱性を悪用します。このスクリプトは Jenkins サーバーと対話し、jenkins-cli.jar ファイルを使用して任意のコマンドを実行します。
Python 3.xrequests および subprocess ライブラリ。Jenkins 脆弱性 サーバーへのネットワーク接続。jenkins-cli.jar ファイルをダウンロード します。Jenkins ノードに接続 し、リモートサーバー上で悪意のあるコマンドを実行します。特定のアクションを実行 します。依存関係のインストール: Python 3 と requests ライブラリがインストールされていることを確認してください。pip を使用してインストールできます:pip3 install requests
スクリプトの使用方法: エクスプロイトスクリプトファイルをダウンロードし、ターミナルから実行します:
python3 cve-2024-23897.py
スクリプトは以下のパラメータの入力を求めます:
Jenkins サーバーの IP アドレス: Jenkins が実行されている IP。Jenkins サーバーのポート: Jenkins がリッスンしているポート(デフォルトは 8080)。読み取るファイルのパス: 脆弱性のあるサーバー上でアクセスしたいファイルのパス(例: /etc/passwd)。スクリプトは Jenkins サーバーから jenkins-cli.jar ファイルをダウンロードし、パラメータとして指定したファイルで定義されたコマンドを実行します。
制御された環境で脆弱性をテストするために、Docker ベースの脆弱性ラボを用意しました。Kali Linux マシンで ZIP ファイルを解凍し、.sh ファイルを実行して、Docker 環境をデプロイするだけでテストを実行できます。
LAB .tar をダウンロード: まず、脆弱性ラボを含むファイルを解凍します:
デプロイメントスクリプトを実行: フォルダ内に、auto_mount.sh を含む 2 つのファイルが必要です。このスクリプトは、脆弱性のある Docker 環境と、パラメータとして渡す必要がある TAR ラボを自動的にデプロイするように設計されています。次のように実行します:
bash auto_mount.sh cve-2024-23897.tar
スクリプトは、圧縮された Docker .tar ファイルをパラメータとして受け取り、脆弱性のあるコンテナを起動して脆弱性の悪用をテストします。
Jenkins サーバーに接続: Docker 環境が実行されると、Kali Linux マシンから Jenkins サーバーに接続できるようになります。Jenkins インターフェースは、コンテナで設定された IP アドレスとポートで利用可能になります。
エクスプロイトスクリプトを実行: 脆弱性のある Jenkins サーバーが起動したので、Kali マシンでエクスプロイトスクリプトを実行し、Jenkins 上でリモートコード実行を試すことができます。
CVE-2024-23897 の脆弱性を悪用するための Python スクリプト。Docker 環境を自動的にデプロイするスクリプト。Jenkins サーバーを起動するための圧縮 Docker ファイル。開発者: d1se0
連絡先: [email protected]