Scatter Swineの検出:執拗なフィッシングキャンペーンへの洞察

概要

  • Twilioは最近、Oktaを含む163社のTwilioの顧客に関する情報への不正アクセスを確認しました。アクセスはTwilioの内部システムで行われ、一部のOktaの顧客データに脅威者がアクセスできる状態でした(詳細は以下の通り)。
  • Oktaは、少数の1)携帯電話番号と2)ワンタイムパスワード(以下、OTP)を含む関連するSMSメッセージが、Twilioコンソールを介して脅威者にアクセス可能であったと判断しています。
  • Oktaは、そのコンソールにアクセスされた時点で電話番号がコンソールに表示されていたお客様に対して通知を行いました。
  • 現時点では、お客様に必要な対応はございません。このアクセスに関する詳細、当社の対応、ベストプラクティスは以下のとおりです。

ここ数カ月、多くのテクノロジー企業が、「Scatter Swine」という、脅威者による執拗なフィッシングキャンペーンにさらされています。

OktaのDefensive Cyber Operations(DCO)は、脅威者が展開するフィッシングインフラを観測した場合、それらの企業に積極的に通知しています。DCOでは、数時間のうちに複数のフィッシングサイトで同じ組織を繰り返し狙うScatter Swineを検出することが日常茶飯事となっています。

2022年8月7日(日)の夜、Twilioは、これらのフィッシングキャンペーンの1つまたは複数に起因する攻撃で、多数のTwilio顧客アカウントと内部アプリケーションにアクセスされたことを公表しました。

Oktaは、ワンタイムコードの配信にSMSを使用するなど、顧客が選択できるさまざまな認証手段を提供しています。Twilioは、認証要素としてSMSを選択するお客様に対して、Oktaが利用する2つのサービスのうちの1つを提供しています。

2022年8月8日、TwilioはOktaに最初の通知を行い、Twilioのインシデント中にOktaに関連する不特定のデータがアクセスされたことを知らせました。

Oktaは、Twilioのセキュリティチームと協力してインシデントの範囲と影響を理解する間、SMSベースの通信を代替プロバイダに優先的にルーティングしました。

Twilioのセキュリティチームは当社の調査を支援し、その後、内部システムログを提供してくれました。このログを使用して、Oktaの顧客データに関連する脅威要因の活動の範囲を関連付け、特定することができました。

これらのログを使用して、OktaのDCOの分析により、攻撃者がTwilioコンソールにアクセスできる時間帯に、Okta関連の携帯電話番号とワンタイムパスワードの2つのカテゴリが閲覧可能であることを確認しました。ワンタイムパスワードは5分間有効です。

第一のカテゴリー(下記の「標的活動」を参照)は、脅威者がTwilioコンソールで直接検索した携帯電話番号です。

第二のカテゴリー(下記の「偶発的な露出」を参照)は、脅威者の特定の行動や目的に対して「偶発的」であると考えられる携帯電話番号のことです。

Oktaは、上記の両方のカテゴリーに該当する携帯電話番号をお持ちのお客様に通知しました。

標的活動

脅威者はTwilioコンソールで38のユニークな電話番号を検索し、そのほぼすべてが1つの標的組織にリンクすることができます。

Twilioから提供されたログを確認したところ、脅威者はアクセスの拡大を目指していたことが判明しました。私たちは、脅威者が以前フィッシングキャンペーンで盗んだ認証情報(ユーザー名とパスワード)を使って、SMSベースのMFAチャレンジをトリガーし、Twilioシステムへのアクセスを使って、それらのチャレンジで送られたOne Time Passwordを検索していたと分析しています。

偶発的な露出

2つ目のカテゴリの携帯電話番号の露出は、この活動に対して偶発的なものです。この場合の偶発的とは、脅威者の限定的な活動ウィンドウの間にTwilioポータルに存在した可能性のある電話番号と定義できます。当社の分析によると、脅威者はこのような携帯電話番号をターゲットにしたり、使用したりした形跡はありません。

脅威者はTwilio管理ポータルを使って検索を行いましたが、このポータルには(デフォルトで)OktaのTwilioアカウントを使って送信された直近の50通がリストアップされています。

Oktaのユーザ名はTwilioのログには表示されません。

この脅威者は、この情報へのアクセスを使用する意図を示す行動をとっていません。この観察は、広範な調査(以下に記述)により検証されました。

侵入の分析

