吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 49599|回复: 150
收起左侧

[移动样本分析] Android木马病毒com.schemedroid的分析报告

  [复制链接]
龙飞雪 发表于 2018-8-2 19:07
使用论坛附件上传样本压缩包时必须使用压缩密码保护,压缩密码:52pojie,否则会导致论坛被杀毒软件等误报,论坛有权随时删除相关附件和帖子!
病毒分析分区附件样本、网址谨慎下载点击,可能对计算机产生破坏,仅供安全人员在法律允许范围内研究,禁止非法用途!
禁止求非法渗透测试、非法网络攻击、获取隐私等违法内容,即使对方是非法内容,也应向警方求助!
本帖最后由 龙飞雪 于 2018-8-2 23:13 编辑

某安全公司移动端病毒分析的面试题目,该病毒样本的难点在于混淆的比较厉害,靠人力手动分析肯定是不现实的,在规定的时间内,人肉手动分析你是不可能分析完成,样本的代码量也比较大,有兴趣的、有条件拿到样本的同学可以自己动手分析试试,这个远控木马的分析是有点难度,不过还是蛮有意思的,样本暂不提供,这真是一段悲伤的故事!生活还在继续,努力加油,让技术再提升一下。通过对这个样本的分析让我明白了很多,思考了很多,又找到了一些新的兴趣点.


木马病毒com.schemedroid的混淆对抗手段:

(1).dex文件的类名称和变量的名称被混淆为无法辨认的特殊字符串



(2).dex文件中的字符串全部被加密函数所加密并且每个类中的加密函数的实现还不同(100多个类文件)




Android木马病毒com.schemedroid的分析报告


apk包名:com.schemedroid
文件Md5: CFBCEE2B12DD93A6109AC06C10C34C86

1.读取当前Android应用的assets目录下的droid.png文件的文件数据,解密之后释放到当前Android应用的文件路径/data/data/com.schemedroid/files/droid.png下,然后将文件/data/data/com.schemedroid/files/droid.png进行重命名为/data/data/com.schemedroid/files/annotation.jar文件。



2.通过DexClassLoader动态加载/data/data/com.schemedroid/files/annotation.jar文件,分别加载类com.GoogleService.MainService和com.GoogleService.Common.Config并通过类反射调用分别构造它们的实例对象,调用通过类反射调用类com.GoogleService.MainService的实例方法create进行对用户的手机进行远程控制的操作(具体的远程控制行为后面再详细的分析);通过类反射调用类com.GoogleService.Common.Config的实例方法getIMEI获取到手机的IMEI值,通过类反射调用类com.GoogleService.Common.Config的实例方法getSrvAddr获取远程服务器的主机名称SrvAddr,通过类反射调用类com.GoogleService.Common.Config的实例方法getSrvPort,获取到与远程服务器通信的端口号SrvPort,然后删除文件/data/data/com.schemedroid/files/droid.png和/data/data/com.schemedroid/files/annotation.jar。



3.调用libwatch.so库文件中的native方法init函数,对用户的手机安装远程监控,具体的通过文件/data/data/com.schemedroid的存在性,来判断是否需要在用户的手机上启动远程监控服务,如果文件/data/data/com.schemedroid存在,则执行am startservice -n com.schemedroid/com.GoogleService.MainService命令,启动java层的服务类com.GoogleService.MainService进行监控,否则的话向SrvAddr指定的主机名,SrvPort指定的端口,发送带用户手机的IMEI值和"MM_UNINSTALLED"命令的tcp数据包给远程服务器,获取是否对手机设备进行监控的标记,1-不监控(uninstall_watch),0-监控。



对SrvAddr服务器返回的数据包的类型进行判断,数据包类型为2时为uninstall_watch,不监控,仅仅作为发送给服务器的ack握手包。



4.对开机启动的广播事件android.intent.action.BOOT_COMPLETED进行注册和监听处理,当接收到该广播事件并且文件/data/data/com.schemedroid/files/android.sys不存在时,则重复执行上述的行为;由于当前apk应用在进行远程监控销毁自身应用的命令处理中,销毁自身apk应用时,会创建/data/data/com.schemedroid/files/android.sys文件,因此在触发行为时,需要判断该文件。



