JWRは、これまで報告例のなかったPhaaS(Phishing-as-a-Service)フレームワークで、従来型の認証情報窃取をオペレーター主導のリアルタイムな銀行・決済詐欺に変える機能を備えています。
被害者がフォームを送信するのを待つのではなく、JWRはAES-CTRで暗号化されたWebSocketチャネルを通じてキー入力を攻撃者にストリーミング配信します。これにより、オペレーターはカード番号やパスワード、ワンタイムコードが入力されている最中にリアルタイムで対応できます。
その収集範囲は決済カードにとどまりません。このキットは、アカウントの認証情報、PIN、SMSのワンタイムパスワード、2FAコード、身分証明書、パスポートや運転免許証の画像、住所、デバイスフィンガープリント、位置情報関連データまで窃取可能です。
技術的な特徴は、その持続性にあります。JWRのホストブリッジは被害者ごとに一意のセッションIDを初期化し、static/js/ws-worker.jsから専用のWeb Workerを生成します。
このWorkerは、被害者がフィッシングページ間を移動している間も、コマンド&コントロール(C2)インフラとのWebSocket接続を維持し続けます。
これにより、攻撃者は複数ステップにわたる決済手続きや銀行の本人確認フローの全体を通じて可視性と制御を保持でき、リダイレクトの途中でセッションを失うことがありません。
Talosの観測によると、このフレームワークはwebSocket/QT/{sessionId}/khkjsahfjkwhakjlsdwdddddd88という形式のバイナリWebSocketパスを使用しています。
データは送信前に、キットのJwrCryptoモジュールによって新規生成された暗号鍵でラップされる場合があります。
AES-CTRの使用によってこのキャンペーンが無害になったり、匿名性が完全に確保されたりするわけではありませんが、読み取り可能なフォーム値や予測可能なHTTP POSTボディに依存する単純なネットワーク検査を困難にしています。
被害者側で動作するコンポーネントは、44枚のフィッシングページから構成されるVue 2.x製アプリケーションです。40種類以上のC2コマンドを詐欺ワークフローの各段階に対応付ける命令ディスパッチ機構を備えています。
オペレーターは被害者を、カード情報入力、アカウントパスワード、銀行ログイン、アプリ承認、QRコード、メールOTP、SMS OTP、PIN、あるいはカスタムの本人確認ページへとリアルタイムで誘導できます。
この機能により、詐欺の手口そのものが大きく変わります。オペレーターが被害者の入力したカードを気に入らない場合、JWRはtip_failやtip_change_cardといったコマンドを通じて偽の決済失敗メッセージを表示させ、対象者に別のカードの入力を促すことができます。
Andrea Fortunaの研究者らによると、JWRはShopify、PayPal、Apple、Klarna、各種銀行など決済関連ブランドのチェックアウト・ログインフローになりすますとのことです。
入力されたカードが価値のあるものだと判断すれば、攻撃者は即座に被害者を銀行のOTP、アプリ承認、2FAプロンプトへと誘導できます。
被害者側にはよくある取引失敗や本人確認の流れに見えますが、オペレーター側にはリアルタイムの判断ポイントが提示される仕組みです。
JWR Phishing-as-a-Service
JWRは、持続的なWebSocket接続が利用できない環境向けのフォールバック機構も備えています。
このキットは、被害者の到着を通知するためのテレメトリ用エンドポイントapi/open/addClick、攻撃者が制御する設定用のapi/open/getSyncSettings、HTTPロングポーリング用のapi/open/pollInstruction、最終的なセッション情報の抜き取り用のapi/open/the_final_interfaceといったRESTエンドポイントを登録しています。
この設計により、ネットワーク制御によって優先接続方式であるWebSocketが遮断された場合でも、オペレーターは被害者を遠隔操作するための堅牢なチャネルを確保できます。
Cisco Talosは、クライアント側コードと機能に類似点があることを根拠に、JWRが「The Outsider」PhaaSプラットフォームアクセスの亜種であると中程度の確度で評価しています。
同分析によると、JWRはLucid、Darcula、Lighthouseとコードレベルの実装を共有していないものの、オペレーターによるライブ制御、複数ブランドを模したテンプレート、OTP傍受といった、同じエコシステム全体に共通するより広範なパターンを踏襲しているとしています。
これまでに観測された配布活動では、東南アジアや中東地域を中心に、未払いの通行料金、道路課金の罰金、荷物の配送料、宅配業者からの通知といったテーマのスミッシング(SMSフィッシング)の誘導文言が使われていました。
検知精度の高いポイントとしては、JWRのパターンに一致するWebSocketパスをホストする新規登録ドメインや低評価ドメイン、SMS経由のアクセスの後に続く不審な長時間持続するブラウザWebSocket接続、キット特有のRESTエンドポイントへのリクエストなどが挙げられます。
これらの誘導文言は対象者を偽サイトへと誘導し、そこでJWRの組み込みJavaScriptエンジンが読み込まれ、被害者が機密情報を入力する前にセッションのフィンガープリンティングが開始されます。
セキュリティチームは、ClamAVのシグネチャJs.Phishing.JwrFramework-10060456-0やCisco SnortのSID 66924から66928についても監視対象に加えるべきです。また、複数枚のカード入力や繰り返しのOTP入力を求める決済確認ページについては、リアルタイム詐欺の可能性が高いものとして扱う必要があります。
セキュリティコンサルティングサービス
[ライブウェビナー] ElasticとUnderDefenseが共催するウェビナーで、少人数のセキュリティチームがAIの可視性とエージェント型対応を単一の運用モデルに統合する方法をご紹介します。 -> 今すぐ登録
翻訳元: https://gbhackers.com/jwr-phishing-as-a-service/