0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【セキュリティ】evilginx2 の仕組みと MFA 回避の現実

Last updated at Posted at 2025-11-20

はじめに

「偽サイトじゃもう騙せない」

そんな時代に現れたのが evilginx2

ユーザーは本物サイトでログインしたつもり。でも裏ではセッションが盗まれている……。

この“逆プロキシ型フィッシング”の仕組みを理解していないと、防御側はかなり危険。
本記事では evilginx2 の正体、攻撃メカニズム、なぜ MFA を突破できるのか、どう防げるか を総まとめする。


1. evilginx2 とは何か?

evilginx2 は リバースプロキシ型のフィッシングフレームワーク
従来の「偽ログインフォームを作る」タイプではなく、

本物のログイン画面を まるごと中継 する

というのが最大の特徴。

よくある誤解:
「偽サイト作るツールでしょ?」 → それは違う。

偽フォームではない

本物の JS / CSS / HTML / API を通す “透明な中継点”

だから見た目も動作も 100% 本物


2. どうやって攻撃が成立する?(仕組み図つき)

攻撃フロー

┌──────────────┐
│ ユーザー           │
└───────┬────────┘
        ↓(HTTPS)
┌──────────────┐
│ evilginx2 (Reverse Proxy) │
│  ・ログイン画面を中継        │
│  ・Cookie を盗む              │
└───────┬────────┘
        ↓
┌──────────────┐
│ 本物のログインサービス       │
└────────────────┘

ユーザーは本物サイトでログインしている気分。
実際ログインも成功する。

でも裏では…

  • リクエスト
  • レスポンス
  • Set-Cookie

すべて evilginx2 を経由するため、
セッション Cookie がそのまま抜かれる


3. なぜ MFA(TOTP/SMS)を突破できるのか?

ポイントは1つだけ。
攻撃者が盗むのはパスワードではなく、

ログイン後の “セッションクッキー”

だから MFA を突破する必要すらない。

MFA があっても攻撃が成功する理由:

  1. 被害者が MFA コードを入力
  2. 本物サイトがログインを許可
  3. Set-Cookie が evilginx2 を経由
  4. 攻撃者がその Cookie を取得
  5. 攻撃者は Cookie をそのまま使ってログイン成功

めちゃくちゃシンプル。
強度の高いパスワードでも MFA でも止められない。


4. evilginx2 は何を盗むのか?

代表的なクッキー

  • sessionid
  • auth_token
  • __Secure-xxx
  • id_token
  • refresh_token(サイトによる)
  • XSRF-TOKEN(攻撃によっては CSRF に利用)

盗んだクッキーをどう使う?

ブラウザの DevTools → cookie を手動で書き換え  
or  
curl -H "Cookie: ..."  
or  
攻撃用クライアントで再利用  

これで本人になりすませる。

MFA の出番なし。


5. 防御側が知るべき重要ポイント

evilginx2 を本気で止めるには
“パスワード” や “MFA” の強化だけでは足りない。

以下が現実的に効く対策。


FIDO2 / Passkey の導入(最強の対策)

Passkey の秘密鍵は
ドメインにバインドされている

つまり:

  • real-login.com → OK
  • fake-login.com → NG
  • evilginx2 の中継ドメイン → 絶対 NG

攻撃者はどう足掻いても Passkey を中継できない。

Passkey を導入した瞬間に evilginx2 は敗北する。


Cookie を “再利用できない” 仕組みにする

推奨:

  • SameSite=Strict
  • Secure + HttpOnly
  • __Host- prefix
  • TLS Token Binding(→ DPoP / MTLS に発展)

要は:

Cookie を盗まれても使えないようにする


デバイス指紋 × リスクベース認証

  • IP
  • User-Agent
  • TLS フィンガープリント
  • デバイスID

これらを使って

前回ログインと違う → セッション拒否

という仕組みを作る。

evilginx2 で盗んだ Cookie は 100% 異常値 になる。


フィッシングドメイン監視

  • crt.sh
  • DNSTwist
  • 新規証明書監視
  • Cloudflare brand protection

攻撃者は似たドメインで攻めてくるので
早期発見が命


HTML/JS に Anti-proxy チェックを組み込む

  • TLS フィンガープリント検出
  • CSP の細かい制御
  • iframe/embed の拒否
  • 謎の参照元を遮断

企業でよく使われるワザ。


まとめ

evilginx2 が怖いのは:

  • 偽サイトではなく本物を中継する

  • ユーザーがログインした後の Cookie を奪う

  • MFA さえ無力化する

という “次世代型フィッシング” だから。

でも知っていれば対策はできる。

セキュリティの世界って、
「知らない人だけが負けるゲーム」なんだよね。

でも逆にいうと、
evilginx2 のような攻撃を 理解しさえすれば

  • 認証設計のレベルは一気に上がるし
  • 組織全体の防御力も爆上がりする
  • Passkey の価値も本当に実感できる

防御者にとっては 学ぶ価値の塊みたいな存在

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?