新型安卓恶意软件使用Protobuf协议窃取用户数据

1693366438_64eeb8a6a909736e7c840.png!small?1693366438924

近日有研究人员发现,MMRat新型安卓银行恶意软件利用protobuf 数据序列化这种罕见的通信方法入侵设备窃取数据。

趋势科技最早是在2023年6月底首次发现了MMRat,它主要针对东南亚用户,在VirusTotal等反病毒扫描服务中一直未被发现。

虽然研究人员并不知道该恶意软件最初是如何向受害者推广的,但他们发现 MMRat 目前是通过伪装成官方应用程序商店的网站进行传播的。

这些应用程序通常会模仿政府官方应用程序或约会应用程序,待受害者下载时会自动安装携带 MMRat 的恶意应用程序,并在安装过程中授予权限,如访问安卓的辅助功能服务等。

恶意软件会自动滥用辅助功能,为自己授予额外权限,从而在受感染设备上执行大量恶意操作。

MMRat 的功能

一旦 MMRat 感染了安卓设备,它就会与 C2 服务器建立通信渠道,并监控设备活动以发现设备空闲时间。在此期间,威胁行为者会滥用可访问性服务远程唤醒设备、解锁屏幕并实时进行银行欺诈。

MMRat 的主要功能可归纳为以下几点:

  • 收集网络、屏幕和电池信息
  • 窃取用户的联系人列表和已安装的应用程序列表
  • 通过键盘记录获取用户输入信息
  • 通过滥用 MediaProjection API 从设备上捕获实时屏幕内容
  • 记录和实时串流摄像头数据
  • 以文本转储形式记录和转储屏幕数据,并将其外泄到 C2
  • 从设备上卸载,清除所有感染证据

1693365427_64eeb4b3b350c858ef102.png!small?1693365427413

恶意软件支持的所有命令,图源:趋势科技

MMRat 能够捕捉实时屏幕内容,甚至还能通过更初级的 "用户终端状态 "方法提取需要重构的文本数据,这都要求高效的数据传输。

如果没有这样的效率,其性能将阻碍威胁行为者有效实施银行欺诈,这也是 MMRat 的作者选择开发用于数据外渗的定制 Protobuf 协议的原因。

1693365617_64eeb571f0756190ed36f.png!small?1693365618168

MMRat攻击链,图源:趋势科技

Protobuf的优势

MMRat 使用基于协议缓冲区(Protobuf)的独特命令与控制(C2)服务器协议来实现高效数据传输,这在安卓木马中并不多见。

Protobuf 是谷歌开发的一种结构化数据序列化方法,类似于 XML 和 JSON,但体积更小、速度更快。

MMRat 使用不同的端口和协议与 C2 交换数据,如 8080 端口的 HTTP 用于数据渗出,RTSP 和 8554 端口用于视频流,8887 端口的自定义 Protobuf 用于命令和控制。

趋势科技的报告指出:C&C协议尤其独特,因为它是基于Netty和上文提到的Protobuf定制的,具有精心设计的消息结构。

对于 C&C 通信,威胁行为者使用一个总体结构来表示所有消息类型,并使用 "oneof "关键字来表示不同的数据类型"。

1693366023_64eeb70753d665ee3e8da.png!small?1693366023509

Protobuf模式,图源:趋势科技

除了 Protobuf 的高效性,定制协议还能帮助威胁行为者躲避网络安全工具的检测,这些工具会寻找已知异常的共同模式。

Protobuf的灵活性允许MMRat的作者定义他们的信息结构,并组织数据的传输方式。同时,Protobuf 的结构化特性还能确保发送的数据符合预定义的模式,从而降低在接收端被破坏的可能性。

MMRat凸显出了安卓银行木马不断发展的复杂性,它巧妙地将隐蔽性与高效数据提取融为一体。

因此,安卓用户最好全部在Google Play里下载应用 ,查看用户评论,并只选择信誉良好的软件发行商。此外,在安装应用程序阶段被要求授予访问权限时须保持谨慎。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/60170.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【高性能计算】opencl语法及相关概念(三)事件,内存

opencl中的事件概念 当谈到OpenCL中的事件时,它们代表了执行的各个阶段或操作的状态信息。通过使用事件,您可以跟踪和管理内核执行以及内存操作的进度和顺序。以下是与OpenCL事件相关的关键概念: 创建事件:您可以使用clCreateUse…

【MATLAB第70期】基于MATLAB的LightGbm(LGBM)梯度增强决策树多输入单输出分类预测模型(全网首发,敬请期待)

【MATLAB第70期】基于MATLAB的LightGbm(LGBM)梯度增强决策树多输入单输出分类预测模型(全网首发,敬请期待) (LGBM)是一种基于梯度增强决策树(GBDT)算法。 基于MATLAB的LightGbm即将研究测试上线。 下一个研究对象: ABCBOOST模型 一…

【AI】数学基础——数理统计(概念参数估计)

概率论 文章目录 3.6 数理统计概念与定理3.6.1 概率论与数理统计区别3.6.2 基本定理大数定理马尔科夫不等式切比雪夫不等式中心极限定理 3.6.3 统计推断的基本问题 3.7 参数估计3.7.1 频率派点估计法矩阵估计法极大似然估计点估计量的评估 区间估计 3.7.2 贝叶斯派贝叶斯定理条…

云安全攻防(十三)之 使用minikube安装搭建 K8s 集群

使用minikube安装搭建 K8s 集群 Kubernetes 是一个可移植的、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化,一般来说K8s安装有三种方式,分别是Minikube装搭建 K8s 集群,特点是只有一个节点的集群&…