5.对广播事件android.intent.action.START_GOOGLE_SERVICE进行相应注册和监听,启动服务com.schemedroid.SchemeService同样执行上述的行为。



6.当前apk应用的很多行为都是在动态加载的/data/data/com.schemedroid/files/annotation.jar文件里实现的,下面就对/data/data/com.schemedroid/files/annotation.jar文件的行为进行分析。

<1>.当用户点击运行当前apk以后,会对当前Android应用的图标进行隐藏,使用用户难以发现它的存在。



<2>.将当前Android应用的assets目录下的id.txt文件中的数据"2015-12-10 10:58:27"写入到文件/data/data/com.schemedroid/files/id.txt中,apk在进行数据上传的时候会用到该数据;读取文件/data/data/com.schemedroid/files/setting.prop或者当前Android应用的assets目录下的setting.prop文件的数据进行解密操作,得到对用户的手机进行监控设置的原始初始化数据,其中222.87.0.101就是连接到远程服务器的IP地址SrvAddr,5000是端口号SrvPort,key=3ADA7521DBE2DBB311B44901A5C6EAD4就是对远程发送到用户手机上的TEA加密的短信控制指令进行解密的密钥,远控配置文件setting.prop用于保存用户手机被远程监控操作的一些记录。

[C++] 纯文本查看 复制代码
zr_user=, server=222.87.0.101, timer_trigger_1=-1, wifi_upldOnlyConned=0, record_autoUpld=0, gprs_autoTurnOn=0, screenshot=0, imsi=, zr_type=3, number=, msg_observe=1, rooted=0, judge_root=1, keylog=0, boot_cls=, screenshot_interval=10, key=3ADA7521DBE2DBB311B44901A5C6EAD4, timer_action_1=###GetCmd, keylog_app=, screenshot_app=, screenshot_max=100, wifi_cfg=0, takePicture_autoUpld=0, movieRecord_autoUpld=0, wifi_autoTurnOn=0, call_observe=1, version=2030005, gps_autoTurnOn=0, rcd_dura=3, port=5000, wifi_upldOnConned=1, imei=359250052949300, timer_interval_1=60, user=, boot_pkg=


<3>.当前apk数据目录下的配置文件Parameter.xml只要也是用于记录远程服务器对用户的手机进行控制操作的一些记录,方便远程服务器对用户的手机进行控制,主要记录参数有:

isNativeRooted  
用户的手机是否已经root
slower_phone
是否执行slow.sh脚本消耗手机的内存资源
isRemoteRooted
是否对用户的手机进行远程控制的root操作
destroy_apps
是否销毁用户手机系统/system/app目录下的apk
app_package
保存用户手机里安装的app的包名
daemon
是否运行守护进程创建文件/system/bin/debuggerd
sdcard_tag
用户手机系统是否有sdcard等存储器
initCfg
是否读取setting.prop文件中的数据进行原始数据初始化
udp
是否向网址www.baidu.com端口53或者8000发送udp数据包
consume_mobile_traffic
是否消耗用户手机的电量和数据流量
isSettingSend
是否将setting.prop文件的数据发送给远程服务器
run
是否将所有.ini文件中的信息数据压缩保存为文件data%d.41并将压缩文件的数据保存到数据库config.db的表t_fileTask

<4>.当前Android应用在进行上传用户手机里的信息文件数据到远程服务器的方式是,先将需要发送的信息文件压缩为/data/data/com.schemedroid/files/tmp/data%d.41文件并将该压缩文件的文件路径等相关信息保存到数据库文件/data/data/com.schemedroid/databases/config.db的表t_fileTask中,上传文件数据的信息时,主动连接到远程服务器,读取config.db数据库中文件存放路径srcpath指定文件的数据上传给服务器,远程服务器下载释放文件到用户手机的里也是存放到srcpath指定的文件路径。