疑わしい活動を分析し、脅威者が使用した主要なTTP(戦術、テクニック、手順)を特定した後、Oktaは、脅威者がTwilioのシステムにアクセスしたことが判明している期間に、プラットフォームログを対象に脅威ハンティングを実施しました。後ほど、脅威ハンティングの検索例を示します。

この脅威ハンティングにより、脅威者が主要ターゲットとは無関係の1つのアカウントに対して、このテクニックのテストに成功したイベントが発見されました。この脅威者は、このアクセスを確認した後、追加のアクションを行わず、以前の活動に戻りました。

この孤立したイベント以外では、脅威者がこのテクニックを使用して、主要ターゲット以外のアクセス範囲を拡大することに成功したという証拠はありません。

TTP(戦術、テクニック、手順)

Scatter Swineは、数回にわたりフィッシングキャンペーンでOktaを直接標的としましたが、当社のアプリケーションへのアクセスを保護する強力な認証ポリシーのため、アカウントにアクセスすることができませんでした。

Oktaセキュリティは、Scatter Swineが採用した以下のTTP(戦術、テクニック、手順)を確認しています。

  • この脅威者は、ビットコインフレンドリーなプロバイダであるBitlaunchが提供するインフラを利用し、DigitalOcean、Vultr、Linodeからサーバを提供しています。
  • ドメイン名のレジストラには、NamecheapやPorkbunがあり、どちらも支払いとしてビットコインを受けつけます。
  • 私たちは、この脅威者が、標的となる組織の個人に対して、テキストメッセージでフィッシングの誘い文句を大量に配信していることを確認しています。私たちは、数百のメッセージが従業員や従業員の家族にまで送信された複数の事例を認識しています。
  • 脅威者は、電話番号と特定の組織の従業員を結びつける市販のデータアグリゲーションサービスから携帯電話番号を入手しているようです。
  • 脅威者は、標的の個人に電話をかけ、認証の仕組みを理解するためにサポートになりすまします。脅威者のアクセントは、北米で、自信に満ち、はっきりとした話し方をしているように見えます。
  • 脅威者は、テクノロジー企業、電気通信プロバイダー、暗号通貨に関連する組織や個人をターゲットにしています。
  • この脅威者は、主に自己完結型のHTTPベースのフィッシングインフラをホストしています。彼らのサイトは、TLS証明書を使用していません。
  • SMishing(SMSフィッシング)キャンペーンでユーザーの認証情報を取得することに成功した場合、匿名化プロキシサービスを使用して認証を試みます。このキャンペーンでは、脅威者はMullvad VPNを好んで使用しました。
  • 脅威者が使用するフィッシングキットは、ユーザー名、パスワード、OTPファクターを取得するように設計されています。また、脅威者は、ターゲットを騙してアカウントへのアクセスを許可させるために、複数のプッシュ通知をトリガーしていることが確認されています。
  • 脅威者は、同じWindowsデバイスから複数のユーザーに接続することが確認されています。 

この脅威者は、一般的な形式のドメイン名を登録し、ソーシャルエンジニアリングによって、ターゲットがフィッシングサイトに認証情報を入力するよう仕向けます。

  • {targeted organization}-corp.net
  • {targeted organization}-help.com
  • {targeted organization}-help.net
  • {targeted organization}-helpdesk.com
  • {targeted organization}-login.co
  • {targeted organization}-mfa.com
  • {targeted organization}-okta.co
  • {targeted organization}-okta.com
  • {targeted organization}-okta.net
  • {targeted organization}-okta.org
  • {targeted organization}-okta.us
  • {targeted organization}-onelogin.com
  • {targeted organization}-sso.com
  • {targeted organization}-sso.net
  • {targeted organization}-vpn.com
  • {targeted organization}-vpn.net
  • {targeted organization}-vpn.org
  • okta-{targeted organization}.com

防御を強化する

