一、情况简介
 
从去年开始PC端的敲诈者类病毒在不断的爆发,今年年初的时候手机上也开始出现了敲诈者之类的病毒,对这类病毒很无语也是趋势,因为很多时候病毒的产生是和金钱利益相关的。前天去吾爱破解论坛病毒样本区看了看,有用户反映中了Android敲诈者病毒,就花时间分析了一下。该病毒欺骗用户是QQ空间刷赞的apk程序,诱导用户安装;一旦手机用户安装并且用户的手机已经被Root,那么该用户的手机就会中招,手机被锁定。该病毒与以往的敲诈者病毒相比,采用了比较巧妙的绕过杀软的小把戏。
 
二、样本基本信息
 
文件名称:名片赞系统-已破解.apk
文件大小:1317110 字节
文件类型:application/jar
样本包名:com.q448870015.root
MD5: A79FAE7E0DAB0E7047A5FCBE7AC3F0AA
SHA1: AE5531089D79AAEBD4B01834C95781BF59A56A7A
 
 
三、样本行为分析
 
1.经过分析和确认发现该病毒样本程序经过了爱加密加固进行加密,要分析样本必须先脱壳,使用DexExtractor工具将样本的爱加密壳脱掉了。
 
 
2.样本的真实包名为package="com.q448870015.root",样本的主Activity为"com.q448870015.root.ui.InstallActivity"。
 
 
3.发送标准广播"com.secneo.plugin.action.APP_STARTED"。
 
4.在用户手机上执行"su"命令,用以判断用户的手机是否被root过或者是手机里面的busybox支持“su”命令。
 
5.打开资源文件夹assets下的"a"文件,将其复制拷贝,在当前程序的data目录的files子目录"/data/data/com.q448870015.root/files"下创建文件"/data/data/com.q448870015.root/files/a"。
 
 
 
6.打开资源文件夹assets下的"b"文件,将其复制拷贝,在当前程序的data目录的files子目录"/data/data/com.q448870015.root/files"下创建文件"/data/data/com.q448870015.root/files/b"。
 
 
7.打开资源文件夹assets下的"o"文件,将其复制拷贝,在当前程序的data目录的files子目录"/data/data/com.q448870015.root/files"下创建文件"/data/data/com.q448870015.root/files/o"。
 
 
8.使用提示语言欺骗用户触发恶意的病毒行为,锁定用户的手机(对应下面的行为1)。
 
 
9.行为1:无论用户的手机root与否,直接创建线程在"su"环境下,执行下面的命令(如下图)并且只有在用户的手机已root的情况下,下面这些命令才会执行成功。
 
一旦命令执行成功,重启手机后用户的手机就会被锁定。
 
 
 
 
 
 
 
10.行为2:无论用户的手机root与否,,直接创建线程在"su"环境下,执行下面的命令(如下图)并且只有在用户的手机已root的情况下,下面这些命令才会执行成功。
 
一旦这些命令执行成功即可解除手机的锁定。
 
 
 
11.这类敲诈者病毒样本其实之前就出现过了,但是这个病毒样本比较巧妙,采取了一些措施来避免杀软的查杀。外壳病毒apk程序com.q448870015.root(名片赞系统-已破解)
 
使用爱加密加固加密了并且也不好判断为病毒apk程序;真实的敲诈病毒apk程序(名片赞系统)其实就是/data/data/com.q448870015.root/files/b文件,被隐藏起来了。
 
 
12.步骤8中,只要用户的手机一重启,开机后用户的手机就会被锁定;因为真实敲诈的病毒apk程序就是上面提到MtkEditer.apk程序、apk程序显示名称为名片赞系统、图标为QQ图标,注册了开机启动广播"android.intent.action.BOOT_COMPLETED";一旦用户的手机开机就启动病毒服务锁定用户的手机。
 
 
 
