conf t

インフラエンジニアのメモ

TrickBotが利用するWeb Injection

※本記事は参考リンク先の記事を自分メモ用に日本語訳したものになります。

TrickBotとは

Dyreと類似性のあるBanking Trojan。
ブラウザをハックし(Man-in-the-Browser)、web injectionすることで、ユーザから金融機関の認証情報を盗む。
攻撃が成功した場合、ネットバンキングのログイン情報が盗まれ、攻撃者に自分の口座から現金を不正送金されるなどの可能性がある。

本記事ではTrickBotが被害者から認証情報を盗むために利用する2種類のWeb Injectionについて解説する。
またターゲット側である金融機関のサーバ側で取りうる対策についても紹介する。

Web Injectionとは

webページに攻撃コードを埋め込む攻撃のこと。
TrickBotではMain-in-the-Browserのポジションを確保し、HTTPリクエスト・レスポンスを改ざんすることで実現している。
実際の攻撃例としては、ログインフォームにスクリプトを埋め込み、ユーザの入力情報を攻撃者のサーバに送信させ盗むなどが考えられる。
TrickBotは以下2種類のweb injectionを利用している。

  • Web Fake
  • Server-Side Injection

Web Fake

感染したpc上のブラウザで、ユーザがターゲットのネットバンキングのページをリクエストする。(図の①)
TrickBotがリクエストをインターセプトし、攻撃者のサーバへリクエストを送る。攻撃者のサーバは偽のログインページを返す。(図の②)
これとは別にTricBot自身が正規のネットバンキングサイトに接続し、SSL接続を確立する。このSSL接続を用いて、ブラウザ上に正規のSSL証明書を表示させる。(図の③)
偽サイトは正規サイトに似せて作られており、またブラウザに表示されるURLと証明書も本物であるため、ユーザが偽サイトに気づくのは難しい。(図の④)
f:id:monaski:20171119011234p:plain

その後、ユーザが認証情報を入力してログインボタンを押すと、画面にPlease Waitと表示し待たせる。
さらに攻撃者にユーザがアクセスしてきたことを通知する。
ユーザを待たせている間に、攻撃者は送られてきた認証情報で正規のサイトへのログインを試みる。
ネットバンキングでは送金など処理の際に、別途認証コードが必要な場合も多い。その場合は、ユーザに見せているページを動的に変化させ、追加の認証情報の入力を要求し、情報を奪う。

サーバ側でWeb Fakeを検知するには

ユーザ自身は正規サーバではなく偽サイトへアクセスするため、そもそもサーバ側での検知は難しい。
しかしTrickBotは被害者に正規SSL通信であることを見せるため、正規サーバへSSL接続する。
このときTrickBotはページの全てではなく一部リソースのみへアクセスするため、これをアノマリ検知できる可能性がある。

Server-Side Injection

感染したpc上のブラウザで、ユーザがターゲットのネットバンキングのページをリクエスト。(図の①)
TrickBotはレスポンスをインターセプトし、攻撃者のサーバに送る。(図の②)
攻撃者のサーバは正規サイトのソースに攻撃コードを挿入し、ブラウザに返す。(図の③)
ユーザが認証情報を入力してログインボタンを押すと、挿入されたコードにより認証情報が攻撃者のサーバに送信される。

サイト全体のソースをやり取りするため通信量が多くなるのがネックだが、
攻撃コードをサーバ側で保持するため、セキュリティリサーチャーの分析を困難にできる。
f:id:monaski:20171119011149p:plain

サーバ側でSever-Side Injectionを検知するには

正規ページにソースの完全性チェックのスクリプトを入れることで、意図しないコードを検知できる。
しかし当然ながら、チェックスクリプト自体が改ざんされ無効化されてしまう可能性もあるため、スクリプトをうまく隠すか、頻繁に実装を変える等の対策も併せて必要。

TrickBotはクッキーを使うこともある。
クッキーはドメインに紐づくため、サーバ側でクライアントにある自ドメインのクッキーのチェックで検知できる可能性がある。

参考:
https://www.uperesia.com/how-trickbot-tricks-its-victims
http://www.symantec.com/content/en/us/enterprise/media/security_response/whitepapers/dyre-emerging-threat.pdf
https://devcentral.f5.com/articles/dyre-malware-analysis