
Docker化されたラボ環境内でCVE-2023-23752を悪用する、Joomla 4.2.5を対象とした包括的なフルライフサイクル侵入テストプロジェクト
このプロジェクトは、オープンソースCMS(Joomla 4.2.5)に対して実施したフルライフサイクルのペネトレーションテストを示しています。テスト全体は、ラボ環境の構築からエクスプロイテーション、ポストエクスプロイテーション、管理者アカウントの乗っ取りまで、標準的な方法論(OWASP/PTES)に従っています。
この脆弱な環境をローカルインフラストラクチャ上にデプロイおよび再現するには、以下の正確な手順に従ってください。
ターゲットの Ubuntu VM を起動し、SSHで接続します(またはVM内で直接ターミナルを開きます)。
Ubuntuのバージョンに応じて、DockerとComposeユーティリティをインストールします:
sudo apt update && sudo apt install -y docker.io docker-compose-plugin
sudo apt update && sudo apt install -y docker.io docker-compose-v2
docker-compose.ymlという名前の新しいファイルを開きます:
nano docker-compose.yml
docker-compose.ymlファイルの全内容をコピーし、ターミナル内に貼り付けます。Ctrl + O、次にEnter、その後Ctrl + Xを押して、エディタを保存して終了します。sudo docker compose up -d
sudo docker compose ps
8080でターゲットVMのIPアドレスにアクセスします:
http://<YOUR_VM_IP>:8080
dbjoomla_userjoomlapasswordjoomla_db攻撃者として、Kali LinuxからネットワークおよびCMS固有のスキャニングツールを実行しました:
8080のオープンポートとサービスを特定するために実行しました。Joomla 4.2.5)を特定(フィンガープリント)するために使用しました。

バージョンのフィンガープリンティングに基づき、脆弱性調査によりCVE-2023-23752(Joomla Core APIにおける不適切なアクセス制御)が発見されました。
Metasploit Framework(msfconsole)を使用し、専用のエクスプロイトモジュールをターゲットに対して実行しました:
auxiliary/gather/joomla_vulnerable_config_disclosurejoomla_user / joomlapassword)の抽出に成功しました。
実環境の評価では、設定ミスが連鎖的に発生することがよくあります。**認証情報の再利用(Credential Reuse)**をテストするため、漏えいしたデータベースパスワードを使用して管理者アカウントの乗っ取りを試みました:
/administrator)に移動しました。
CVE-2023-23752からシステムを保護するために:
4.2.8以上にアップグレードします。/apiエンドポイントへのアクセスを制限します。