今回の侵入事件を分析した結果、フィッシング攻撃からユーザーアカウントを保護するために、「深層防護」のアプローチを採用することをお勧めします。

  • WebAuthn、U2Fキー、スマートカードなど、フィッシングに最も強い特性を持つ強力な認証機能を使用する。クレデンシャルベースの攻撃を最小限に抑えるための長期的な戦略として、OktaのパスワードレスソリューションであるFastPassを検討する。
  • 疑わしい電子メール、フィッシングサイト、攻撃者が使用する一般的なソーシャルエンジニアリングのテクニックを特定するためのトレーニングをユーザーに実施する。
    • インターネット上で自分の連絡先を公開することのリスクについて、ユーザを教育する。
    • Oktaのお客様は、エンドユーザ通知不審なアクティビティレポートを設定することで、ユーザが潜在的な問題を簡単に報告できるようにすることができる。
  • 認証ポリシーを使用して、お客様が設定可能なさまざまな前提条件に基づいて、ユーザーのアプリケーションへのアクセスを制限することができる。
  • 挙動検知を使用して、ユーザーのサインイン行動が以前の行動パターンから逸脱した場合に、(ステップアップ認証による)対応や(System Logによる)警告を行うことができる。この脅威者は、ほとんどの場合、そのユーザーと過去に関連性のない新しいデバイスと新しいIPから認証を試みている。
  • ネットワークゾーンを使用して、使用頻度の低いネットワークや匿名化プロキシからのリクエストを拒否するか、ステップアップ認証を実行する。
  • アプリケーションへのアクセスを、(Okta FastPassで)登録されたデバイスや、エンドポイント管理ツールで管理されたデバイスのみに制限する。
  • アプリケーション固有の認証ポリシーを使用して、最も機密性の高いアプリケーションやデータへのアクセスを制限する。

Scatter Swine TTPsのOkta System Logの検索

以下のOkta System Logクエリは、このキャンペーンの分析を通じて発見された既知のTTPに従ってフィルタリングされた、指定されたユーザーの新しいデバイスとネットワークロケーションからのSMSイベント(認証チャレンジ、パスワードリセット、ファクター登録イベント)を検索するものです。

eventType sw "system.sms.send" and client.device eq "Computer" and client.userAgent.os sw "Windows" and securityContext.isProxy eq "true" and ((debugContext.debugData.behaviors co "New Device=POSITIVE" and debugContext.debugData.behaviors co "New IP=POSITIVE") OR (debugContext.debugData.logOnlySecurityData co "New Device=POSITIVE" and debugContext.debugData.logOnlySecurityData co "New IP=POSITIVE"))

これらのメッセージのうち、どのメッセージがTwilioを経由したかを確認したい場合は、クエリに以下を追加してください。

and debugContext.debugData.smsProvider eq "TWILIO"

Okta Add-On for Splunk をご利用のお客様は、以下のクエリで同様の検索を行うことができます。

index=main sourcetype="OktaIM2:log" eventType="system.sms.send*" AND client.device="Computer" AND "client.userAgent.os"="Windows*" AND "securityContext.isProxy" = true AND ((debugContext.debugData.behaviors="*New Device=POSITIVE*" AND debugContext.debugData.behaviors = "*New IP=POSITIVE*") OR (debugContext.debugData.logOnlySecurityData = "*New Device=POSITIVE*" AND debugContext.debugData.logOnlySecurityData = "*New IP=POSITIVE*"))

脅威の追跡

上記のTTPを使用して、アカウント乗っ取りの可能性を調査する方法のクエリの例を以下に示します。

これは出発点であり、御社の環境に応じて調整する必要があります。securityContext.isProxy eq "true "のフィルタリングは、レビューするイベントの範囲を縮小することができます。

同様に、脅威者はビットコインを支払いに利用する VPS プロバイダを利用していることが知られていることを考慮してください。Virtual Private Servers はプロキシとして分類されません。

以下の例では、次のように仮定しています。

  • 脅威者は FIDO2/WebAuthn 要素を使用していない。
  • 脅威者は Windows オペレーティングシステムを搭載したコンピュータを使用していた。
  • 脅威者は、ターゲットユーザーの新しいデバイスと新しいIPを使用してリクエストを行った。
  • 脅威者はしばしばプロキシまたは他の匿名化サービスを使用する。

debugContext.debugData.factor ne "FIDO_WEBAUTHN" and eventType sw "user.authentication.auth_via" and client.device eq "Computer" and client.userAgent.os sw "Windows" and ((debugContext.debugData.behaviors co "New Device=POSITIVE" and debugContext.debugData.behaviors co "New IP=POSITIVE") OR (debugContext.deBugData.logOnlySecurityData co "New Device=POSITIVE" and debugContext.deBugData.logOnlySecurityData co "New IP=POSITIVE"))

Okta System Logで不審なイベントを検索するための詳しいアドバイスについては、こちらのサポート記事を参照してください。