パスワードを忘れた? アカウント作成
12522292 story
iOS

XcodeGhost、Appleのコードレビューでも発見されないマルウェア感染iOSアプリを生成 67

ストーリー by headless
巧妙 部門より
Appleのコードレビューでも発見されない、マルウェアに感染したiOSアプリを生成するXcodeの改造版が見つかったそうだ(Palo Alto Networksの記事[1][2]Neowinの記事Softpediaの記事)。

「XcodeGhost」と名付けられたXcodeの改造版は中国のiOS開発者によって発見され、Palo Alto Networksが詳細を確認した。XcodeGhostは悪意のあるコードを仕込んだMach-OオブジェクトファイルをXcodeに追加し、XcodeのインストーラーにリパッケージしてBaiduのファイル共有サービスにアップロードされていたという。Palo Alto Networksの報告を受けて、BaiduではXcodeGhostを削除している。Xcodeのインストーラーは3GB近くあり、中国ではAppleのサーバーへの接続速度が遅いため、他のソースからのダウンロードがよく行われているそうだ。

悪意のあるコードが仕込まれているのはCoreServices用のオブジェクトファイル。XcodeGhostでiOSアプリをコンパイルすると、開発者に知られることなく悪意のあるCoreServicesファイルが追加される。悪意のあるコードに感染したiOSアプリは実行時にシステムやアプリの情報を収集してC&Cサーバーに送信する。また、ユーザーの認証情報をだまし取るために偽のアラートダイアログを表示するほか、特定のURLを乗っ取ってiOSやiOSアプリの脆弱性を攻撃したり、クリップボードのデータを読み書きしたりすることも可能だという。

感染したiOSアプリはAppleのコードレビューでも発見されず、少なくとも39本がApp Storeで公開されていたという。多くは中国向けのアプリだが、インスタントメッセンジャー「WeChat」のように中国以外でも使われているアプリも含まれる。このほか、「Mercury」「WinZip」「Musical.ly」といったアプリもリストアップされている。なお、WeChatに関しては、既に悪意のあるコードを除去した更新版に差し替えられているとのことだ。

