博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
“聊天剽窃手”--ptrace进程注入型病毒
阅读量:5961 次
发布时间:2019-06-19

本文共 1198 字,大约阅读时间需要 3 分钟。

近日,百度安全实验室发现了一款“聊天剽窃手”病毒,该病毒可以通过ptrace方式注入恶意代码至QQ、微信程序进程,恶意代码可以实时监控手机QQ、微信的聊天内容及联系人信息。

该病毒是眼下发现的首款通过ptrace进程注入方式进行恶意窃取私密资料的病毒。

 

 

 

简单介绍

 

该病毒主要是通过ptrace注入QQ和微信进程进行信息窃取的,主程序调用assets中的inject_appsolibcall.so以及conn.jar联合进行“作案”,在conn.jar中获取聊天信息/近期联系人等,并发送广播启动主程序广播接收器,将隐私信息发送至远端地址。

该病毒行为图例如以下:

 

 

 

代码分析:

 

主恶意程序代码结构图例如以下:

 

 

1、入口启动

主恶意程序启动后立马尝试获取ROOT权限。并将assets下的几个将要执行的文件拷贝至系统不同文件夹下:

 

inject_appso –> /system/bin/

libcall.so –> /system/lib/

conn.jar –> /data/data/qy/

 

复制完文件后。以管理员权限执行inject_appso程序进行程序注入:

 

执行inject_appso

 

2、注入恶意代码至QQ/微信进程

inject_appso可执行文件以Root用户执行后,通过调用ptrace函数获取QQ、微信进程的控制权。获取控制权后,在目标进程载入并执行附带的恶意代码libcall.so

 

 

ibcall.so代码执行后,首先获取Dalvik执行时环境,通过Dexclassloader动态载入附带的conn.jar恶意代码:

 

 

 

 

 

3、恶意代码HookQQ、微信重要数据获取用户隐私

 

conn.jar代码结构图例如以下:

 

 

conn.jar通过javahook方式监控QQ或微信聊天界面。

QQ聊天界面:com.tencent.mobileqq.activity.ChatActivity

微信聊天界面:com.tencent.mm.ui.chatting.ChattingUI

当聊天内容发生变动时,恶意代码便会获得通知并获取聊天内容:

 

HOOK微信聊天界面

 

监控聊天界面变化

 

获取聊天内容

 

不仅可以监控页面内容。并且可以通过获取/data/data/com.tencent.mobileqq/文件夹或者/data/data/com.tencent.mm/中的.db数据库文件,获取聊天历史记录,并且可以获取近期联系人信息:

 

获取近期联系人信息

 

4、将聊天信息上传至server:

conn.jar获取到聊天消息后。便将这些信息通过广播“learn.yincc.CHAT_UPDATE”发送出去。

该广播由主恶意程序接收。主恶意程序解析广播内容后。将聊天内容发送至远端server:

 

conn.jar发送广播

主恶意程序接收广播

 

主恶意程序将聊天内容发送至远端server

你可能感兴趣的文章
yum源资料汇总
查看>>
7、MTC与MTV,http请求介绍
查看>>
logstash消费阿里云kafka消息
查看>>
第四节课作业
查看>>
angularJS 限制字符串输出长度
查看>>
顺序表的实现---动态
查看>>
SCN转换
查看>>
Tomcat配置
查看>>
我的友情链接
查看>>
云客户端重在连接
查看>>
Linux和AIX下添加定时任务
查看>>
HTML+DOM与XML+DOM之间的区别与联系
查看>>
VS2012 发布网站步骤
查看>>
dubbo的服务提供者provider启动的一些理解
查看>>
Java之品优购部署_day01(2)
查看>>
[20171227]表的FULL_HASH_VALUE值的计算.txt
查看>>
[20190415]关于shared latch(共享栓锁).txt
查看>>
设计读书笔记
查看>>
有关Kali更新问题的解决方法。
查看>>
[摘录]验证视图MAC失败 Validation of ViewState MAC Failed
查看>>