<5>.当前Android应用自带了root工具,先通过判断文件system/bin/su4100和system/bin/clock_service是否存在,来判断用户的手机是否root。
将assets目录下的splash文件释放到文件路径/data/data/com.schemedroid/app_bin/su下,assets目录下的help4.png文件释放到文件路径,
/data/data/com.schemedroid/app_bin/help4.png下,assets目录下的busybox_g1文件释放到文件路径,
/data/data/com.schemedroid/app_bin/busybox_g1下以及创建和释放脚本文件,
/data/data/com.schemedroid/app_bin/toor.sh并将assets目录下的 logo.png文件先解密然后释放该文件到文件,
路径/data/data/com.schemedroid/app_bin/logo.png下,执行如下命令对用户的手机进行root操作,
root操作完成之后删除文件/data/data/com.schemedroid/app_bin/logo.png、 /data/data/com.schemedroid/app_bin/toor.sh以及/data/data/com.schemedroid/app_bin/su。



<6>.通过检测文件/system/xbin/su4100的存在以及执行命令su4100 -c ls /data能否获取用户手机的data目录下的文件信息来判断用户的手机是否已经root;如果用户的手机没有root,则对用户的手机进行root操作。将assets目录下的splash文件释放到文件路径/data/data/com.schemedroid/app_bin/su下,assets目录下的help4.png文件释放到文件路径/data/data/com.schemedroid/app_bin/help4.png下,将assets目录下的busybox_g1文件释放到文件路径/data/data/com.schemedroid/app_bin/busybox_g1下,创建和释放脚本文件/data/data/com.schemedroid/app_bin/toor.sh,动态加载/data/data/com.schemedroid/app_rmr目录下的.jar包文件,通过类反射调用获取类com.r.m的实例方法s,传入参数.jar文件的名称、/data/data/com.schemedroid/app_bin/toor.sh等调用该类方法s对用户的手机进行root操作(.jar包文件应该是远程服务器下载到app_rmr目录下的),root操作完成以后删除文件toor.sh,su,help4.png。

<7>.root权限下,修改用户手机的系统内存属性为可读可写,通过dd命令将com.schemedroid.apk文件和libwatch.so拷贝释放到文件路径/system目录下并赋予他们677权限,然后发送广播android.intent.action.START_GOOGLE_SERVICE和启动服务com.GoogleService.MainService。



<8>.创建tcp连接的服务端,绑定本地ip地址127.0.0.1端口号为10101,等待远程客户端的连接,接受远程客户端的命令控制。

  控制命令  
执行的操作
4100_IMEI
将用户手机的IMEI"4100_IMEI:+用户手机IMEI")信息,发送给远程的tcp客户端
4100_TERMINAL_NUM
获取到TerminalNumnumber,并将该number加密保存到配置文件  /data/data/com.schemedroid/files/setting.prop
4100_KEY
获取到key值并将该key加密保存到配置文件  /data/data/com.schemedroid/files/setting.prop
4100_LOCAL_NUM
number指定的手机号发送短信,短信内容为jnfja+当前用户手机的IMEI
4100_SRV_ADDR
获取到网络连接的目标ip地址SrvAddrserver并将server值加密保存到配置文件/data/data/com.schemedroid/files/setting.prop中,然后主动连接到server地址  端口号为5000的远程服务器,让用户的手机接受远程控制。
4100_SRV_PORT
获取到网络连接的端口号SrvPortport,并加密保存port到配置文件/data/data/com.schemedroid/files/setting.prop
4100_REQUEST_CONTACT
将用户手机里联系人的信息,发送给远程的tcp客户端
4100_REQUEST_SMS
将用户手机里短信的信息,发送给远程的tcp客户端
4100_REQUEST_CALL
将用户手机里通话记录的信息,发送给远程的tcp客户端
4100_REQUEST_STATION
将用户基于手机定位的经纬度、基站区号、网络标识等信息,发送给远程的tcp客户端
4100_REQUEST_GPS
将用户手机基于Gps定位的经纬度信息,发送给远程的tcp客户端