なお、XcodeGhostは正規のXcodeに悪意のあるオブジェクトファイルを追加しただけのものだ。そのため、マルウェアが直接Xcodeのディレクトリーにオブジェクトファイルをドロップする可能性もある。悪意のあるコードはAppleのコードレビューを通るほど深く隠されているため、ユーザーや開発者が感染したアプリを識別することは困難だ。アプリ開発者は常にAppleから直接入手したXcodeを使用するだけでなく、怪しいファイルが追加されていないか定期的に確認する必要があるとのことだ。
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • Thompson hack(もどき)というかなんというか...

    こーいう問題もあるから、中国の回線速度(ひいては金盾でのアクセス制御?)も問題だよなぁ...

    --
    M-FalconSky (暑いか寒い)
  • by Anonymous Coward on 2015年09月21日 18時04分 (#2886726)

    最近の IT って、利便性優先でリスク回避を疎かにしてませんかねぇ
    他にない便利な機能を開発すれば利益になるんだろうけど
    クラッキング対策は経験や洞察や地味だけど確かな技術力が必要なのに
    利益一辺倒でリリースしちゃうからボロボロのアプリが増えてるような気がします
    まぁそれでもAppleの関門があるからある程度は洗練されるんだろうけど
    それでも被害を受けるのは利用者で、だからといってAppleは保証なんかしねぇんだろうし・・

    アプリ作っている連中はそれなりに大変なんだろうけど、ユーザーの利益を損ねると次が無いから
    それなりに頑張って作って下さいな

    • by Anonymous Coward on 2015年09月21日 18時30分 (#2886747)

      こんな意見もある [blogspot.jp]し、利便性優先によるリスクは結構深刻。

      親コメント
    • by Anonymous Coward

      一般人はセキュリティソフト入れてリスクを下げるんだろうけど、iOSのセキュリティソフトは果たしてどのくらい出てるんだろうかと思う。MacとWindowsの場合と同じで、Androidに比べると存在感無い。
      この前ヨドバシでAndroinタブレット買った時は抱き合わせのセキュリティソフト買ったけど、3年で3600円ぐらいと割安に感じた。確か、1個で2台か3台まで行けたし。

      • by Anonymous Coward on 2015年09月21日 18時23分 (#2886737)

        iOSのセキュリティソフトはAppleが開発禁止しているので存在しません。逆らうと開発者アカウントごとBANされます。iOSは安全だからそんなもの必要ないのです(棒

        親コメント
        • いちおう無いわけではない [apple.com]ようです。
          CPU100%持っていかれると嫌なのでわたしは使ったことはないですけど。

          親コメント
          • 常駐アプリはiOSにはないですし、アプリごとに隔離されてるんだからただの飾りですよ。iOS版もありますよ、とベンダが誰かに説明するためだけのものです。
            接続先を監視して遮断とか、ローカルの他アプリを覗いてスキャンとか、そういう動作はiOSでは認められません。やりたければJailbreakが必要になります。

            親コメント
        • by Anonymous Coward on 2015年09月21日 18時36分 (#2886749)

          Androidみたいな「入れたアプリを検査するツール」については通用する理屈だけど、
          「iOS端末でマルウェア入り文書ファイルを受け取ってメールで転送」みたいな、
          感染する側じゃなくて媒介するケースまで考えると無意味な主張なんですよね…

          親コメント
        • by Anonymous Coward

          禁止しているの?

          単にファイルシステムにアクセスできないから、作れない(作っても意味がない、チェック出来るのが自分が作ったファイルのみとか?)のかも?

          Androidでもルート取れないから、実際に触れるファイルに限りがあり、全てをチェックできないですけどね。
          もちろんルートとってしまえば可能だろうけど、それはGoogleが許可してくれないんじゃなかってっけ?

    • by Anonymous Coward

      選択肢が増えて自由度が高まったということさね
      そりゃ面倒にもなるよ。

      面倒なことは他人に任せるのが一番効率いいんだが、
      自己責任教の人はそれもできないから大変だ。

  • by Anonymous Coward on 2015年09月21日 18時14分 (#2886731)

    そもそも大したことなかったんじゃないの?
    GoogleやMSと比べるとAppleは技術的に格下な印象

    • by Anonymous Coward on 2015年09月21日 18時26分 (#2886740)

      ここで言うコードレビューはストア掲載条件の方のやつで、
      「レビューを通過しないと掲載されないからiOSアプリは安全だ」
      みたいな主張(≠事実)の根拠になってた手続きのことです。
      MSのほうは知りませんが、Googleはコレに該当する手続きはありません。

      ただ、前々からコードレビューの実効性は疑問視されていたので、
      レビュー回避自体は今更な話題ですね。
      (テザリング禁止の頃にこっそりテザリング機能の有るアプリが掲載されたり、
      電話帳を無断で盗むアプリや実は実質エロゲーになってるアプリが掲載されたり、
      レビュー回避の意志すらない不安定なだけのアプリが品質チェック通過してたり)

      この件で真新しいのは、機械的な手順でレビューをすり抜けられてしまった事と、
      開発者を標的にした偽開発環境経由のマルウェアであることあたりですかね。

      親コメント
    • by Anonymous Coward on 2015年09月21日 18時55分 (#2886764)

      コードレビューなんてしてたの?
      コードが不味くてリジェクトされたとかなかったのでやってないものかと。
      明確にバグってて落ちるコードでも全然問題なかったりしますしね。
      #提出後に発覚して直してる最中にレビュー通過w

      名前が気に入らないとか広告の出方が気に入らないとかそういうチェックはしっかりしてましたがね

      親コメント
      • by Anonymous Coward

        結局は見た目が全ての企業だからね

    • Appleの審査って、Appleの方針に沿わないアプリを排除するためであって、トロイの木馬でないことをAppleが保証する仕組みではないと思ってたんだけど。違うのか?
      もちろん、セキュリティ上問題のあるアプリはAppleの方針にそぐわないだろうから、全くチェックしてないわけではないだろうけど。どういう方針のもとで、どこまでやってるんですかねぇ。

      --
      1を聞いて0を知れ!
      親コメント
    • by Anonymous Coward

      実験的にゴニョゴニョしたコードを審査に出したことありますけど通りましたし、そんなもんだと思いますよ

    • by Anonymous Coward

      マネタイズに関係する点はやたら細かかったり‥

  • by Anonymous Coward on 2015年09月21日 18時25分 (#2886739)

    非正規な場所からXcodeダウンロードしたら、ビルドしたアプリに自動的にマルウェアが組み込まれて、Appleも審査で発見できてなかった。
    こういこと?
    トロイの木馬はMac名物だね。

    • by Anonymous Coward
      加えて、その不正規Xcodeもオブジェクト置いただけの様なもんだから、
      正規なXcodeも別のマルウェアに改竄されてないか気を付けろ。

      ということみたい。
  • by Anonymous Coward on 2015年09月21日 20時45分 (#2886831)

    日本現在進行形で脅威に晒されてる人沢山いるのに
    新型発売間際だからスポンサー気にして自粛中?

  • by meamcarrier (41359) on 2015年09月22日 1時17分 (#2886944)
    定期的に確認したいので、怪しいファイルのリストを貰えませんかね? 出来れば怪しく無い情報源を示してください。
  • by Anonymous Coward on 2015年09月21日 18時28分 (#2886744)

    なぜApple以外から入手したXcodeを使うの?
    馬鹿なの?

    まあiPhone使っていない俺からしたら対岸の火事だが、Android Studioも同様な現状だったら、中国製アプリはできないってことだな。

    • by Anonymous Coward

      コメントするなら記事を最初から最後まで読んでからにすれば?

  • by Anonymous Coward on 2015年09月21日 18時29分 (#2886745)

    開発者が一番の阿呆ですが、AppleもなぜXCodeに署名して検証しない?
    インストーラーにリパッケージしてばれないのはおかしいでしょう。
    なぜ中国かそれなりに近い国にサーバーを置かない?
    こんな事ができるなら何のためにXCodeに限定する?

    二番目に阿呆なのはAppleですね。

    • by Anonymous Coward

      なんでAppleがXCodeに署名してないと思ったの?

      • by Anonymous Coward

        署名されて検証されているなら、
        「このXCodeには未署名のファイルが含まれています。あなたがインストールしたものですか。」と警告されたり、
        インストールの段階でAppleによって署名していない事にすぐに気づくからです。
        署名していなくとも警告されず、不正に改造されていても気付かない事があり得るでは(ストーリー参照)検証されているとは言えません。

        • Appleが配布するものは署名等適切にされていても、妙なライブラリを組み合せて自称Xcodeのインストーラを構築し怪しげな認証局の妙な署名を付けて配れば十分な人がだまされる気がします。
          署名済みアイコンは出ていても、それをわざわざクリックして署名を確認する人ばかりではないし
          開発ツールやユーティリティなんか入れるような人はGatekeeperを切ってる可能性が高い(特にあの国だし)ので。

          #最近のシステム/インストーラには触れていないので警告表示なんかは状況が違うかもしれません

          親コメント
        • by Anonymous Coward

          なんで中国のユーザーが警告を無視したり警告を回避する設定にしていないと思ったの?

          • by Anonymous Coward on 2015年09月21日 19時11分 (#2886775)

            なぜなら、

            Appleのサーバーへの接続速度が遅いため、他のソースからのダウンロード

            であって、不正なアドインを利用した開発者によってマルウェアが普及したとか、構築済みのバージョンを利用して問題が発生したとかではないからです。
            さらに言えばAppleはiPhoneアプリにXCodeを利用したものしか認めていないわけですから、そもそも警告を回避や無視できる時点でおかしいわけです。

            適切な署名・検証あるいは十分強力なハッシュによる検証がなされているならどのような経路を用いても問題になりません。
            アップデータをbittorrentで配布するゲームやディストリビューションもありますし、Windows Updateでもそのような技術が最近適用されました。
            今回の件では被害を受けるのは開発者は二次的で第一にはユーザーなのですからそれなりに性悪説で設計する必要がある訳です。それはそこまで難しい話ではありません。

            親コメント
            • さらに言えばAppleはiPhoneアプリにXCodeを利用したものしか認めていないわけですから、そもそも警告を回避や無視できる時点でおかしいわけです。

              ここ、XCodeのパッケージの署名とXCode(またはそのクローン)で作成したアプリへの署名の話がごっちゃになってませんか?
              XCode自体はiPhoneアプリじゃないので「警告の回避」はiPhoneにインストールするときの話ではありません。
              XcodeGhostは純正XCodeにモジュールをこっそり追加したもののようなので、作成されるパッケージにつく署名は純正品と同等だと思われます。
              かといってたとえばモジュールを追加すると署名がつかないような仕組みにすると、まっとうなサードパーティーのミドルウェアやライブラリまで使えなくなってしまいます。

              --
              うじゃうじゃ
              親コメント
            • by Anonymous Coward

              > 他のソースからのダウンロード

              したバイナリにこっそり不正なコードが混入されていたと書いているのですが。それをGatekeeperが止められなかったということは、ダウンロードしたユーザーが警告を無視したか無効にしていたということにほかなりません。

              > AppleはiPhoneアプリにXCodeを利用したものしか認めていないわけですから、

              Appleのコードレビューで検出できなかったと書いているのですが。あとまさかとは思いますが、iOSアプリはiOS上でセルフ開発するのだと思っていませんか?

              デタラメな妄想ふくらませる前にせめてタレコミくらい読まれてはいかがですか?

              • by Anonymous Coward

                何を言ってるんでしょうか。
                開発者は正規のものと同等だと思ったからそのXCodeで開発したわけです。
                いいですか。そんなに難しい話はしてません。

                適切に署名が機能している場合。
                XCode本体に手を加えられていたら警告される訳です。そこでXCodeに手を加えられていたと気付く。どんなアホでもその時に利用をやめるでしょう。
                さらに何かのファイルが加えられていた場合。XCode本体なりOSがその旨を警告する。タレコミを読んでください。開発者はアドインを入れる手間を省くために別ソースから拾ったわけではない。よっておかしいと気付く。

                ではなぜ気付かなかったのか

              • by Anonymous Coward

                > XCode自体に最低限の自己検証機能が備えられていれば相当手間をかけなければこういうことはできないわけです。
                > それだけで防げたことだと私は思います。

                ユーザの「とにかく俺は今ダウンロードしてきたこの(自称)XCodeが使いたいんだよ」という
                意思がそんなんで防げるわけないでしょw

                そんなアホなデベロッパーが存在するのが信じられないのかな。でも現実なんだなぁ。

              • by Anonymous Coward

                開発者は正規のものと同等だと思ったからそのXCodeで開発したわけです。

                たぶんその前提認識がズレている。
                開発さえできれば正規版でなくてもいいと思っている(ひょっとしたらXcodeですらなくてもいいと思ってるかも)開発者を想定しているからどんな警告だろうと無視された可能性を言っているんだよ。

              • by Anonymous Coward

                偽Xcodeを作成した人(あるいは組織)にはマルウェアを仕込みたいという「相当手間をかけて」でも
                やりたい強烈な動機があったわけでしょ?
                普通に考えればその手の警告はバイパスする様に手を加えられていると思いますが。

              • by Anonymous Coward

                > XCode本体に手を加えられていたら警告される訳です。そこでXCodeに手を加えられていたと気付く。どんなアホでもその時に利用をやめるでしょう。

                だったらいいのにねぇ…

          • by Anonymous Coward

            ユーザーと言ってもアプリ開発者なんだからそのくらいはちゃんとして欲しいよね

  • 最近のスマートフォンならそれくらいの余裕はある。

    実際、BlackBerry Classic/Passport には BlackBerry Guardian
    (トレンドマイクロベースのセキュリティ機能)がビルトインされている。

    • by Anonymous Coward

      iPhoneにもVirus Shield [gigazine.net]くらい安心感のあるアプリが欲しいですね。

typodupeerror

※ただしPHPを除く -- あるAdmin

読み込み中...