Revive:从间谍软件进化成银行木马

news2024/11/26 0:32:47

2022 年 6 月,Cleafy 研究人员发现了一个新的安卓银行木马 Revive。之所以选择 Revive
这个名称,是因为恶意软件为防止停止工作启用的一项功能名为 revive

Revive 属于持续潜伏的那一类恶意软件,因为它是为特定目标开发和定制的。这种类型的恶意软件与其他 Android 银行木马各有异同,例如 TeaBot
或 SharkBot 它们都能够同时通过模块化架构攻击安装在受感染设备上的多个银行/加密应用程序。

Revive 的攻击方法与其他银行木马也是相似的,它仍然滥用 Accessibility Services
来执行键盘记录并拦截受害者的短信。这些功能就足以执行帐户接管攻击(ATO),因为此时恶意软件即可获得登录凭据和银行通过短信发送的双因子认证。

到目前为止,发现的两个 Revive 样本的杀软检出率都非常低。如图所示,第二个样本的检出率甚至为零。

image.png-117.7kB样本检出情况

技术分析

image.png-394.9kB钓鱼网站

与其他银行木马类似,Revive 也使用不同的社会工程学技巧伪装成合法应用程序,误导受害者。Revive
的恶意样本也是通过钓鱼网站进行投递的,隐藏在目标银行的新版双因子验证应用程序之后。

受害者下载了恶意软件,Revive 尝试通过弹出窗口获取辅助服务功能,用于监视和窃取受害者设备的信息。

image.png-135.4kBRevive
安装

受害者首次打开恶意软件时,Revive 要求提供短信与电话相关的两项权限。之后一个假冒的银行页面就会展示给受害者,如下所示。受害者输入凭据后,会被发送到
C&C 服务器中,之后恶意软件会将受害者重定向到合法网站。

image.png-239.5kB凭据回传

Revive 的开发人员应该是从开源在 GitHub 上的名为 Teardroid 的窃密恶意软件修改而来,因为二者之间的程序与 C&C
的基础架构存在很多相似性。

image.png-561.2kB开源
Teadroid 项目

Teardroid 是拥有很多功能的窃密恶意软件,而 Revive 删除了 Teadroid 的一些功能,并在为其添加了新功能,转向了银行木马的功能。

image.png-1028.6kBTeadroid
和 Revive 比较

其 C&C 基础设施基于 FastAPI,这是一个 Python 的 RESTful API 的开发框架。除此之外,攻击者还定制了 Teadroid
的控制面板,支持银行木马的对应功能。

下图显示了在调查分析时发现的一些相似之处:

image.png-882.7kBC&C
相似性

银行木马 Revive 主要具备三个能力:

窃取登录凭据。通过滥用辅助服务,可以向用户显示虚假页面并记录键盘击键。

拦截受感染设备收到的所有短信,目的是获取通过短信发送给用户的双因子认证。

获取用户在设备上写入的所有内容(例如凭据、消息、电话号码等,如下所示)。这些信息保存在本地数据库中并发送回 C&C 服务器。

image.png-321.9kB窃密信息回传

image.png-352.7kB键盘记录

结论

现在已经有很多流行的 Android 银行木马,如 SharkBot、TeaBot 或
Oscorp/UBEL,这些恶意软件都具备很多功能、相对复杂。Revive
似乎是小型定制攻击行动,这可能更加难以拦截。这些恶意软件很多都是全新的,安全产品难以检测,而且攻击只会存在数天。研究人员尚不清楚 Revive
未来会如何演进,毕竟该恶意软件还处于早期阶段,攻击者仍能够通过各种方式对其进行改进。

IOC

4240473028f88a3ef54f86f1cd387f24
cf704e63652c23c2d609e9a01659511c
80.85.153.49
bbva.appsecureguide.com
bbva.european2fa.com

最后

