サイバーセキュリティ企業のThreatFabricは2月、「Google Authenticator」アプリで生成された2要素認証(2FA)コードを盗み出す機能を備える「Android」マルウェアを初めて発見した。
このマルウェアは以前に発見されていた「Cerberus」の亜種。これまで2FAのワンタイムパスワード(OTP)を窃取する機能は備えていなかった。
Cerberusはバンキング型トロイの木馬とリモートアクセス型トロイの木馬(RAT)のハイブリッドだ。Androidデバイスが感染すると、ハッカーはマルウェアのバンキング型トロイの木馬機能を利用して、モバイルバンキングアプリの認証情報を盗み出す。
Cerberusは、アカウントが2FA(つまりGoogle Authenticatorアプリ)で保護されている場合に、攻撃者がRAT機能を通じてユーザーのデバイスに手動で接続できるよう設計されている。ハッカーはその後、Authenticatorアプリを開いてOTPを生成し、コードのスクリーンショットを取得して、ユーザーのアカウントにアクセスする。
Nightwatch Cybersecurityの研究チームが、この攻撃を可能にしていた根本原因を詳しく調査したところ、そもそもAuthenticatorアプリがコンテンツのスクリーンショットを取得できるようになっていた。
Androidは、他のアプリにコンテンツのスクリーンショットを取得されないようにすることで、アプリがユーザーを保護できるようにしている。こうした保護は、アプリの設定内に「FLAG_SECURE」オプションを追加することで実現される。
Authenticatorアプリは非常に機密性の高いコンテンツを扱っているにもかかわらず、Googleは同アプリにこのフラグを追加していなかった。
Nightwatchによると、この問題は2014年10月にGitHub上で初めて指摘されていた。
同社は2018年9月、Android版「Microsoft Authenticator」にも同様の不具合があることを指摘している。
この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。