假冒 Skype 应用程序网络钓鱼分析

参考链接:

https://slowmist.medium.com/fake-skype-app-phishing-analysis-35c1dc8bc515

 

背景

在Web3世界中,涉及假冒应用程序的网络钓鱼事件相当频繁。慢雾安全团队此前曾发表过分析此类网络钓鱼案例的文章。由于Google Play在中国无法访问,许多用户经常直接从互联网上搜索和下载应用程序。然而,在线假冒应用程序的类型不仅限于钱包和交易所。Telegram、WhatsApp 和 Skype 等社交媒体应用程序也成为重点攻击目标。

近日,一名受害者联系了慢雾安全团队。据他描述,他的资金是在使用从互联网下载的Skype应用程序后被盗的。因此,我们根据受害者提供的假Skype钓鱼样本开始分析。

假冒 Skype 应用程序分析

首先,我们分析了假冒Skype应用程序的签名信息。一般来说,假冒应用程序的签名信息存在异常,与正版应用程序的签名信息存在较大差异。

我们注意到,这个假冒应用程序的签名信息非常简单,几乎是空的,并且所有者和发布者都被标记为“CN”。根据这些信息,我们初步推断该钓鱼制作团伙很可能是中国人。另外,从证书的生效日期2023年9月11日来看,我们推断这个应用程序并不是很久以前创建的。进一步分析发现,该假冒应用程序使用的版本是8.87.0.403,而Skype的最新版本是8.107.0.215。

通过百度搜索,我们发现了多个相同假冒Skype版本的来源,其签名信息与受害者提供的一致。

与正版 Skype 版本 8.87.403 的比较:

由于APK的证书不匹配,表明该APK文件已被篡改,很可能被注入恶意代码。因此,我们开始了APK的反编译和分析过程。

“SecShell”是使用 Bangcle(梆梆)防御工事封装 APK 所产生的特征。这是假冒应用程序常用的防御策略。网络钓鱼团伙通常会封装虚假应用程序以防止对其进行分析。

慢雾安全团队对未封装版本进行分析后发现,该假冒App主要修改了Android常用的网络框架okhttp3来执行各种恶意操作。由于okhttp3是处理Android流量请求的框架,所有流量请求都是通过okhttp3处理的。

修改后的okhttp3首先从Android手机上的各个目录中获取图像,并实时监控是否有新图像。

获得的图像最终通过网络上传到钓鱼团伙的后端接口:https: //bn-download3.com/api/index/upload。

利用微步资产映射平台,于2022年11月23日发现钓鱼后端域名bn-download3.com冒充币安交易所,直到2023年5月23日才开始冒充Skype后端域:

进一步分析发现,“bn-download[number]”是该钓鱼团伙专门用于币安钓鱼的一系列假域名,表明该团伙是专门针对Web3的惯犯。

通过分析网络流量数据包,运行假冒的Skype应用程序后,修改后的okhttp3开始请求访问文件、相册等的权限。由于社交应用程序需要传输文件和拨打电话,因此用户通常不会怀疑这些活动。假冒Skype在获得用户权限后,立即开始向后端上传图片、设备信息、用户ID、电话号码等信息:

通过流量层分析,发现测试设备有3张图片,因此流量中有3个上传请求。