分享一个快速学习【网络安全】的方法,「也许是」最全面的学习方法:
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(一周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(一周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(一周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)

在这里插入图片描述

恭喜你,如果学到这里,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web 渗透、安全服务、安全分析等岗位;如果等保模块学的好,还可以从事等保工程师。薪资区间6k-15k。

到此为止,大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗?

想要入坑黑客&网络安全的朋友,给大家准备了一份:282G全网最全的网络安全资料包免费领取!
扫下方二维码,免费领取

有了这些基础,如果你要深入学习,可以参考下方这个超详细学习路线图,按照这个路线学习,完全够支撑你成为一名优秀的中高级网络安全工程师:

高清学习路线图或XMIND文件(点击下载原文件)

还有一些学习中收集的视频、文档资源,有需要的可以自取:
每个成长路线对应板块的配套视频:


当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料&工具,并且已经帮大家分好类了。

因篇幅有限,仅展示部分资料,需要的可以【扫下方二维码免费领取】

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

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

相关文章

Python 四种推导式,包含实例演示

嗨害大家好鸭!我是小熊猫~ 这次继续来给大家带来python基础内容~ 源码资料电子书:点击此处跳转文末名片获取 Python 推导式 Python 推导式是一种独特的数据处理方式,可以从一个数据序列构建另一个新的数据序列的结构体。 Python 支持各种数据结构的推…

关于进行vue-cli过程中的解决错误的问题

好久没发文章了,直到今天终于开始更新了,最近想进军全端,准备学习下vue,但是这东西真的太难了,我用了一天的时间来解决在配置中遇到的问题!主要问题:cnpm文件夹和vue-cli文件夹的位置不对并且vu…

秒杀项目之网关服务限流熔断降级分布式事务

目录一、网关服务限流熔断降级二、Seata--分布式事务2.1 分布式事务基础2.1.1 事务2.1.2 本地事务2.1.3 分布式事务2.1.4 分布式事务场景2.2 分布式事务解决方案2.2.1 全局事务可靠消息服务2.2.2 最大努力通知2.2.3 TCC事事务三、Seata介绍四、 Seata实现分布式事务控制4.1 案例…

【Android】Binder的理解

1.Binder是什么? 对于android而言,是跨进程传输的通道,是封装好的java类,可以直接继承和使用。 从组成、模型来讲,我认为是连接Server层、Client层、ServerManager层的纽带,也是驱动。 2.Binder的基础概…

RMI攻击Registry的两种方式

概述 RMI(Remote Method Invocation) :远程方法调用 它使客户机上运行的程序可以通过网络实现调用远程服务器上的对象,要实现RMI,客户端和服务端需要共享同一个接口。 基础 Client 和 Regisry 基于 Stub 和 Skeleton 进行通信&#xff0c…

ContextCapture Master 倾斜摄影测量实景三维建模

ContextCapture实景建模大师是一套无需人工干预,通过影像自动生成高分辨率的三维模型的软件解决方案。它集合了全球最先进数字影像处理、计算机虚拟现实以及计算机几何图形算法,在易用性、数据兼容性、运算性能、友好的人机交互及自由的硬件配置兼容性等…

花1分钟配置远程DEBUG,开发效率翻倍,妹子直呼绝绝子

当把一个工程部署到远程服务器后有可能出现意想不到错误,日志打印过多或者过少都影响问题排查的效率,这个时候可以通过远程调试的方式快速定位bug,提升工作效率。本文主要讲解如何使用Idea开发工具进行远程调试,希望对你有帮助。 …

微信小程序授权登录流程

自我介绍我是IT果果日记,微信公众号请搜索 IT果果日记一个普通的技术宅,定期分享技术文章,欢迎点赞、关注和转发,请多关照。首先,我们要了解什么是微信小程序登录?它的作用是什么?用户登录微信小…

使用Fetch时,post数据时,后端接收的Content-Type为text/plain

在使用 Fetch做一个前端的post请求时,直接从网上抄了一段代码 export async function postData(url, data){const response await fetch(url, {method: POST, // *GET, POST, PUT, DELETE, etc.mode: no-cors, // no-cors, *cors, same-originheaders: { Content-…

xshell 工具连接不上本地的 Centos 7虚拟机,4种情况,逐个分析

导读 小编之前使用过 VMware workstation 工具搭建 Centos 7 版本的虚拟机集群,各项功能都正常,用完了也就清除了(节约本地空间)。因为最近学习大数据,需要从新安装虚拟机,结果发现并不如第一次那么顺利。所…

TDengine时序数据库的简单使用

最近学习了TDengine数据库,因为我们公司有硬件设备,设备按照每分钟,每十分钟,每小时上传数据,存入数据库。而这些数据会经过sql查询,统计返回展示到前端。但时间积累后现在数据达到了百万级数据&#xff0c…

Qt使用workflow

Qt工程设置 QMAKE_CFLAGS_DEBUG -MTd QMAKE_CXXFLAGS_DEBUG -MTd上述内容必须设置,否则会报错:error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MTd_StaticDebug”不匹配值“MDd_DynamicDebug。 libworkflow.pri的文件内容如下: …

算法第十五期——动态规划(DP)之各种背包问题

目录 0、背包问题分类 1、 0/1背包简化版 【代码】 2、0/ 1背包的方案数 【思路】 【做法】 【代码】 空间优化1:交替滚动 空间优化2:自我滚动 3、完全背包 【思路】 【代码】 4、分组背包 核心代码 5、多重背包 多重背包解题思路1:转化…

MySQL8 创建用户,设置修改密码,授权

MySQL8 创建用户,设置修改密码,授权 MySQL5.7可以 (创建用户,设置密码,授权) 一步到位 👇 GRANT ALL PRIVILEGES ON *.* TO 用户名% IDENTIFIED BY 密码 WITH GRANT OPTION👆这样的语句在MySQL8.0中行不通, 必须 创设和授权 分步执行👇 CR…

如何动态生成列字段?请看向这里哟

🍃 场景前言 🐠一般而言,某个简单查询接口涉及到得表结构不超过三个。如果不是单表操作的话,多个表中间用到联合查询的SQL也可以解决相关问题。但是,事与愿违的是我们的业务是跟着场景走的,并不是所有的业务…

python+django宠物销售商城网站vue

宠物销售商城,在宠物销售商城可以查看首页、商品信息、商品资讯、个人中心、后台管理、购物车、在线客服等内容 用户登录、用户注册,通过注册获取用户名、密码、姓名、联系电话等信息进行注册、登录 商品信息,在商品信息页面可以查看商品名称、商品分类、图片、品牌、规格、价…

java易错题锦集二

源码 补码 int i 5; int j 10; System.out.println(i ~j);有个公式,-n~n1 另一种解题思路 ~代表对n按位取反 10的源码是: 00000000 00000000 00000000 1010 所以对10按位取反就是 11111111 11111111 11111111 0101 由于计算机中-1表示为 11111111 11111111 111…

[docker]笔记-镜像 管理

1、镜像管理 docker search xxxx ①查找镜像,例如查找httpd [rootlocalhost ~]# docker search httpd ②下载镜像 docker pull xxxx [rootlocalhost ~]# docker pull httpd ③列出本地镜像 docker images [rootlocalhost ~]# docker images ④删除镜像 docker rmi xxx…

Linux(十)线程安全 上

目录 一、概念 二、互斥锁实现互斥 三、条件变量实现同步 银行家算法 生产者与消费者模型 一、概念 概念:在多线程程序中,如果涉及到了对共享资源的操作,则有可能会导致数据二义性,而线程安全就指的是,就算对共享…

【MFC】菜单与状态栏(15)

菜单 一般菜单的使用步骤: 1.编辑菜单资源,设置菜单属性(包括菜单名和ID); 2.用ClassWizard自动映射菜单消息和成员函数; 3.手工编辑成员函数,加入菜单消息处理代码。 单文档窗口可以设置默…