自動更新によって突如マルウェア化する人気Chrome拡張 63
ストーリー by hylom
使うものは最小限に 部門より
使うものは最小限に 部門より
AC0x01曰く、
ユーザー数5万人、平均レビュー評価が星4つの人気Chrome拡張「HTTP Headers」が、最近のアップデートで突然マルウェア化し、ビットコインを盗まれそうになったという興味深い話が出ている(「clock-up-blog」ブログ)。
「HTTP headers」はその名の通りHTTPヘッダーを閲覧する開発者向けのChrome拡張で、ユーザー数や評価も高く、レビューも10月26日の最新アップデートまでは特に何事もないごく普通のアプリだったようである。が、記事によると、29日に取引所からセッションハイジャックに起因するとみられるビットコイン不正送金の連絡があり、それから数日後に不審な通信を行っているChrome拡張があることを発見。調査の結果、画像ファイルに埋め込まれている謎のコードを実行しているという限りなく黒と思われる状況証拠に辿り着いたとのこと。
現状では状況証拠しか残っておらず、この拡張が本当に不正送金に関係していたとは言い切れないが、こうした自動アップデートによる攻撃が実際に行われているのであれば、どのように対策をしていけばよいだろうか?
なお、これ以外にも複数のChrome拡張において同様に「マルウェア化」の疑いがある模様。Webブラウザの拡張についてはユーザーの情報を盗むなどの行為が可能であることから、GoogleはChrome Web Store以外からの拡張インストールをブロックしている(過去記事)。過去にはアドウェアやマルウェアを仕込むために人気の拡張開発者に対し拡張の買い取りをオファーするという話もあった。
不正を検知して止めたのが偉い (スコア:4, 参考になる)
数日前に、Googleからメールが来て、何かと思ったら、赤い背景ででかでかと
「あなたのパスワードを使ってあなたのGoogleグーグルアカウントにログインしようとした人がいます」
だそうな。
あわててメールに書いてあるリンクからパスワードを変えたけど、
いや、パスワードが合っててもログイン阻止してくれるって、最近はすげーと思ったことでありますよ。
#数日後に、「あれがフィッシングメールだったら私は完全に引っかかったわけだな…」と気づいた(確認したら大丈夫だったけど)。
#二段階認証設定しとけって話なのはわかってるけど。
Re:不正を検知して止めたのが偉い (スコア:1)
>>あわててメールに書いてあるリンクからパスワードを変えたけど、
こういう詐欺の方法もあるんだよな。
慌てている人はひっかかる。
自分は俺俺詐欺には引っかからないと思っている人ほど引っかかる。
Re:不正を検知して止めたのが偉い (スコア:1)
そういうリンクを含めて送るのは問題ですね。
トップページに入って、これこれこういうボタンを押していって変えてください
みたいにしてくれないと危ないです。
Re: (スコア:0)
よく来るようになったよね。
OSの再インストールだったら仕方ないけど
新しいブラウザ使っただけでも警告メールが何度も来たことがあった。
最初はIPアドレス確認して、自分だということで、問題ないと設定したのにもかかわらず何度も来たこともあった。
今は改善されてるようですが・・チェックをしないよりは、やりすぎる方がマシかなとww
Re: (スコア:0)
やり過ぎると今度は、セキュリティアラートに慣れっこになって無視するようになるから結局駄目なんだよなぁ・・・
Re: (スコア:0)
あぶねー!
そういう時はメールに書いてあるリンクをクリックしたらあかんやろ。
Re: (スコア:0)
メールアドレスをGoogleに登録してんのか。
Re: (スコア:0)
海外旅行中にアクセスしても出たよね。(最近のは知らんけど。)
海外旅行なんて滅多にしないこともあって、この対応は妥当だと思った。
Live HTTP Headersの調査 (スコア:3, 興味深い)
Chrome ExtensionのLive HTTP Headersの調査(CoolBar.Pro導入 Extensionが何を行うかの調査) · GitHub
https://gist.github.com/mala/e87973df5029d96c9269d9431fcef5cb [github.com]
Chromeならユーザー(プロファイル)分けるのおすすめ (スコア:1)
金銭取引とか重要な操作する用のユーザーには拡張入れないようにする、あるいは最小限に。
ある程度の分類でまとめてもいいし、GoogleとかAmazonとかはそれ使う専用のユーザーを作ってしまってもいい。
使い分け全然面倒じゃないよ。多少緩く運用してもかなりリスク低減できるはず。
拡張って本当に必要で入れてるものってごく少数で、大半は遊ばせてる程度の物でしょ。
用途毎にブラウザかえるのも楽です。 (スコア:0)
私の場合、メインはFirefox、買い物等はIE、ゲームはやむを得ずChoromeです。
『拡張機能xxxxがhttp://srad.jpに接続しようとしています』 (スコア:0)
結局警告するしか無いんじゃないか。
観覧しようとしているWebページからスタートした以外で、拡張機能が通信しようとしたら警告メッセージを出して、許可非許可をさせる。
あとはPC内のファイルへのアクセスは権限設定で。
面倒くさいいと言う話の他に、例えばamazonawsやakamai等のように、VPSやらCDNやらの複数サービスで横断的に使われている様なドメインの場合、Webページからのアクセスに含まれていたりするので、抜け穴を潰すのが大変かもしれない。
Re: (スコア:0)
その方式だと「なんかよくわからんから許可」が続発しそうです。
とりあえず、これまで類似事例は概ねオーナーが交代しているんですよね。
なので、オーナー変更やコードの大幅変更(diffの行数?)に基づいて警告を出すのは意味があるかもしれません。
あるいは、拡張のアップデートについて「使う」「1週間保留」「不許可」が選べるといいのかな。
Re: (スコア:0)
今回問題になっているのはアップデートでのマルウェア化なのだから、途中からの通信先の追加だけ面倒にしてしまえばいい。
細かい機能に分かれているはずのアドオンで、途中から通信先を追加するなんて頻繁にはないだろうから、再インストールして許可し直さなきゃならないくらいでも問題ない。
Re:『拡張機能xxxxがhttp://srad.jpに接続しようとしています』 (スコア:2, すばらしい洞察)
通信先の変更では防げませんよ。設備ごと乗っ取られれば通信先は変わりませんからね。
Re:『拡張機能xxxxがhttp://srad.jpに接続しようとしています』 (スコア:1)
「相手先レスポンスのハッシュ値が変わりました。許可しますか?」
Re: (スコア:0)
ある意味そのソフトへの信頼も相手に売っぱらってるということなので、確認必要なのは分かるんですが。。
「何が」は見ても「誰が」は見ないよなぁ。。
Simejiも同じパターンだったねえ。。
Re: (スコア:0)
この拡張機能の性質上、すべてのサイトへの接続で警告が出るだけで何の役にも立ちそうにないが。
「Dolphin Browserがマルウェアだった [security.srad.jp]がインターネット接続を許可していなければ問題なかった」並みにアホな話だ。
Re: (スコア:0)
そうじゃなくてね。
要は拡張機能によって行われる通信を分離して、その宛先で警告するしか無いのではないかと。
この拡張機能はWebページに記述されている内容を読み込むときにHTTPのヘッダーを表示するためのものなので「観覧しようとしているWebページからスタートした以外」のページにアクセスしたらその時点でアウトだから、ピンポイントで大丈夫。
Adblock系の定義ファイルなら定義ファイルを落としてくるサイトだけしか通信しないはず。面倒なのはサイトにスクリプトを喰わせて改編する系のアドオンで、たぶんシステム的にそれがアドオンによるものなのか、Webページが本来意図した通信なのか区別できない。
そしてVPN・プロキシ系のアドオンは…。
Re: (スコア:0)
特定のソフトの特定の機能に依存したチェック?
>今現在多く普及している「自動アップデートが当然のようにあるソフトウェア」全てにおいていえることなんですが、「インストールした時点では無害」でも「どこかのアップデート時点で悪意のあるコードが注入される可能性」は常にあるんですよね。どうすりゃいいんですかね。これは交通事故のようなものでしょうか。
#別ツリーでも指摘したが「自動アップデート」だけですらない。手動でもありうる。
Re:『拡張機能xxxxがhttp://srad.jpに接続しようとしています』 (スコア:1)
# 例えば、動画のダウンロードアドオンが任意のページにJavascriptを埋め込みできる権限を必要とする?
# 確かにYoutubeにダウンロードボタンを設置したいならコンテンツの書き換え権限を必要とするが、今のパーミッションモデルの粒度は荒すぎて電子決済や他のSNSへのアクセスを制限できない。
# エアコンを掃除するのに、全く関係ない冷蔵庫やクローゼットへのパーミッションを付与するのは不用心だよね。
# オフトピだけど、TwitterのOAuth連携も「ツイートを許可する」だけではなく「#(ゲームのハッシュタグ) に限りツイートを許可する」とか欲しいよね。
Chrome拡張機能の「アクセス許可」をそこまで気にしなくていい理由 | ライフハッカー[日本版] [lifehacker.jp]
Declare Permissions - Google Chrome [chrome.com]
Re: (スコア:0)
特定の機能に依存したチェックじゃないよ。
拡張機能全般に対して。
ブラウザの本来機能部分が行う通信と、拡張機能が行う通信を分離して、拡張機能がブラウザ本来機能の、読み込んだWebページに対して以外の通信をやろうとすると、ドメイン別に許可が必要になるようにすればいい。
あと、Windowsのファイヤーウォールのセキュリティ警告みたいに、バイナリが変わったら原則的に毎回セキュリティ警告を出すようにすれば、引用してある件もなんとかなる。
このとき、あるアップデートを経てから突然そのような警告が現れたら、用心深けりゃ気づけるのではないか。
毎回出さないようにするには認証レベルが高度な証明書で署名してないと駄目、みたいにすればある程度は大丈夫。これもWindowsで実績がある。
久しぶりにこの手の話題を見る (スコア:0)
数年前にどこかで同じような内容の記事を見たことがあります。
正直今更なんだと。
Re:久しぶりにこの手の話題を見る (スコア:5, おもしろおかしい)
オデュッセウス「その通りだ。数年前どころか数千年前からある」 [wikipedia.org]
Re: (スコア:0)
トロイア戦争で使用されたtrojan horseは自力で侵入できなかったので違うのでは?
Re: (スコア:0)
ソフトが自力で進入することがトロイの木馬の定義だとは初耳ですが
どこの定義ですか?
最近の標的型はソーシャルハッキングを含んで潜り込ませるのが普通ですよ
これみたいにね。
Re: (スコア:0)
このマルウェアを現実世界で例えるなら昔から製品を買ってた業者がどっかに買収されてそこになんかまずいものを仕組まれたとかそんなんじゃないかな。
レノボNECとかレノボIBMとかホンハイシャープとか。
Re: (スコア:0)
トロイの木馬に侵入する能力は無いですよ
今はソーシャルハックが主流だけど、これまでもメール添付だったり、
正常なファイルと誤認させてユーザに実行させるって手が使われてます
だから、木馬はマルウェアではあるものの狭義の意味でウィルスとは呼ばれていません
(自力感染能力を持っているものをウィルスと呼ぶ)
Re:久しぶりにこの手の話題を見る (スコア:5, 参考になる)
このあたりですかね。
Google Chromeの「拡張機能」とは何か? [atmarkit.co.jp]
過去の例では、開発者から拡張機能を買い取った別の業者が、マルウエアを混入した更新版を配布したことがある
とか
【注意!】利用中のChrome拡張機能がアドウェアだったのでマウスジェスチャーで代用した件 [empowerments.jp]
過去記事で紹介していた Scroll to Top Button というChrome拡張機能がアドウェアに成り変ってました。
とか。
拡張機能の更新は手動でもできるが「全部更新する」「全部更新しない」の二択の模様。
Google Chromeの拡張機能を手動で更新する手順 [techmemo.biz]
Re: (スコア:0)
Chromeが自動更新始めた頃はもっと警戒する声が多かったけどみんな感覚がすっかり麻痺してしまったようだ。
どこの馬の骨ともしれないばかりかいつ広告会社に拡張機能を売り渡すかすらわからない拡張機能の作者をGoogleと同程度に信用できるわけないのに。
Re: (スコア:0)
ありとあらゆる個人や会社・組織の発表しているありとあらゆるソフトで起きる可能性がある話しだと思うが。(自動更新だけじゃなくて。「バージョンアップしました」という案内あったら普通入れるよね?つーことはブラウザ拡張だけじゃなくてどころかネットアクセス必須アプリですらなくても…)
つーことは最終的に
その個人や団体を「あやしげなソフトを作らない」だけじゃなくて「自分のソフトをあやしけな所に売らない」レベルで信用できるかどうかが全て。
自動更新なんかするからいけない (スコア:0)
t/o
t/o
Re:興味深い (スコア:0)
興味深い、、、、GoogleのChromeを使っている時点で、そういった行為も認めて使っているもんだとおもってたけど。
Re: (スコア:0)
今まではパーソナルデータという個人では価値を評価しにくいものだったしね。
「完全無料」でサービス使ってると勘違いしてる人が大半でしょう
Re: (スコア:0)
Chromeに限った話じゃないんだけど、何でそれが解らないんだろう?
Re: (スコア:0)
自分はSafariなんだけど、
拡張機能の制限が結構厳しくて、例えばEvernoteのウェブクリッピング拡張が使えない、というか機能しない。
拡張機能自身のメインのスクリプトは実行はされるんだけど、拡張機能に含まれてる他のリソース(画像など)がブロックされる。
Content Security Policyのせいらしい。自分自身も呼び出せないとはね。
なので、今回のような別ホストにおいてあるものを呼び出す、なんてのはできないんじゃないかな。
まぁ、悪意のあるコードを拡張機能のスクリプト自身に埋め込んでおけばいいんだけど。
Re: (スコア:0)
馬鹿
FirefoxやOperaは (スコア:0)
(addons.mozilla.orgやaddons.opera.comからインストールした拡張については)こういうの今までないんですかね
# Firefoxは審査がすごく遅いって聞くけどこういうことあるから仕方ないのか
Firefoxにもあったけど (スコア:2, 興味深い)
有名どころでは「IE View」
http://kwski.net/handy/1091/ [kwski.net]
http://d.hatena.ne.jp/k2jp/20130314/1363255956 [hatena.ne.jp]
人気アドオンの権利を開発者から買い取るか何かして、権利が移ったらこっそりマルウェアを注入するという手口
※ただし「IE View」に関しては(建前上は)正規の機能として存在しユーザー側で動作をオフにする事が可能で、ある時期からデフォルトでオフになった模様
Re: (スコア:0)
こんなのあったんだ……怖い
急いで入れてたアドオン確認した
Re:Firefoxにもあったけど (スコア:1)
開発元を信頼できるソフトウェアのみを実行しましょう。知らない人や組織が作ったアプリケーションは実行はもちろんのことダウンロードもしないようにしましょう。
もちろん私は守っていません。
Re:Firefoxにもあったけど (スコア:1)
今回の件は、インストール時には信頼できるソフトウェアであったとしても
開発元/ソフトウェアが買収され自動アップデートでマルウェアが挿入されるという話なので
それでは防げないという話なのです
Re: (スコア:0)
開発元/配布元が安心できるかというチェックは常に行わなければならないという話です。
そんな面倒なことは多分誰もやらないという話でもあります。
ブラウザ拡張だけじゃないでしょ (スコア:0)
スマートフォンのアプリだってなんだってある日突然化けうる。
KitKatを使ってた数年前のある日、それに気づいてからは
アプリごとに細々アクセス権が設定できるiOSに乗り換えた。
しかもPrivateモード固定で動かせるSafari万歳。
Chromeもやってくれよ。やってくれないよな、それがメシの種だから。
iOSはBT/USBまわりが窮屈で大嫌いだけど、最早選択肢がない。
それでもアプリのアップデートは極力しない。デフォルトで更新Off。
これくらいしか対策できないよ。
拡張機能の動的拡張って必要? (スコア:0)
拡張機能の動的拡張を許すと事前のレビューの意味がなくなると思うんだけど、
そもそも拡張機能の動的拡張ってどういう時に必要なの?
# セキュリティソフトのMcAfee SiteAdvisorが外部からスクリプトを読み込んで動的拡張してて、おいおいと思ったのを思い出した。(Firefoxでの話)
# しかも、これのせいで他の拡張機能が正常に動作しなくなってたんだよなぁ。
まあChrome自体、マルウェア (スコア:0, フレームのもと)
みたいなもんだからな
Firefoxでも昔からある (スコア:0)
uBlock Originがraw.githubusercontent.comに裏通信するように。(何も指定しなくても勝手にダウンロードしに行く)
ログを有効にしたDNSフィルタリング(AcrylicDNS)とIP制限(Peerblock)でなんとかなるけど、ここ数年ネットでの情報収集技術発展しすぎ。
Re: (スコア:0)
>ここ数年ネットでの情報収集技術発展しすぎ。
高効率で金になるってことですよ。エロが技術革新を云々と同様。
Re: (スコア:0)
ソース見てみたらブロックリストをダウンロードしてるようにしか見えないけど
ソースコード公開の是非 (スコア:0)
当記事の筆者が該当ソースコードをまるまるGitHubにアップロードしたようだが、これは悪手かはたまた好手か。
https://github.com/kobake/http-headers-archives-for-research [github.com]
真似されるリスクはあるが、ブロックすべきコードパターンを衆目にさらすという意味では有用だと思っている。