世界を動かす技術を、日本語で。

InstagramのURLブラックホール

概要

  • Jailbroken iPhone 6sのファイルシステムでInstagramの内部データベースを発見
  • 「url_blackhole」テーブルに4629件の危険URLエントリを確認
  • 多くはフィッシングやスパイウェア関連の分類
  • t.coなど主要なURL短縮サービスが多用
  • 一部リンクは偽ウイルスページやApp Store誘導を確認

Instagram内部「url_blackhole」データベース調査

  • Jailbroken iPhone 6sの /var/mobile/Containers/Data/Application/ 配下でInstagram関連フォルダを発見
  • com.instagram.IGDWellBeingDatabase 内にSQLiteデータベースを確認
  • データベース内「 url_blackhole」テーブルに 4629件 のURLエントリ
  • 4種類の違反分類
    • CYBERSECURITY_PHISHING_FOA (外国勢力のフィッシングと推定): 4370件
    • CYBERSECURITY_GREYWARE_OR_SPYWARE: 239件
    • CYBERSECURITY_UNCATEGORIZED: 13件
    • PHISHING: 7件
  • Instagram内でこれらURLにアクセス時、複数の警告画面を表示

危険URLの特徴とドメイン分析

  • 最も多用されていたトップレベルドメインは t.co (TwitterのURL短縮サービス)
  • その他主要な短縮URLサービス
    • tinyurl.com: 179件
    • is.gd: 170件
    • tr.ee: 108件
    • linktr.ee: 101件
    • shorten.is: 71件
    • shorturl.at: 64件
    • shorten.ee: 56件
    • bit.ly: 52件
    • cutt.ly: 48件
    • goo.su: 45件
    • s.mkswft.com.storage.googleapis.com: 41件
    • pagina.pro: 31件
    • bom.so: 28件
    • cdn.videy.co: 26件
  • 多くはURLリダイレクター
  • 特に s.mkswft.com.storage.googleapis.com が異質な存在感

s.mkswft.com.storage.googleapis.comの挙動

  • 多くのリンクは既に無効化されているが、少なくとも1件が稼働中
  • Instagram内でアクセス時、 証明書エラー が発生
  • WebViewブラウザ・外部ブラウザともにエラー表示
  • エラーを無視して進むと、 Googleロゴ付きの偽ウイルスページ へ遷移
  • 「修復」ボタンを押すと、 Apple App Store の実アプリに誘導
  • 次の調査手順として、アプリのダウンロードとリバースエンジニアリング検討
    • 完全初期化済みの jailbroken端末ゲストWi-Fi 環境での実施が推奨

調査の今後とセキュリティ上の示唆

  • Instagramは 危険URLリスト を内部で管理し、ユーザー保護を強化
  • 短縮URLサービス悪用による フィッシングやマルウェア拡散 のリスク
  • 偽ウイルスページや正規ストア誘導による 詐欺手口の巧妙化
  • セキュリティ研究には隔離環境や慎重な手順が不可欠
  • 今後の詳細なアプリ解析や追加調査が期待される

Hackerたちの意見

これがMediumの投稿だなんて皮肉だね。

投稿者さん、ありがとう!短くて面白い投稿を読んで、ほんとにリフレッシュできたよ。次のパートも楽しみにしてる!

そうだよね?すごく短くて…そのまま終わっちゃう。最近、いろんなことについてのエッセイを読むのに疲れちゃってたから、これがすごく良かった!

AppleのApp Storeが「電話用のウイルス対策ソフト」を許可してるなんて、皮肉だよね。

面白いことに、それは彼らのレビューガイドラインで禁止されているアプリの一例として挙げられてるんだよね。

でも、評価は4.4星なんだよね!たぶん、連絡先を吸い取って、IAPのサブスクリプションに登録させようとしてるんだろうな。

こんなのが許されるなんて信じられないけど、実際はそうなんだよね。だって、詐欺ソフトウェアはアプリ内課金でめちゃくちゃ儲かるし、Appleも30%取るからね。だから、当然許可するわけ。今頃、Appleを擁護する人たちが出てくるだろうけど、ビジネスモデルに反するものは数分で削除されるのに、タイトルがApp Storeのルールに違反してるソフトウェアはずっと残ってるんだよね。

キュレーションされたApp Storeだって言ってたけど、2010年の頃はそれが本当だったかもね。

これ、インスタでリンクがどんどん追いにくくなってる話かと思った。ログインの壁がどんどん強くなってる気がするし、今は完全にブロックされちゃった。ごめん、ザッカーバーグ。インスタには登録しないけど、たぶん私の影のプロフィール作っちゃったんだろうね。

FOAは「アプリのファミリー」を意味するんだよ。出典:Metaの四半期決算報告書。

Appleはどうしてこれを許すの? App StoreがAndroidのエコシステムより優れてるって言ってたから、あの時の開発者への30%の税金も正当化されてたのに。

Google Playも30%だったの?

楽しいけど、.htmlを安全にホストする方法ってあるのかな?でもレンダリングはさせたくないんだ。CORS? sec-fetch-dest、sec-fetch-mode、sec-fetch-site?もしstorage.googleapis.comがGoogleによって運営されてなかったら、ドメインはとっくにGoogleの「安全なブラウジング」でブロックされてたよ。

content-typeをtext/plainに設定して提供すれば、ブラウザはレンダリングしようとしないよ。GitHubのランダムなhtmlファイルを試してみて。rawをクリックすると、テキストとしてレンダリングされるから。

もしstorage.googleapis.comがGoogleによって運営されてなかったら、ドメインはとっくにGoogleの「安全なブラウジング」でブロックされてたよ。 それは違うよ。公共サフィックスリストに追加することで、eTLDにする必要があるだけ。PSLにあるドメインのサブドメインだけがGoogleの安全なブラウジングでマークされるんだ。

"storage.googleapis.com"が使われてるのは、アプリが簡単に禁止できない「権威」ドメインだからだと思う。バケットは通常、クライアントサイドのリダイレクトをホストする静的サイトホストとして使えるし、設定次第ではアプリがリアルタイムでキャンペーンを禁止するのがほぼ不可能になるよ。

ちなみに、これにはいい使い道もあるよ!ロシアでブロックされているVPNやニュースサイトが、コンテンツをミラーリングしたり最新バージョンにリダイレクトするために使ってるんだ。

CYBERSECURITY_PHISHING_FOA(おそらく外国のアクター)それは多分「アプリのファミリー」ってことだね。Metaが持ってるアプリのファミリー(例えば、IG、FB、WhatsAppとか)を指してるんだ。

もうこれ、意図的だよね。偽ページにはいつも不気味な感じがあるし。あのGoogleのロゴ、めっちゃ古いから見た瞬間に逃げるって分かるもん。だから、いつも変なタイプミスとか、古いロゴ、iPhoneにウイルス対策ソフトが必要っていうありえない組み合わせがあるのが面白い。これが incompetence だとは思えない。

完全に意図的だよ。詐欺っぽさに気づく人をフィルターして、時間を無駄にしないようにしてるんだ。これは大量スパムのやつ。もし本当にターゲットにしてるなら、めっちゃリアルに見えるはず。

タイポがあった方がターゲット層に対してより良くインデックスされるから、ウェブサイトにタイポを入れなきゃいけないって言ってたスパムメールサービスを見つけたんだけど?変だよね。