13.敲诈病毒程序MtkEditer.apk的包名为package="com.lzm20151007"。
 
 
 
 
14.锁定用户手机的病毒服务的行为分析--创建病毒服务时,获取当前系统的时间,格式化时间为"yyyy年MM月dd日-HH:mm:ss"格式,
然后将格式化的当前系统时间发送到病毒作者的手机13457484650上。
 
 
15.锁定用户手机的病毒服务的行为分析--病毒服务启动时,通过addView方法显示一个全屏置顶的悬浮窗口,根据设置WindowManager.LayoutParams的flags属性,
这个悬浮窗无法取消掉,导致用户的手机无法正常使用。
 
 
16.等待用户输入正确的解除码才能解锁手机,但是经过分析发现解锁手机并不难。
 
 
                                                   (序列号- 4488)* 4 = 解除码
 
例如:
 
序列号为1285348,则  解除码 = (1285348 - 4488)*4 = 5123440
 
 
被锁定的手机成功解锁。
 
 
 
 
17.杀掉这个病毒的方法,对于已经Root的手机中了该病毒,直接卸载可能卸载不掉病毒apk程序,因为病毒程序已经将病毒apk放到/system/app路径下了,一般卸载apk的方法不好使。
 
手机解锁以后,每次的生成的解锁码都不同,如果不删除病毒apk程序,每次手机被锁定以后,都需要再次计算手机解锁码。
 
 
 
病毒apk的清除方法1:
 
先解锁手机,执行adb shell 进入手机系统,然后获取最高权限su,再依次执行下面的这些命令,即可删除病毒apk。
"mount -oremount,rw -t yaffs2 /dev/block/mtdblock3 /system"
"rm/system/app/MtkEditer.apk"
"rm/system/lib/libAlterData.so"
"rm/system/lib/libAlterData.so"
"rm -r/data/data/com.zxjw.mtkediter"
"mount -oremount,ro -t yaffs2 /dev/block/mtdblock3 /system"
 
 
病毒apk的清除方法2:
 
先解锁手机,然后使用手机助手类软件 (卸载系统内置软件功能)将已经root的手机中的病毒apk程序MtkEditer.apk的包名为package="com.lzm20151007"的程序卸载掉。
 
 
千万别忘了,包名为com.q448870015.root的apk病毒程序也要卸载掉。
 
===================================================================================================================
 
 
该工具的作者已经编译好了Android模拟器的镜像文件system.img,镜像文件版本是Android 4.4 (api 19)放在了百度云盘里,可以自行下载。
作者已经放出了源码,有兴趣的爱好者可以根据自己的需求自行修改代码,然后编译定制自己的工具,编译得到的是libdvm.so库文件。
 
 
脱壳工具的使用方法:
 
1.将编译好的libdvm.so库文件替换掉手机系统[backcolor=rgba(0, 0, 0, 0.0392157)]/system/lib系统路径下的libdvm.so库文件。
 
2.将手机或者Android模拟器的里的相关文件替换为作者已经编译好的system.img文件。
 
===================================================================================================================
 
 
 
DexHunter工具作者提供的貌似是Android 4.x源码编译后的Android模拟器的相关文件,如果要手机使用,需要打包成Rom,然后刷到手机里。

