ホテルの宿泊客を狙った巧妙なフィッシングキャンペーンの正体を暴く
編集・協力:Tricia Howard
エグゼクティブサマリー
Akamai のリサーチャーたちは、ホテル、予約サイト、旅行代理店を狙ったインフォスティーラーキャンペーンの新たなステップを特定しました。この 2 番目のステップでは、サイト自体の顧客を対象としています。
ホテルになりすました攻撃者は、予約サイトを通じて顧客に連絡を取り、「クレジットカードの再確認」を促して顧客情報を盗み出します。
この多段階型の脅威は、高度なフィッシング攻撃の進化を示しています。攻撃者は、無防備なターゲットに対して驚くほど正確に侵入するための、新しく創造的な方法を見出しています。
リストを セキュリティ侵害インジケーター(IoC) (ブロックリストおよび一般的な認知度)として、このブログ投稿の最後に掲載しました。
はじめに
広く認知されてはいるものの、 フィッシングは、広大な範囲のサイバー脅威の中でも、依然として最も成功したありふれた攻撃ベクトルの 1 つです。フィッシングキャンペーンにはさまざまな形態があり、新たな可能性を秘めたメディアの登場に伴って、進化を続けています。銀行を装った電子メールから、配送通知を装ったテキストメッセージ、子猫の写真に埋め込まれた悪性コードまで、フィッシングはコンピューターにアクセスできる人なら誰でも感染する可能性があります。
最近発見された配信方法の 1 つが、 サービス業界を狙う巧妙なインフォスティーラーで、 オンライン予約サービスを通じて行われます。攻撃者は、「ホテルで支払う」オプションを選択して予約を依頼し、インフォスティーラーを実行する「写真」へのリンクが貼られた、切迫感があり誠実に見える一連のメールをホテルに送信します。
この特定のバージョンではホテルが対象でしたが、SecOps チームはこの巧妙なフィッシングキャンペーンの第 2 段階を検知しました。こちらは、これらのサイトの正規の顧客を対象にしました。
これは、 休暇旅行シーズンが近づいている時期にこそ、このフィッシング方法に警戒するのに適しています。このブログでは、当社の観察結果の一部を詳しく紹介し、オンラインを安全に利用するための推奨事項を共有しています。
攻撃チェーン
攻撃チェーンは、インフォスティーラーの実行、被害者との接触、被害者の捕捉の 3 つのステップで構成されています。
ステップ 1:インフォスティーラーの実行
インフォスティーラーが本来のターゲット(ホテル)で実行された後、攻撃者は正当な顧客とのメッセージングにアクセスできるようになります。違法または詐欺的なやりとりを防ぐため、サイト内のさまざまなメッセージングプラットフォームなど、公式かつ既知のコミュニケーション方法のみを使用することが推奨されてきました。残念ながら、攻撃者がこれらのメソッドにアクセスできるようになった今、この素晴らしいアドバイスは無意味なものになってしまいました。
ステップ 2:被害者に接触する
攻撃者が、直接の信頼できるアクセス権を得てしまったため、意図した被害者にメッセージが送信されます(図 1)。このメッセージは典型的なフィッシング詐欺の手口に従って、切迫感があり、即時の対処を要求し、恐怖心を掻き立てる内容です。プロフェッショナルな文章で、ホテルとゲストとの本物のやりとりをモデルにしているため、受信者の信頼がさらに高まります。
このメッセージは、予約サイトのメッセージプラットフォーム自体から送信されることを覚えておくことが重要です。これが身元不明の送信者からのメールであれば、無視される可能性が高いですが、予約サイト内からの直接のメッセージであるため、正当で信頼できると思われてしまいます。攻撃者は、複数のキャンペーンにわたって持続性と拡散性の両方を示しています(図 2)。
ステップ 3:被害者を捕える
このメッセージには、予約がキャンセルされないようにするための追加のカード認証であるという、不正なリンクが含まれています。被害者は予約をキャンセルされたくないと考えているため、メッセージに記載されている条件に従ってリンクをクリックします。このリンクは、複雑な JavaScript Base64 スクリプトでエンコードされた被害者のマシン上の実行ファイルをトリガーします(図 3)。
高度な難読化手法
こうしてダウンロードされたスクリプトは、被害者の情報を検知し、セキュリティアナリストによる分析や理解が困難になるように設計されています。この難読化手法は、この攻撃の背後にいる攻撃者がいかに洗練されているかを物語っています。
どうやらこのスクリプトは、ユーザーのブラウザーの機能や属性をチェックするなど、さまざまな手法を使ってこの情報を収集しているようです。次に、データオブジェクトを作成し、POST リクエストを使用してこのデータをサーバーに送信しようとするようです。リダイレクションパスを決定する JavaScript のロジックの一部を調べてみましょう。
- 最初の部分は、自己実行関数で、2 つのパラメータ(_0x372138 と _0x55e2f4)を取ります。この部分には、try-catch ブロックの中に複雑な数学的計算を含むループがあります。条件が満たされるまで動作を継続します。 !![] (常に真)が満たされ、無期限に実行されることが示唆されます。これにより、最初のパラメータ内で自己実行関数を使用できるようになります。続いて、複数の変数を宣言します。 _0x178a26 と _0x4c868aが宣言され、関数 _0x36fa19が定義されます。
- この関数は、ブラウザー環境に関するさまざまな情報を収集します。これには、 ウィンドウ と ドキュメント オブジェクトなどがあり、この情報は、 _0x4c868aという名前のオブジェクトに格納されます。収集されたデータには、ブラウザーや画面などの情報が含まれます(図 3)。
- 攻撃者は、解析への対抗手法として複数のセキュリティ検証を追加しました。クライアントがこれらのテストに合格したら、ユーザーには Booking.com の支払いページを装ったフィッシングサイトが表示され、クレジットカード情報が要求されます(図 4)。
- 攻撃者はまた、フィッシング詐欺の信頼性を確保するために、スマートチャットのサポートチャネルも実装しました。
危険な兆候
切迫感を演出する言葉:フィッシングメッセージに多いのは、切迫感を醸し出し、受信者を煽って急いで行動するように仕向けるものです。今回の場合でいえば、24 時間以内に対応しなければ予約がキャンセルされるという警告メッセージが表示されます。
疑わしい URL:記載されているリンク(https://booking.guest-approve[.]info/reservation/606667156)は公式の Booking.com ドメインではありません。
検証のヒント
勝手に送られてきたリンクをクリックしない:どんなに正当なメッセージに見えても、勝手に送られてきたメッセージのリンクはクリックしないことが最善です。
会社に直接問い合わせる:このようなメッセージの信憑性を確認するためには、メッセージングプラットフォーム以外の別の公式チャネルを使用して、元のサイトのホテルや旅行代理店から提供された電子メールや電話番号などで、会社に連絡します。
切迫感を与えるまたは脅迫的な言葉に注意する:切迫感を与えたり、すぐに対応しなければ悪影響があると脅したりするメッセージには注意が必要です。
URL をダブルチェックする:URL を常にきちんと確認して、正当な Web サイトであることを確認します。
信頼できるセキュリティソフトウェアとクラウドサービスを使用する:最新のウイルス対策ソフトウェアでデバイスを保護します。高品質な クラウド・セキュリティ・サービス は高度な脅威インテリジェンスを提供します。ぜひ検討してみてください。
結論
私たちのだれもが常に、フィッシング攻撃を警戒しなければなりません。この巧妙な詐欺は有効ですが、もっと単純な詐欺もあります。
このように巧妙なフィッシングキャンペーンは、毎日行われているわけではありません。しかし、サイバー犯罪者は常に新しい手口を開発し、無防備な被害者を食い物にしています。自分を守る最善の方法は、予想外のメッセージを受け取るたびに警戒し、注意を怠らないことです。
セキュリティ侵害インジケーター(IoC)
91.215.40[.]30
91.215.40[.]22
static[.]wakkofkznmartyxa3244[.]site
booking[.]id3410894[.]com
booking[.]id90152861[.]com
booking[.]id48088277[.]date
com-id809712[.]com
booking[.]id301628951[.]date
booking[.]com-id2435142[.]info
booking[.]id61189387[.]date
booking[.]id11853502[.]date
booking[.]transaction-accept[.]info
booking[.]id60157261[.]date
booking[.]request-reservation[.]cloud
booking[.]com[.]id8535029[.]date
booking[.]check-reservation[.]info
booking[.]reservation-approve[.]info
booking[.]com[.]id17825117[.]date
booking-confirmation[.]date
booking[.]transaction-confirmation[.]info
expedia[.]id23725813[.]top
expedia-book[.]cloud
booking[.]id19045617[.]info
booking[.]id90134267[.]com
booking[.]reserved-operation[.]info
booking[.]transaction-confirm[.]com
booking[.]guest-approve[.]info
booking[.]operation-3ds[.]one
7870512[.]ngrok[.]io
booking[.]account-guest[.]com
booking[.]transaction-secure[.]info
booking-verification[.]su
98link[.]cc
booking[.]reservation-3ds[.]info
booking[.]reservation-accept[.]info
airbnb-reservation[.]cloud
booking[.]approve-reservation[.]info
booking[.]check-request[.]info
95link[.]cc
Booking[.]request-reservation[.]info
Sha256:
1076c3e6437cab5975064c1525c516e2b1707c1f0fdc5edbadd6610e6a13d275 - attacker javascript