弁財天

ゴフマン「専門家を信じるのではなく、自分自身で考えて判断せよ」

Dolphinブラウザのスパイ疑惑

Androidで人気のDolphin Browserを今すぐ消せ! スパイウェアであることが判明
とネットはファビョった状態になっている

元記事はこれ
[PRIVACY] WARNING: Dolphin's collection of your browsing history

ngrepコマンドで、tcpプロトコルの80番ポートに正規表現^GET|^POST|^Host:|^[^ ]ookie:を仕掛けて通信を調べるのだとか

[root@phone]~# ngrep -P '!' -lq -R -W single -M '(^GET|^POST|^Host:|^[^ ]ookie:)' "tcp port 80"
interface: eth0 (10.23.1.0/255.255.255.0)
filter: (ip or ip6) and ( tcp port 80 )
match: (^GET|^POST|^Host:|^[^ ]ookie:)


T 10.23.1.220:60126 -> 107.20.41.53:80 [AP] GET /v3/columns?u=http%3A%2F%2F10.23.1.254%2F&t=1319574537635 HTTP/1.1!!Authorization: cd7f573ec9e6e865a28aaab7a1793796!!Accept-Encoding: gzip!!Host: en.mywebzines.com!!Connection: Keep-Alive!!!!

(less spammy proof)
 [G] www.google.com:80/search?q=wut
 [G] en.mywebzines.com:80/v3/columns?u=http%3A%2F%2Fwww.google.com%2Fsearch%3Fq%3Dwut&t=1319574984926
 [G] en.mywebzines.com:80/v3/columns?u=https%3A%2F%2Fwww.google.com%2Fsearch%3Fq%3Dwhat%2Bis%2Bthis%2Bi%2Bdont%2Beven&t=1319575011872
 [G] en.mywebzines.com:80/v3/columns?u=file%3A%2F%2Fsdcard%2Fdata%2Fhome.html&t=1319575109160

対策1) /etc/hostsを、問題のサイトのアドレスをループバックにしてアクセスできないように修正
これってSpybot Search & Destroyと同じやり方

127.0.0.1 en.mywebzines.com mywebzines.com

さらに
対策2) APKToolでスパイ設定を削除できるけど、これだけじゃないかも

#####
--- orig-7.0/smali/mobi/mgeek/TunnyBrowser/WebViewCallbackHandler.smali 2011-10-22 11:41:43.000000000 +0000
+++ mobi.mgeek.TunnyBrowser-7/smali/mobi/mgeek/TunnyBrowser/WebViewCallbackHandler.smali        2011-10-22 11:40:18.000000000 +0000
@@ -2189,7 +2189,7 @@
 
     .line 576
     :cond_2
-    invoke-direct {p0, p1, v0}, Lmobi/mgeek/TunnyBrowser/WebViewCallbackHandler;->a(Lcom/dolphin/browser/core/IWebView;Ljava/lang/String;)V
+#    invoke-direct {p0, p1, v0}, Lmobi/mgeek/TunnyBrowser/WebViewCallbackHandler;->a(Lcom/dolphin/browser/core/IWebView;Ljava/lang/String;)V
 
     goto :goto_0
 .end method
#####

騒ぎとは別の内容なのでビックリ
android-apktoolとは.apkパッケージをリバースエンジニアして、改造するとんでもないツール

どうも、このapktoolを宣伝したかったようだ
さっそくAndroidを食らわば皿までやってみる

  1. AndroidからインストールされているDolphinの.apkを取得する
    [/cygdrive/c/somewhere/dolphin]$ adb pull /data/app/mobi.mgeek.TunnyBrowser-1.apk
    
  2. apktoolを使って展開する
    [/cygdrive/c/somewhere/dolphin]$ apktool.bat d mobi.mgeek.TunnyBrowser-1.apk
    I: Baksmaling...
    I: Loading resource table...
    I: Loaded.
    I: Loading resource table from file: C:\Documents and Settings\Administrator\apktool\framework\1.apk
    I: Loaded.
    I: Decoding file-resources...
    I: Decoding values*/* XMLs...
    I: Done.
    I: Copying assets and libs...
    [/cygdrive/c/somewhere/dolphin]$
    
  3. xdevに投稿されていたパッチを実行する
    #####の間がパッチの内容なので、それをspyware.patchに保存
    spyware.patchをmobi.mgeek.TunnyBrowser-1ディレクトリのひとつ上のディレクトリに配置
    [/cygdrive/c/somewhere/dolphin/mobi.mgeek.TunnyBrowser-1]$ patch -p1 <../spyware.patch
    patching file smali/mobi/mgeek/TunnyBrowser/WebViewCallbackHandler.smali
    [/cygdrive/c/somewhere/dolphin/mobi.mgeek.TunnyBrowser-1]$
    
  4. 2192行がコメントアウトされたことを確認する
     #    invoke-direct {p0, p1, v0}, Lmobi/mgeek/TunnyBrowser/WebViewCallbackHandler;->a(     Lcom/dolphin/browser/core/IWebView;Ljava/lang/String;)V
    
  5. 再びパッケージ化
    [/cygdrive/c/Downloads/Android/dolphin]$ apktool.bat b mobi.mgeek.TunnyBrowser-1 mobi.mgeek.TunnyBrowser-99.apk
    I: Checking whether sources has changed...
    I: Checking whether resources has changed...
    I: Building apk file...
    [/cygdrive/c/Downloads/Android/dolphin]$
    
  6. 作成した.apkにオレオレ署名する
    [/cygdrive/c/somewhere/dolphin]$ jarsigner -verbose -keystore oreore.keystore mobi.mgeek.TunnyBrowser-99.apk oreorekey
    キーストアのパスワードを入力してください: oreore
     更新中: META-INF/OREOREKEY.SF
     更新中: META-INF/OREOERKEY.RSA
      署名中: assets/HelveticaNeueLTStd-BdCn.otf
    
    略
    
      署名中: res/xml/searchable.xml
      署名中: AndroidManifest.xml
      署名中: classes.dex
      署名中: resources.arsc
    [/cygdrive/c/somewhere/dolphin]$
    
  7. adbでインストールする
    [/cygdrive/c/somewhere/dolphin]$	adb	install	mobi.mgeek.TunnyBrowser-99.apk
    pkg:	/data/local/tmp/mobi.mgeek.TunnyBrowser-99.apk
    Success
    1265	KB/s	(2363676	bytes	in	1.823s)
    [/cygdrive/c/somewhere/dolphin]$
    

マーケットから導入したパッケージソフトをngrepコマンドで監査
スパイなら.apk抽出、デコード展開、改造、再パッケージ、オレオレ署名、インストールして再利用

自宅のLinuxサーバのような感覚でカスタマイズ
それが良いことなのか悪いことなのかは置いておいて
これがIT業界の新しい戦場

投稿されたコメント:

コメント
コメントは無効になっています。