<9>.窃取用户手机里以下Android应用的文件数据信息和Android应用的版本号,上传到SrvAddr和SrvPort指定的远程服务器端,现将收集到的下列App的数据文件信息进行压缩处理得到data%d.41(其中%d为0~30的某个值)文件,将该压缩文件的路径等信息先保存到数据库config.db的表t_fileTask中,然后发送给远程的服务器。

  App应用的包名  
窃取的数据信息
是否上传App的版本号versionName
com.instanza.cocovoice
/data/data/com.instanza.cocovoice/databases
com.loudtalks
/data/data/com.loudtalks/shared_prefs  Sd卡下的文件zello/history
com.viber.voip
/data/data/com.viber.voip/databases  /data/data/com.viber.voip/files
com.android.browsercom.google.android.browser
/data/data/  com.android.browsercom.google.android.browser  /databases
com.android.browser
/data/data/com.android.browser/databases
com.android.email
/data/data/com.android.email/databases
com.google.android.email
/data/data/com.google.android.email/databases
com.htc.android.mail
/data/data/com.htc.android.mail/databases
com.tencent.mm
/data/data/com.tencent.mm/MicroMsg  /data/data/com.tencent.mm/shared_prefs
com.sina.weibo
/data/data/com.sina.weibo/cache  /data/data/com.sina.weibo/databases  /data/data/com.sina.weibo/files  /data/data/com.sina.weibo/shared_prefs
com.tencent.mobileqq
/data/data/com.tencent.mobileqq/databases  /data/data/com.tencent.mobileqq/shared_prefs
com.tencent.android.pad
/data/data/com.tencent.android.pad/databases  /data/data/com.tencent.mobileqq/shared_prefs
com.skype.rover
/data/data/com.skype.rover/files
com.skype.raider
/data/data/com.skype.raider/files
com.tencent.WBlog
/data/data/com.tencent.WBlog/cache  /data/data/com.tencent.WBlog/databases  /data/data/com.tencent.WBlog/files
com.whatsapp
/data/data/com.whatsapp/databases  /data/data/com.whatsapp/shared_prefs
com.rebelvox.voxer
/data/data/com.rebelvox.voxer/databases
com.oovoo
/data/data/com.oovoo/databases
com.gtomato.talkbox
/data/data/com.gtomato.talkbox/databases  /data/data/com.gtomato.talkbox/files
com.bbm
/data/data/com.bbm/files  /data/data/com.bbm/shared_prefs

<10>.读取当前Android应用资源文件目录assets下的about.png文件的数据,释放该文件到文件路径/data/data/com.schemedroid/filess下,判断/system/bin/debuggerd文件是否已经存在,如果存在则执行/system/bin/debuggerd -c -s SrvAddr -p SrvPort(SrvAddr为连接远程服务器的IP地址,SrvPort为连接远程IP地址的端口),否则读取资源目录assets下的help.png、help2.png、help3.png、help4.png文件,解密后分别释放到/data/data/com.schemedroid/files文件路径下,然后在root权限下,执行以下命令创建守护进程/system/bin/debuggerd。



<11>.将Android应用的assets目录下的iptables_armv5文件和busybox_g1文件拷贝到文件路径/data/data/com.schemedroid/app_bin下,创建和释放/data/data/com.schemedroid/app_bin/droidwall.sh脚本文件并在root权限下执行脚本droidwall.sh,使手机安全软件com.qihoo360.mobilesafe,com.qihoo.antivirus的防火墙功能失效并在执行完成后删除脚本文件droidwall.sh。



<12>.向IP地址为SrvAddr端口号为SrvPort的远程服务器发起网络连接,获取远程服务器发送来的数据包类型,数据包类型为5,将文件/data/data/com.schemedroid/files/setting.prop上传给远程的服务器,关闭与远程服务器的连接;数据包类型为0,接收远程服务器发送来的控制指令对用户的手机进行远程控制操作,每条控制指令是存放在###与###的字符串,并且控制指令执行的操作与上文分析的样本行为是对应的。

  控制命令  