Android最新锁屏病毒分析及解锁的更多相关文章

  1. Android最新敲诈者病毒分析及解锁(11月版)

    一.样本信息 文件名称:久秒名片赞,(无需积分s)(2)(1)(1).apk 文件大小:1497829字节 文件类型:application/jar 病毒类型:Android.CtLocker 样本包 ...

  2. Android最新敲诈者病毒分析及解锁

    一.情况简介 从去年开始PC端的敲诈者类病毒在不断的爆发,今年年初的时候手机上也开始出现了敲诈者之类的病毒,对这类病毒很无语也是趋势,因为很多时候病毒的产生是和金钱利益相关的.前天去吾爱破解论坛病毒样 ...

  3. Android逆向之旅---Android中锁屏密码算法解析以及破解方案

    一.前言 最近玩王者荣耀,下载了一个辅助样本,结果被锁机了,当然破解它很简单,这个后面会详细分析这个样本,但是因为这个样本引发出的欲望就是解析Android中锁屏密码算法,然后用一种高效的方式制作锁机 ...

  4. Android忘记锁屏密码如何进入手机?

    Android忘记锁屏密码如何进入手机?     1.关闭手机 2.进入recovery模式(即恢复模式,记住不是挖煤模式.进入恢复模式不同手机有不同方法,三星的话安主页键,关机键和音量+(或-键), ...

  5. Android一键锁屏源码

    APK下载 源程序下载 锁屏流程如下(参考于Android一键锁屏开发全过程[源码][附图]) 源码参考于一键锁屏 源码 一共有2个Java文件: package com.example.onekey ...

  6. 【填坑往事】Android手机锁屏人脸解锁优化过程实录

    背景 写这篇文章,主要是为了以后面试方便.因为我简历上写了,上一份工作的最大亮点是将人脸解锁的速度由1200ms优化到了600ms,所以这些内容已经回答无数遍了.但每次总觉得回答的不完整,或者说总感觉 ...

  7. 【腾讯Bugly干货分享】浅谈Android自定义锁屏页的发车姿势

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57875330c9da73584b025873 一.为什么需要自定义锁屏页 锁屏 ...

  8. 浅谈 Android 自定义锁屏页的发车姿势

    作者:blowUp,原文链接:http://mp.weixin.qq.com/s?__biz=MzA3NTYzODYzMg==&mid=2653577446&idx=2&sn= ...

  9. android开发 锁屏 真正的锁屏,是go锁屏那种。

    想做个锁屏界面很久了,最近一周,历经千辛万苦,越过种种挫折,终于完美实现了这一要求,在此将锁屏思路分享出来. 注意:这不是什么一键锁屏,是类似“go锁屏”那样的锁屏界面. 准备:本程序共需要 两个ac ...

随机推荐

  1. j2se jndi

    http://blog.csdn.net/lldwolf/article/details/2299622 正如你可以看到,从JNDI中检索对象是相当方便,简单.通过使用JNDI来存储配置信息,无状态对 ...

  2. 食物卡喉别拍背部!救了100多万人性命的“海姆立克急救法"

    先讲三个事例: 一.近日,浙江金华一个17月大的小贝边玩边吃花生,被噎住.10多分钟后,奶奶发现小贝大口喘气,以为他玩累了就抱他回家,等父母赶到送医已晚.小贝大脑受损严重-父母含泪同意放弃治疗,孩子走 ...

  3. VC 设置 Stack Overflow

    C/C++ stack overflow, 怎样设置stack大小?解决方案 (1) vc6.0: project->setting->link->project options-& ...

  4. poj3321

    树映射到树状数组上 非常好的题目,给了我很多启发 题目要求动态求一个棵子树的节点个数 不禁联想到了前缀和,只要我们能用一个合适的优先级表示每个顶点,那么就好做了 我们可以考虑将子树表示成区间的形式 这 ...

  5. SqlSugar轻量ORM

      蓝灯软件数据股份有限公司项目,代码开源. SqlSugar是一款轻量级的MSSQL ORM ,除了具有媲美ADO的性能外还具有和EF相似简单易用的语法. 学习列表 0.功能更新 1.SqlSuga ...

  6. Java程序版权保护解决方案

    通常C.C++等编程语言开发的程序都被编译成目标代码,这些目标代码都是本机器的二进制可执行代码.通常所有的源文件被编译.链接成一个可执行文件.在这些可执行文件中,编译器删除了程序中的变量名称.方法名称 ...

  7. 文件I/O操作(1)

    linux系统调用和用户编程接口(api) 系统调用是指在操作系统提供给用户程序调用的一组“特殊”的接口,用户程序可以通过这组特殊的接口来获取操作系统内核提供的服务,例如用户可以通过进程控制相关的系统 ...

  8. 使用C语言实现二维,三维绘图算法(3)-简单的二维分形

    使用C语言实现二维,三维绘图算法(3)-简单的二维分形 ---- 引言---- 每次使用OpenGL或DirectX写三维程序的时候, 都有一种隔靴搔痒的感觉, 对于内部的三维算法的实现不甚了解. 其 ...

  9. [原创]一种简单的cocos2d-x动态更新方案

    介绍一个曾经在cocos2d-x项目中使用过的动态更新方案,这个方案简单易行,针对小的项目非常有用. 这个方案有两个核心的关键词:JSON,MD5. 原理可以简单地概括为:服务端持有所有动态更新资源文 ...

  10. js基础第四天

    多个tab栏切换class封装 <style>         *{margin:0;padding:0;}         ul{list-style:none;}         .b ...