CyberArk Softwareは、サイバー攻撃に関するメディア向けの説明会を開催し、同社のレッドチームが対処した実際の攻撃を基に分析した多要素認証を回避する4つの手法を解説した。
同社のレッドチームは、サイバー攻撃で実際に使われる手法を参考に、顧客企業のシステムに擬似的な攻撃を実施して、システムのセキュリティ上の問題や不備などを検証するサービスを担当しているという。解説を行ったRed Team Services バイスプレジデントのShay Nahari氏は、多要素認証がユーザーの認証情報を保護する上で優れた方法だとしつつ、攻撃者が認証情報を窃取すべく多要素認証を回避する方法を編み出していると述べた。
CyberArk Software Red Team Services バイスプレジデントのShay Nahari氏
攻撃者は、多要素認証を回避するためにフィッシング攻撃などユーザーを巧妙にだます手口を使うが、一方で組織が多要素認証を適切に実装できていないなどの要因でも、攻撃者に迂回されてしまうリスクがあるという。
Nahari氏の挙げる最初の回避手法は、システムのアーキテクチャーと設計の不備を悪用するというもの。VPN接続によるリモートアクセスに多要素認証を適用していても、VPN接続の認証を経た後の業務アプリケーションやメール、SaaSなどのアクセスでシングルサインオン(SSO)を適用していれば、多要素認証で保護されるのはVPN接続だけとなり、これが回避されてしまうと、攻撃者がVPN接続を通して各種アプリケーションやサービスでユーザーになりすました不正行為をできてしまえるという。
手法1のイメージ。多要素認証の適用がVPN接続だけだと、VPN接続認証後に業務システムなどでなりすましで侵入されてしまう恐れがあるという
同社のレッドチームがある企業で行った検証では、ユーザーのワークステーションに不正アクセスしてインストールされているソフトウェアトークンへのアクセスを取得し、VPNのログインに成功した後に、別のユーザーのパスワードを使ってユーザーを切り替え、メールなどにアクセスが可能になっていたとしている。
次の手法は、トークンを悪用するもので、同社では産業制御システムのネットワークに侵入する検証を行ったという。ここではネットワークにアクセスする際に、まずユーザーにメールで多要素認証を利用するための照合用のURLを記載したメールが送信される。URLはユーザーごとに一意の文字列が設定されるが、ここに暗号化シードが含まれていた。
手法2のイメージ。メールのURLに暗号化シード(黒での塗りつぶし)が含まれる
手法2のイメージ。攻撃者は暗号化シードを入手してトークンを生成できてしまうとする
ユーザーは、このURLを経由して多要素認証を利用する端末やワンタイムパスワードなどを設定できる。Nahari氏によれば、暗号化シードにはメールのみでアクセスでき、攻撃者がPINコードとタイムスタンプを用いてユーザーの代わりにワンタイムパスワードを生成できることが判明した。暗号化シードは4桁のコードで保護されているだけで、コードは総当たり攻撃によって容易に解析可能という。結果的に、攻撃者が暗号化シードを入手してトークンを生成でき、これを使って産業制御システムのネットワークに侵入できてしまうとしている。
3番目の手法は、ブラウザーに設定されるセッションのCookieを悪用するもの。例えば、ブラウザーでウェブメールを利用する際に、固有のIDやパスワードで認証されると、セッションのCookieに認証が完了した情報が発行され、ブラウザーに暗号化して保存される。次回以降、ユーザーは再ログインすることなく、ウェブメールにアクセスできるようになる。
Nahari氏によると、Windows環境ではセッションのCookieがデータ保護API(DPAPI)に暗号化して格納される。ローカルの管理者権限を持たないユーザーでもAPIコールを通じてデータのBLOBを暗号化したり復号したりできるという。さらに、ドメインに参加している環境下ではバックアップキーが1度だけ生成され、ローテーションは行われないとする。
手法3。データ保護APIでセッションのCookieを管理するイメージ
こうした条件下で攻撃者は、DPAPIからセッションのCookieやパスワードを容易に復号でき、ドメインに参加している環境下ではバックアップキーも窃取して、ドメイン内のユーザーや端末を標的にリモートで攻撃を行えるという。これはWindowsでの手法だが、Nahari氏は他のOSやブラウザーでもユーザーのコンテクストを利用するため、注意が必要になるという。
4番目の手法は、組織が複数のチャネルでリモートアクセスを可能にしている場合、1つのチャネルを多要素認証で保護していても、セカンダリーチャネルで侵入されてしまうものになる。
Nahari氏によれば、Active Directory環境では、初期設定でリモート管理ポートが有効化されている。仮に、リモートデスクトッププロトコル(RDP)での接続に多要素認証を設定していても、Powershellなどのツールを利用したリモートプロシージャーの呼び出し(RPC)やサーバーメッセージブロック(SMB)などのアクセスは保護されない。多要素認証モジュールの多くは非インタラクティブな通信を対象にしていないことから機能せず、攻撃者はユーザー名とパスワードさえあれば、こうしたセカンダリーチャンネル経由で侵入できてしまうという。
Nahari氏は、改めて多要素認証が基本的に極めて有効なセキュリティ対策であり回避が困難であるものの、多層的な対策を講じなければ、効果が低減してしまいかねないと指摘する。「例えば、特権ユーザーのアクセスを考慮した対策手法を講じる、アイデンティティーベースの制御を組み合わせるなどの工夫が必要になる。昨今騒がれるサプライチェーン攻撃などの脅威は、特に多要素認証を回避するような手法が使われる」とアドバイスしている。