消息类型
执行的操作
GetCmd
-1
连接远程服务器,获取控制用户手机的控制命令
SMSInfo
2
获取用户手机里短信的信息
ContactInfo
1
获取用户手机里联系人的信息
LogInfo
3
获取用户手机里通话记录的信息
BaseStation
0
获取用户手机的手机定位信息
GPS
8
获取用户手机的GPS定位信息
AppList
17
获取用户手机里安装的所有app的信息
GetQQ
24
获取用户手机里QQdatabasesshared_prefs文件信息
GetBrowser
25
获取用户手机里默认浏览器的databases文件信息
GetEmail
26
获取用户手机里指定email应用的databases文件信息
GetWeChat
27
获取用户手机里微信的MicroMsgshared_prefs文件信息
GetWeibo
28
获取用户手机里新浪微博的cachedatabasesfilesshared_prefs文件信息
GetWifi
33
获取用户手机里wifi的名称、密码、连接状态等信息
GetSkype
34
获取用户手机里Skype应用的files文件的信息
LocalAddr
5
获取用户手机的imei值和imsi
MakeACall:(
4
无操作
ClrRcdNum:(
15
删除数据库config.db里表number中储存类型为2的手机号
RcdNum:(
14
向数据库config.db里表number中插入类型为2的手机号
StartRecorder:(
21
对用户的手机进行录音并上传给远程服务器
KSerName:(
6
保存server的地址信息到远控配置文件setting.prop
SendInfo
7
将保存用户手机里指定用户信息的所有.ini文件上传到远程服务器
SetBlack
9
向数据库config.db里表number中插入类型为1的黑名单手机号
ClearBlack
10
删除数据库config.db里表number中储存类型为1的黑名单手机号
KillSelf
11
在用户手机里,清除com.schemedroid.apk自身并结束自身进程
FILELIST
12
获取用户手机里所有scard等存储器的文件路径信息
RecordFileList
16
获取对用户手机进行通话录音和常规录音的保存文件的路径信息
SendFile
13
将用户手机里指定文件路径的文件数据上传到远程服务器
SendDir
48
将用户手机里指定文件夹下的所有文件信息存储到数据库config.db的表t_fileTask
SendSms
23
让用户的手机向指定的手机号发送指定的短信
SendFakeSms
31
在用户的手机里伪造发送假短信
UpdateSetting
30
将远控配置文件setting2.prop的数据上传到服务器进行下载更新
TakePicture
35
对用户的手机进行屏幕截图操作
MovieRecord
36
对用户的手机进行视频录制操作
GetAppData
37
获取用户手机里指定app的指定目录的文件信息并上传到远程服务器
GetWhatsapp
38
获取用户手机里Whatsapp应用的databasesshared_prefs文件信息
DeleteFiles
39
对用手机里的指定图片、视频、音频或者app文件进行删除
DestroyApps
40
将用户手机里安装的app进行删除和破坏缓存dex文件
ConsumeEnergy
41
消耗和浪费用户手机的网络资源和电量
ConsumeMobileTraffic
42
发送无效的http请求,消耗用户手机的数据流量
SetFlyMode
43
控制用户手机的飞行模式的开启和关闭
SlowerPhone
44
执行脚本slow.sh消耗用户手机的内存资源
MatchFiles
45
获取用户手机里与指定文件匹配的所有文件
GetAVFileList
46
获取用户手机里指定格式图片、音频、视频文件的文件列表
MMSInfo
50
将保存用户MMS类型信息的.ini文件的数据上传到远程的服务器
STRATEGY
51
收集用户手机里通信app、联系人等信息并将保存信息文件路径存储到数据库config.db的表t_fileTask
GetRoot
52
获取用户手机是否已经root的信息

<13>.对用户手机里的短信数据库"content://sms"的变化进行监控,判断用户手机接收到的短信是否是###开头的远程控制指令短信,由于该远程控制指令短信是经过TEA算法加密的,使用远控配置文件setting.prop中key对远程控制指令短信进行TEA算法的解密,得到最终有效的控制指令字符串,控制指令对应的具体操作和网络远程控制的控制指令操作一致。

  控制命令  
消息类型
执行的操作
GetCmd
-1
连接远程服务器,获取控制用户手机的控制命令
SMSInfo
2
获取用户手机里短信的信息
ContactInfo
1
获取用户手机里联系人的信息
LogInfo
3
获取用户手机里通话记录的信息
BaseStation
0
获取用户手机的手机定位信息
GPS
8
获取用户手机的GPS定位信息
AppList
17
获取用户手机里安装的所有app的信息
GetQQ
24
获取用户手机里QQdatabasesshared_prefs文件信息
GetBrowser
25
获取用户手机里默认浏览器的databases文件信息
GetEmail
26
获取用户手机里指定email应用的databases文件信息
GetWeChat
27
获取用户手机里微信的MicroMsgshared_prefs文件信息
GetWeibo
28
获取用户手机里新浪微博的cachedatabasesfilesshared_prefs文件信息
GetWifi
33
获取用户手机里wifi的名称、密码、连接状态等信息
GetSkype
34
获取用户手机里Skype应用的files文件的信息
LocalAddr
5
获取用户手机的imei值和imsi
MakeACall:(
4
无操作
ClrRcdNum:(
15
删除数据库config.db里表number中储存类型为2的手机号
RcdNum:(
14
向数据库config.db里表number中插入类型为2的手机号
StartRecorder:(
21
对用户的手机进行录音并上传给远程服务器
KSerName:(
6
保存server的地址信息到远控配置文件setting.prop
SendInfo
7
将保存用户手机里指定用户信息的所有.ini文件上传到远程服务器
SetBlack
9
向数据库config.db里表number中插入类型为1的黑名单手机号
ClearBlack
10
删除数据库config.db里表number中储存类型为1的黑名单手机号
KillSelf
11
在用户手机里,清除com.schemedroid.apk自身并结束自身进程
FILELIST
12
获取用户手机里所有scard等存储器的文件路径信息
RecordFileList
16
获取对用户手机进行通话录音和常规录音的保存文件的路径信息
SendFile
13
将用户手机里指定文件路径的文件数据上传到远程服务器
SendDir
48
将用户手机里指定文件夹下的所有文件信息存储到数据库config.db的表t_fileTask
SendSms
23
让用户的手机向指定的手机号发送指定的短信
SendFakeSms
31
在用户的手机里伪造发送假短信
UpdateSetting
30
将远控配置文件setting2.prop的数据上传到服务器进行下载更新
TakePicture
35
对用户的手机进行屏幕截图操作
MovieRecord
36
对用户的手机进行视频录制操作
GetAppData
37
获取用户手机里指定app的指定目录的文件信息并上传到远程服务器
GetWhatsapp
38
获取用户手机里Whatsapp应用的databasesshared_prefs文件信息
DeleteFiles
39
对用手机里的指定图片、视频、音频或者app文件进行删除
DestroyApps
40
将用户手机里安装的app进行删除和破坏缓存dex文件
ConsumeEnergy
41
消耗和浪费用户手机的网络资源和电量
ConsumeMobileTraffic
42
发送无效的http请求,消耗用户手机的数据流量
SetFlyMode
43
控制用户手机的飞行模式的开启和关闭
SlowerPhone
44
执行脚本slow.sh消耗用户手机的内存资源
MatchFiles
45
获取用户手机里与指定文件匹配的所有文件
GetAVFileList
46
获取用户手机里指定格式图片、音频、视频文件的文件列表
MMSInfo
50
将保存用户MMS类型信息的.ini文件的数据上传到远程的服务器
STRATEGY
51
收集用户手机里通信app、联系人等信息并将保存信息文件路径存储到数据库config.db的表t_fileTask
GetRoot
52
获取用户手机是否已经root的信息

<14>.如果用户手机接收到短信的发送手机号是在config.db的数据库number表中的类型为1的黑名单中的手机号,则该条短信如下详细信息发送到远程的服务器端;如果不在,只将短信的发送时间、短信内容、短信长度和用户手机的手机定位经纬度等信息上到远程的服务器。



<15>.对用户的手机通话进行监控并监听和处理广播事件android.intent.action.NEW_OUTGOING_CALL,对用户的电话拨号进行拦截,获取到用户所拨打的手机号码,如果该手机号不在数据库config.db里的表number中type为2的非黑名单中,则对该手机号的通话进行监控录音。



<16>.对用户的手机进行录音监控,监听和注册广播事件googleservice.action.startRecord和googleservice.action.stopRecord,当前广播事件为前者时对用户的手机进行监控录音和保存,当广播事件为后者时,将录音文件上传到远程的服务器端。



<17>.对用户的手机屏幕进行截图监控,注册和监听广播事件googleservice.action.startTakePicture和googleservice.action.takingPictureOver,当收到的广播事件为前者时,开启定时器任务回调对用户的手机屏幕进行截图操作,当接收到的广播事件为后者时,将对用户手机进行截图监控得到文件,上传远程的服务器端。



<18>.对用户的手机进行视频监控,注册和监听广播事件googleservice.action.startMovieRecord和googleservice.action.movieRecordOver,当监听到的广播事件为前者时,开启定时器回调对用户的手机进行视频的录制操作,当监听到的广播事件为后者时,结束视频监控,将对用户手机视频监控得到的文件上到远程的服务器端。



<19>.强制开启用户手机的Gps定位功能,监听和注册广播事件googleservice.opengps和 googleservice.closegps,当接收到这两种广播事件时,都会强制开启用户手机的Gps定位功能,还会发送位置更新请求更新用户手机的定位信息。



<20>.监控用户手机的网络定位信息的变化并实时将用户手机的网络定位经、纬度等信息,上传到远程的服务器端。



<21>.监听用户手机网络wifi的变化,注册和监听广播事件android.net.conn.CONNECTIVITY_CHANGE和android.net.wifi.WIFI_STATE_CHANGED,当接收到的广播事件为前者时,主动向SrvAddr和SrvPort描述的IP地址发起网络连接,让用户的手机接收远程服务器的命令控制(具体控制行为,上面12中已分析)并将保存用户基本信息的文件上传到远程的服务器;当接收到的广播事件为后者时,清除掉用户手机的wifi配置信息,对用户手机的WiFi进行自动密码的破解



<22>.远程控制对用户手机里指定路径下的图片、音频、视频文件以及Android系统的其他文件进行删除操作,远程命令控制支持删除的图片、音频、视频文件的格式,如下所示:



在对Android系统的非多媒体文件进行删除时,若被删除文件在/system目录下时,先修改Android系统内存属性(root权限),然后将文件重名为.d文件,对/system/bin/app_process做特殊处理,执行kill命令结束掉/system/bin/app_process进程,其他的文件直接执行rm命令进行删除操作。



<23>.远程销毁和破坏用户手机里安装的所有Android应用程序,删除掉该Android应用的优化odex文件并破坏掉/data/dalvik-cache目录下的缓存dex文件,最后通过包名查找结束掉该Apk对应的Android进程。



<24>.远程控制实现自我的删除操作,执行命令的如下所示,当前Android应用在删除自身操作时,会创建标记文件/data/data/com.schemedroid/android.sys,将/system和/data目录下的com.schemedroid.apk文件删除和卸载后,结束自身进程。



<25>.关闭用户手机的wifi网络打开用户手机的移动数据流量,向http://www.androidcentral.com/google-play-store发送http数据请求,消耗用户手机的移动数据流量。



<26>.强制开启用户手机的Gps功能,wifi网络并开启wifi的扫描功能,发送http请求等操作以及创建和释放脚本文件/data/data/com.schemedroid/files/consume0.sh和脚本文件/data/data/com.schemedroid/files/consume.sh,执行命令sh consume.sh 3 & 对用户手机的网络资源和电池电量进行消耗。



<27>.创建和释放脚本文件/data/data/com.schemedroid/files/slow.sh和/data/data/com.schemedroid/files/slow0.sh,执行命令 sh slow.sh 10 & 运行脚本,消耗用户手机的内存资源。



over,基本的样本行为就是这么多了,还有一些其他的行为就不写了,在该木马病毒的远程控制指令中都有描述。
加油~格式排版不是很好,图片压缩的厉害.

免费评分

参与人数 37吾爱币 +35 热心值 +34 收起 理由
m1necr0ft + 1 用心讨论,共获提升!
hahachigua + 1 + 1 看着这长长的文段,我看到了作者对此的喜爱,谢谢!
Mr.Mlwareson_V + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
stevencaptain + 1 + 1 用心讨论,共获提升!
XYQ + 1 + 1 谢谢@Thanks!
萌小悦 + 1 + 1 我很赞同!
日落繁星 + 1 热心回复!
hgfty1 + 1 + 1 用心讨论,共获提升!
如实知见 + 1 + 1 谢谢@Thanks!
向北行 + 1 我很赞同!
plasd + 1 + 1 用心讨论,共获提升!
不安 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!好厉害
siuhoapdou + 1 + 1 谢谢@Thanks!
舰长大人 + 1 + 1 热心回复!
15808244862 + 1 + 1 用心讨论,共获提升!
a448037978 + 2 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
Marketing + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
曾湖峰 + 1 + 1 我很赞同!
MYxx + 1 + 1 谢谢@Thanks!
仰己 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
awzs7758520 -1 + 1 热心回复!
GetProcessId + 1 + 1 谢谢@Thanks!
liphily + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
蓬莱的树海 + 1 + 1 热心回复!
soyiC + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
搜索中文字符串 + 1 + 1 我很赞同!
whitejsm + 1 + 1 热心回复!
ponely + 1 + 1 我很赞同!
山顶的一棵草 + 2 + 1 15个主题12个精华,请您一定要收下我的膝盖!
niboliang + 1 + 1 我很赞同!
dina-sam + 1 我很赞同!
A_luan + 1 + 1 用心讨论,共获提升!
guigui328 + 1 + 1 用心讨论,共获提升!
未来与世界 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
dsb2468 + 1 + 1 就喜欢这样认真的人!
caniy + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
JacklyMa + 1 + 1 用心讨论,共获提升!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

伯牙 发表于 2018-9-7 18:01
stevencaptain 发表于 2018-9-6 19:29
谢谢回复
可能还是我搜索的方式不对,搜索结果总是分析的结果,没有哪个地方可以下样本

需要请私信联系,直接贴地址可能违规。
六哥。 发表于 2018-8-2 19:29
150阅读权限,收下我的膝盖

点评

谢谢所有小伙伴的关注和支持,不一一回复了,有问题的我会单独回复,希望大家能看到~  发表于 2018-8-6 13:32
羽橙雨 发表于 2018-8-22 13:51
蜻蜓队长99 发表于 2018-8-2 19:28
前排围观大牛

点评

说声抱歉了,各位小伙伴,论坛的编辑器用的不熟,帖子没编辑好,编辑好了开放帖子权限  发表于 2018-8-2 19:31
 楼主| 龙飞雪 发表于 2018-8-2 19:30

上面编辑好了

本帖最后由 龙飞雪 于 2018-8-2 23:09 编辑

上面编辑好了
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
1.png
JacklyMa 发表于 2018-8-2 21:33
围观 还在编辑中吗   关注ing
单曲循环丶T 发表于 2018-8-2 21:55
第一次这么超前,卖瓜子了
Aswattha 发表于 2018-8-2 23:47
哇 大神好厉害
louisir008 发表于 2018-8-3 00:18

哇 大神好厉害
Tnoy 发表于 2018-8-3 01:56
好犀利嘢
幻象 发表于 2018-8-3 07:21 来自手机
这么恐怖   
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-22 15:58

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表