UranicoはLoozfon

先日、よくあるデータ盗用、つまり被害者の電話から電話番号や連絡先といったデータを流出させるAndroidマルウェアのサンプルに遭遇しました。

パッケージ名が「com.link.uranai」であるため、ほとんどのベンダーがこのサンプルをUranico(Android.Uranicoトロイの木馬:Android/Uranico.Aと呼んでいます。しかし、このサンプルをよく見てみると、以前見たことのあるサンプル、Android/Loozfon.A!trにそっくりであり、これの亜種であるということに気づきました。
そこで、私たちはこれをAndroid/Loozfon.B!trと呼ぶことにしました。

この相関関係に気づかせてくれたのは、被害者のデータをアタッカーに送信する際に両者が用いる独特のフォーマットです。
どちらのサンプルも以下のパラメータを用い、HTTP POSTリクエストで被害者のデータを送信します。

  • "telNo" : MSISDN/phone number
  • "individualNo" : IMEI
  • "addressBook" : contact name + "##addressName##" + phone number + "##telNo##" + email id + "##mailAddress##" + "##paramPartDivide##" + 次の連絡先その他...

この連絡先送信フォーマットは2つのサンプルに共通・特有のものです。

さらに、この2つのサンプル上でandrosimを実行すると以下のような結果になります。

androsimの結果
図1:androsimの結果、かなり高い類似度指数が示される

androsimの結果で同一のメソッド
図2:androsimの結果で同一のメソッド

2つの亜種の違いは以下の通りです。

Android/Loozfon.A!tr Android/Loozfon.B!tr
Poses as Pr0n video app “Divination” app
Package name fa.lin.ero com.link.uranai
Activity performaing malicious behaviour StartActivity Answer
Data sent to http://XX.XX.XX.229/appli/
addressBookRegist
http://nXXXXX2.com/appli/
makeData
POST parameter “appliId” : “3″ “simSerialNo” : SIM card serial number

結論として、私たちは以下の理由からUranico をLoozfonの亜種と特定しました。

  • どちらのマルウェアも同じこと、つまり被害者の電話から電話番号と連絡先を盗み出すことを目的としている
  • 図1と図2においてAndrosimの結果が示すように、どちらも類似したクラス構造を持っている
  • データをアタッカーに送信するフォーマットがまったく同じ
  • どちらのアプリケーションも日本のユーザーを標的としている