ファイア・アイは3月24日、クライアントへのFREAK攻撃に対するiOS/Androidアプリのセキュリティ脅威について検証し、その結果を発表した。

FREAK攻撃では、脆弱なクライアント・サーバー間のHTTPS接続を傍受され、攻撃者が脆弱な暗号化技術の使用を強制することで、これを突破して機密データの窃取・操作が可能になるという。

FREAK攻撃が成功するには、サーバーがRSA_EXPORT暗号スイート(輸出用RSA暗号)を受け入れるとともに、クライアントが輸出用ではない暗号スイートで一時RSAキーを許可する必要がある。これにより攻撃者は接続の暗号強度を弱め、データを窃取しやすい状態にできる。

3月4日時点で、AndroidとiOSのいずれの最新版プラットフォームについても、FREAKへの脆弱性が認められる。また、iOSとAndroidのいずれもアプリも、OpenSSLライブラリそのものの脆弱版を含む可能性があることから、FREAKはプラットフォームの脆弱性であり、アプリの脆弱性でもあるといえる。そのため開発メーカーによってAndroidやiOSのパッチが公開された後でも、RSA_EXPORT暗号スイートを受け入れたサーバーに接続すれば、こうしたアプリは引き続きFREAKに脆弱な状態になる。

FireEyeでは、Google Playでのダウンロード数が100万回を超える人気Androidアプリ1万985種類について解析した結果、脆弱なHTTPSサーバーへ接続する脆弱なOpenSSLライブラリの使用により実に1228種類(全体の11.2%)のアプリがFREAK攻撃に対して脆弱であることがわかったという。

これら1228種類のアプリのダウンロード回数は、合計すると63億回以上にのぼる。1228種類のAndroidアプリのうち、Androidのバンドル版OpenSSLライブラリを使用しているものは664種類、自社コンパイルのOpenSSLライブラリを採用しているものは564種類。こうしたOpenSSLバージョンはすべて、FREAKに対して脆弱となる。

次の表は、セキュリティやプライバシーの観点から機密性の高い分野におけるAndroidとiOSの脆弱なアプリの数を示したもので、スポーツやゲームといった、機密性が比較的低い分野については、表には含まれていない。赤い部分で示される通り、FREAKの脆弱性はアプリ開発者によって修正が進められている。

FREAKに対して脆弱なアプリの数

攻撃のシナリオの一例として、攻撃者は人気のショッピングアプリにFREAK攻撃を用いることで、ユーザーのログイン情報やクレジットカード情報を盗むことが可能で、また、医療アプリや生産性アプリ、金融アプリなど、機密性の高いアプリが狙われることもある。

暗号解読されたログイン情報(ユーザーIDとパスワード)

暗号解読されたクレジットカード情報