Linux系统文件权限修改:permission denied

最近遇到文件夹权限的问题 通过命令发现www缺少写和执行的权限 然后赋予所有权限 下面是一些详解&#xff1a; 要赋予文件或目录写入权限&#xff0c;可以使用 chmod 命令。 命令的基本语法是&#xff1a; chmod <permissions> <file or directory>其中 <…

对称加密 非对称加密 AC认证 https原理

文章目录 对称加密及漏洞非对称加密及漏洞什么是数据摘要&#xff08;也称数据指纹&#xff09;什么是CA认证CA证书签发过程https通信方案 对称加密及漏洞 对称加密是一种加密算法&#xff0c;使用相同的密钥&#xff08;也称为对称密钥&#xff09;用于加密和解密数据。在对称…

从Gamma空间改为Linear空间会导致性能下降吗

1&#xff09;从Gamma空间改为Linear空间会导致性能下降吗 2&#xff09;如何处理没有使用Unity Ads却收到了GooglePlay平台的警告 3&#xff09;C#端如何处理xLua在执行DoString时候死循环 4&#xff09;Texture2DArray相关 这是第350篇UWA技术知识分享的推送&#xff0c;精选…

金仓数据库KingbaseES Windows版本启动时报错的问题

服务启动提示&#xff1a; 原因是使用的授权版本不对&#xff0c;导致服务总是启动不了 先卸载&#xff0c;重启&#xff0c;重新安装&#xff0c;选择下面这个授权文件 再启动开发工具&#xff0c;成功

学习pytorch7 神经网络的基本骨架--nn,module的使用

神经网络的基本骨架--nn,module的使用 官网Module介绍Python父类子类继承关系前向神经网络pycharm快捷键重写类方法codedebug B站小土堆视频学习笔记 官网Module介绍 https://pytorch.org/docs/stable/generated/torch.nn.Module.html#torch.nn.Module Python父类子类继承关系…

前端调用电脑摄像头

项目中需要前端调用&#xff0c;所以做了如下操作 先看一下效果吧 主要是基于vue3&#xff0c;通过canvas把画面转成base64的形式&#xff0c;然后是把base64转成 file文件&#xff0c;最后调用了一下上传接口 以下是代码 进入页面先调用一下摄像头 navigator.mediaDevices.ge…

人脸识别平台批量导入绑定设备的一种方法

因为原先平台绑定设备是通过一个界面进行人工选择绑定或一个人一个人绑定设备。如下&#xff1a; 但有时候需要在几千个里选择出几百个&#xff0c;那这种方式就不大现实了&#xff0c;需要另外一种方法。 目前相到可以通过导入批量数据进行绑定的方式。 一、前端 主要是显示…

42、Flink 的table api与sql之Hive Catalog

Flink 系列文章 1、Flink 部署、概念介绍、source、transformation、sink使用示例、四大基石介绍和示例等系列综合文章链接 13、Flink 的table api与sql的基本概念、通用api介绍及入门示例 14、Flink 的table api与sql之数据类型: 内置数据类型以及它们的属性 15、Flink 的ta…

Redis初始以及安装

"梦却了无影踪&#xff0c;梦仍不曾改动" 初始Redis (1) Redis是什么&#xff1f; 要认识、学习一个软件&#xff0c;最重要的途径无一是去该软件的官方文档里瞅瞅、转悠转悠。 从官方文档的介绍中得知&#xff0c;Redis是一种工作于内存&#xff0c;…

juicefs源码format命令阅读

之前博文中介绍过在windows下安装GO和vscode windows下安装go环境 和vscode中go扩展调试 1、获取源码 git clone https://github.com/juicedata/juicefs.git 首先观察代码架构 上图是我已经编译过得代码&#xff0c;可能和刚git下来的有些出入。 2、编译 我是在windows上进…

Linux禅道上修改Apache 和 MySQL 默认端口号

1. 修改Apache默认端口号 80 cd /opt/zbox/etc/apachevim httpd.conf :wq 保存 2. 修改MySQL默认端口号 3306 cd /opt/zbox/etc/mysql vim my.cnf :wq 保存 3. 重启服务 ./zbox restart

GPT能否辅助数学学习

GPT4.0的数学能力怎么样&#xff1f;我们使用镜像站进行实验&#xff0c;通过不同水平的数学看看GPT4.0的数学能力得到进步没有。镜像站的地址我们放在了最后&#xff0c;各位读者也可以自行去测试。 笔者在ChatGPT镜像站进行测试&#xff0c;我们的实验是让GPT4.0自行出数学题…

2024王道408数据结构P144 T16

2024王道408数据结构P144 T16 思考过程 首先看题目&#xff0c;要求我们把二叉树的叶子结点求出来并且用链表的方式存储&#xff0c;链接时用叶结点的右指针来存放单链表指针。我们很清楚可以看出来能用中序遍历递归的方式实现&#xff0c;因为第一个叶子结点在整棵树的最左下…

入职字节外包一个月,我离职了

有一种打工人的羡慕&#xff0c;叫做“大厂”。 真是年少不知大厂香&#xff0c;错把青春插稻秧。 但是&#xff0c;在深圳有一群比大厂员工更庞大的群体&#xff0c;他们顶着大厂的“名”&#xff0c;做着大厂的工作&#xff0c;还可以享受大厂的伙食&#xff0c;却没有大厂…

eslint和prettier格式化冲突

下载插件 ESLint 和 Prettier ESLint 进入setting.json中 setting.json中配置 {"editor.tabSize": 2,"editor.linkedEditing": true,"security.workspace.trust.untrustedFiles": "open","git.autofetch": true,"…