假冒Skype在开始操作时,还会向接口(https://bn-download3.com/api/index/get_usdt_list2?channel=605)发送USDT列表请求。然而在分析过程中发现服务器返回的是一个空列表:

对代码的进一步调查显示,假冒 Skype 会监视传入和传出消息,以查看它们是否包含 TRX 和 ETH 类型地址格式字符串。如果检测到此类地址,它们会自动替换为网络钓鱼团伙预先设置的恶意地址:

相关恶意地址如下:

交易接收:

TJhqKzGQ3LzT9ih53JoyAvMnnH5EThWLQB

TEGtKLavujdMrYxQWAsowXqxUHMdurUHRP

以太币:

0xF90acFBe580F58f912F557B444bA1bf77053fc03

0x03d65A25Db71C228c4BD202C4d6DbF06f772323A

除了硬编码的地址之外,假冒的Skype还通过“ https://bn-download8.com/api/index/reqaddV2 ”接口动态检索恶意地址。”

目前,通过向其他账户发送地址的方式测试假冒Skype时,发现不再发生地址替换,并且钓鱼接口的​​后端已被关闭,不再返回恶意地址。

通过此分析,并通过关联钓鱼域名、后端接口路径以及日期和时间,我们将此案例与对 2022 年 11 月 8 日发布的假冒币安应用程序的分析联系起来,标题为“李逵还是李鬼?” 假币安APP钓鱼分析'。经查,这两起网络钓鱼事件系同一网络钓鱼团伙所为。

对域的反向 IP 查找发现了更多的网络钓鱼域。

恶意地址分析

慢雾安全团队识别出恶意地址后,立即将其列入黑名单。目前,上述地址的风险评分为100,风险严重。

通过MistTrack分析发现,TRON链地址(TJhqKzGQ3LzT9ih53JoyAvMnnH5EThWLQB)已收到约192,856 USDT,充值交易110笔。该地址仍有余额,最近一笔交易发生在 11 月 8 日。

进一步追踪提现记录显示,大部分资金已被分批转出。

继续MistTrack分析,ETH链地址(0xF90acFBe580F58f912F557B444bA1bf77053fc03)在10笔充值交易中收到了约7,800 USDT。资金已全部转出,最新一笔交易发生在7月11日。

进一步分析发现,大部分资金是通过BitKeep的Swap服务转出的,而交易费用则来自OKX。

概括

本文分享的这种网络钓鱼方法是通过假冒社交媒体应用程序执行的,慢雾安全团队在多个类似案例中已经披露了这一策略。假冒应用程序的常见行为包括从手机上传文件和图像、上传可能包含敏感用户信息的数据以及恶意替换网络传输内容,例如更改钱包转账的目的地地址,如本例所示。这种策略在假冒 Telegram 和假冒交易应用程序中并不罕见。

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

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

相关文章

STM32--系统滴答SysTick

一、SysTick是什么? Systick定时器是一个24bit的倒计时(向下计数)定时器,功能就是实现简单的延时。 SysTick 是一种系统定时器,通常在嵌入式系统中使用。它是 ARM Cortex-M 处理器的一个特殊定时器,用于提…

Notepad++,搜索窗口独立后,恢复

双击一下find result框,恢复到原来的模式。

Apipost IDEA插件如何使用

Apipost-Helper是由Apipost推出的IDEA插件,写完接口可以进行快速调试,且支持搜索接口、根据method跳转接口,还支持生成标准的API文档,注意:这些操作都可以在代码编辑器内独立完成,非常好用!这里…

docker/ nvidia-docker

参考资料:https://www.cnblogs.com/zzcit/p/5845717.html 本文档说明下列系统下安装nvidia-docker Ubuntu Trusty 14.04 (LTS)Ubuntu Xenial 16.04 (LTS) 安装docker 更新apt源 更新安装包信息 sudo apt-get update sudo apt-get install apt-transport-http…

Selenium+Python自动化测试环境搭建

selenium python 自动化测试 —— 环境搭建 关于 selenium Selenium 是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7、8、9)、Mozilla Firefox、Mozilla Suite等。 Selenium 框架底层使用JavaS…

独立站商品信息是怎么获取的呢

独立站商品信息的获取主要通过以下几种方式: 人工收集:卖家可以通过在各个电商平台、网站等渠道进行手动搜索和收集商品信息,包括商品名称、价格、描述、图片等,然后将其导入到自己的独立站中。使用采集工具:目前市面…

初阶JavaEE(17)Linux 基本使用和 web 程序部署

接上次博客:初阶JavaEE(16)博客系统(Markdown编辑器介绍、博客系统功能、博客系统编写:博客列表页 、博客详情页、实现登录、实现强制登录、显示用户信息、退出登录、发布博客)-CSDN博客 目录 Linux 基本…

PyCharm鼠标控制字体缩放

File->Settings->Keymap 右边搜索栏输入increase(放大),可以看到下面出现increase Font Size(放大字体尺寸),双击。 双击后出现几个选项,选择Add Mouse Shortcut,会出现一个页面给录入动作。 按住Ctrl同时鼠标向上滚动,该动…

[vim]Python编写插件学习笔记1 - 开始

