
CVE-2022-46169の教育用デモンストレーション:認証バイパスとコマンドインジェクションによるCacti ≤1.2.22における未認証リモートコード実行。ラボのセットアップ、エクスプロイトの再現、および影響分析を含む。
以下は、整形された説明文書です:
このプロジェクトは、CVE‑2022‑46169 をデモンストレーションするサイバーセキュリティ演習です。この脆弱性は、オープンソースのネットワーク監視プラットフォーム Cacti(バージョン ≤ 1.2.22)における深刻な脆弱性です。認証されていない攻撃者が、ログインなしでサーバー上で任意のOSコマンドを実行できるようにします。
このプロジェクトの目的は、脆弱性を理解し、管理されたラボ環境で再現し、その影響を実証することです。
CVE‑2022‑46169 は、Cacti における2つの欠陥の組み合わせです。
remote_agent.php ファイルは、通常 Cacti サーバー自身からのみアクセス可能であるべきです。しかし、認証チェックは盲目的に X-Forwarded-For HTTPヘッダーを信頼しており、このヘッダーは攻撃者自身が設定できます。これにより、誰でもパスワードなしでサーバー自身になりすますことができます。
URL の poller_id パラメータは、検証なしで PHP の を介してシェルコマンドに直接埋め込まれます。攻撃者はこれにより、Webサーバー上で任意のコマンドを実行させることができます。
proc_open()組み合わせた結果: 完全に認証されていない攻撃者がサーバー上で任意のコマンドを実行できるようになります。これは Remote Code Execution (RCE) と呼ばれます。
| 特性 | 詳細 |
|---|---|
| CVSSスコア | 9.8 – 緊急 |
| 認証の必要性 | ❌ 不要 |
| ユーザーの操作 | ❌ 不要 |
| 影響 | サーバーの完全な制御 |
| 影響を受けるバージョン | Cacti ≤ 1.2.22 |
| パッチ適用済み | Cacti 1.2.23 |
攻撃者は、脆弱なCactiインストールのIPアドレスを知っているだけでよい。アカウントやソーシャルエンジニアリングは不要です。
攻撃者は、以下の内容を含む1つのHTTPリクエストを remote_agent.php に送信します。
X-Forwarded-For ヘッダ → 認証バイパス; を介してシェルコマンドが埋め込まれた poller_id → コマンドインジェクションサーバーはこのコマンドを www-data ユーザー(Apache Webサーバーユーザー)として実行します。実際には、攻撃者はこれにより例えば リバースシェル を開き、サーバーへの完全なアクセスを取得できます。
docs/ — レポート、スクリーンショット、演習用メモ。isos/ — 脆弱なCactiインストールを含むVMイメージまたはコンテナアセット。このプロジェクトは サイバーセキュリティ演習 の一部であり、以下の点に重点を置いています。
⚠️ 免責事項: このプロジェクトは、管理された隔離されたラボ環境における教育目的のみを対象としています。明示的な許可なくシステム上でエクスプロイトを使用しないでください。