0 环境 Windows 11 22H2gVim82 (D:/ProgramFiles/Vim)Python311 (D:/ProgramFiles/Python311)Vundle v0.10.2 1 Vim 支持 Python gVim82 默认配置中,使用的是 Python3.8。 但我的环境安装的是 Python3.11,且不是安装在默认路径下。虽然添加了 PATH 环…

Vite探索:构建、启程、原理、CSS艺术与插件魔法

文章目录 1 构建工具1.1 什么是构建工具1.2 主流构建工具1.3 vite相较于webpack的优势 2 vite启动项目初体验2.1 你必须要理解的vite脚手架和vite2.2 vite开箱即用2.3 vite的预加载2.4 vite配置文件处理细节2.5 vue环境变量配置 3 vite 原理篇3.1 vite是怎么让浏览器可以识别.v…

双十一“静悄悄”?VR购物拉满沉浸式购物体验

以往每年的双十一,都会因为电商购物狂欢而变得热闹非凡,而各大电商平台也会在这天推出各种促销活动。但是,近几年来,双十一正在变得“静悄悄”。一个原因是消费群体越发理性消费,更加重视商品本身的质量和体验&#xf…

java8函数式编程(Lambda表达式,Optional,Stream流)从入门到精通

文章目录 函数式编程Lambda表达式Stream流创建流中间操作终结操作注意事项 Optional创建对象消费值获取值过滤判断数据转换 方法引用高级用法基本数据类型优化并行流 函数式编程 不关心具体的对象,只关心数据参数和 具体操作 Lambda表达式 格式: () -&…

软考绩效域启迪论文

请点击↑关注、收藏,本博客免费为你获取精彩知识分享!有惊喜哟!! 论干系人绩效域 XX年X月,我作为项目经理参与了XX省人力资源与社会保障厅事业单位人员信息滚轮系统的建设项目(以下简称人社厅)…

深度学习(生成式模型)——Classifier Guidance Diffusion

文章目录 前言问题建模条件扩散模型的前向过程条件扩散模型的反向过程条件扩散模型的训练目标 前言 几乎所有的生成式模型,发展到后期都需要引入"控制"的概念,可控制的生成式模型才能更好应用于实际场景。本文将总结《Diffusion Models Beat …

【TiDB】TiDB CLuster部署

目录 0 大纲 一 集群部署工具TiUP简介 1 TiUP 简介 2 TiUP使用 3 TiUP使用举例 二 TiDB Cluster安装配置需求 1 生产环境硬件需求 2 操作系统需求 三 TIDB部署 1 软硬件需求以及前置检查​编辑 2 安装TiUP 组件 ​3 集群拓扑文件 4 执行部署命令 (1&…

[Hive] CTE 通用表达式 WITH关键字

在Hive中,CTE代表的是Common Table Expression(通用表达式),这是一种SQL语句结构,使用WITH关键字定义的子句。 文章目录 CTE递归 CTE将多个CTE(公共表表达式)写在同一个SQL文件中 CTE CTE提供…

视频号小店怎么做?运营四步骤,快来学习!

大家好,我是电商糖果 2023年因为视频号小店的爆火,想尝试开店的朋友也不少。 但是因为自己是新手小白,对做电商方面了解的也并不多,再加上它是一个才出来一年多的电商平台。对它的很多规则和玩法并不清楚。 所以,这…

MoSe2 二硒化钼 CAS:12058-18-3 瑞禧分享

MoSe2二硒化钼 纯度:4N 99.99%-99.999% 英文名称:Molybdenum Selenide CAS:12058-18-3 分子式为MoSe2.分子量为253.86 灰色粉末,具有层状性质,具有半导体性质。 技术对接:高温高压真空熔炼,处理后进行热扩散 瓶装,1kg/瓶,外加铝复合薄膜真空包装 用途:科研,…

flutter实现视频播放

使用到的库是lecle_yoyo_player 详细请查看文档 main.dart代码如下: import package:flutter/material.dart; import package:lecle_yoyo_player/lecle_yoyo_player.dart;void main() > runApp(const MyApp());class MyApp extends StatefulWidget {const MyA…

如何实现 promise.map,限制 promise 并发数

实现一个带有并发限制的Promise.map函数,可以使用async/await和Promise的特性来管理并发数。 function promiseMap(array, mapper, concurrencyLimit) {return new Promise((resolve, reject) > {const results [];let currentIndex 0;let activeCount 0;asy…