电信网络违法犯罪是当前社会面临的一个严重问题,犯罪团伙为了方便传播、使用,为了隐匿身份信息,通常将涉诈网站被封装在诈骗APP中,常见的诈骗APP类型有通过开发与原装APP相似外观,引诱受害人下载安装,收集受害人用户名、账号及密码后盗窃受害人银行账户或第三方支付财产的”仿冒正规“类APP;有让受害人提供个人信息,签订不对等借贷合约后对受害人进行敲诈勒索的“套路贷”类APP;有直接获取受害人照片、短信通讯录等隐私信息,向被害人亲友同事传播为由进行诈骗的”杀猪盘“类;有进行所谓的在线直播、线上下注等违法活动,卷走受害人财产的“网络赌博”类APP。
电信诈骗中形形色色的APP层出不穷,这些APP可能极具隐蔽性,让公安机关在打击时难以找到后台入口及对应的IP地址,犯罪分子为了逃避打击,往往会在短时间频繁的更换不同后台,公安机关所掌握的线索难以串并联。也因取证手段的匮乏,一些被销毁的证据也很难再复原。打击网络违法犯罪的路程困难重重,针对这类型的案件我们可以从哪些方面着手呢?
1.了解APP原理
2.采用静态分析和的动态分析开展取证分析工作
3.了解常见的APK分析工具
4.APK分析工具对比分析
1
了解APP
APP即Application,指的是应用程序,可以是安卓(Android)或苹果(iOS)系统上的应用程序。这个术语通常用于描述用户所安装和使用的应用程序,无论是从应用商店下载还是通过其他方式获取。
在案件中我们一般分析的是APK文件,APK(Android application package),Android应用程序包,是一个标准的 ZIP 文件,即 1.apk == 1.zip。我们想要分析这个压缩包,首先就得把他解压打开,打开之后一般可以得到下面这些文件。
1
APK的组成
由上图可以看到APK 的组成通常包括 Dex 文件,资源,资源表和签名摘要信息这四部分组成,这四部分是不可或缺的,不然任何一个 OS都无法正常的运行你带 Activity 的 Android 应用。
1)我们可以把Androidmanifest.xml文件理解成一个货物清单,这个清单的作用就是告诉我们当前应用中包含了哪些文件、哪些资源、有需要哪些权限等。
2)META-INF文件夹:用于保存 App 的签名和校验信息,以保证程序的完整性。当生成 APK 包时,系统会对包中的所有内容做一次校验,然后将结果保存在这里。而手机在安装这一 App 时还会对内容再做一次校验,并和 META-INF 中的值进行比较,以避免 APK 被恶意篡改。
3)res文件夹:存放我们各种资源文件的地方,有图片,字符串,动画,音频等,还有各种形式的XML文件
4)dex文件:Android系统的可执行文件,它是使用Java编码的包含应用程序的全部操作指令以及运行时数据
2
APK打包与解包
APK打包是指将一个Android应用程序打包成一个APK文件,以便进行安装和分发。APK解包则是将一个APK文件解包,获取其中的资源和代码。
在APK打包和解包中,常用的工具有apktool和jadx。apktool是一个开源的反编译工具,可以将APK文件反编译为Smali代码,并允许用户进行修改和重新打包,用于快速定位和修复APP中的安全漏洞。jadx则是一个开源的Java反编译器,可以反编译APK文件并将其转换为可读性更高的Java代码。
举例来说,在APK打包过程中,我们可以使用Android Studio自带的打包工具Gradle,或使用第三方打包工具,如MiTweaks、APK Easy Tool等。这些工具可以将源代码中的资源、图像、布局等文件打包到APK文件中,方便用户进行安装和使用。
而在APK解包过程中,我们也可以使用apktool或jadx等工具对APK文件进行分析和解包。例如,在使用apktool进行APK解包时,我们可以通过命令行输入"apktool d [filename].apk",将APK文件解包到指定目录中,之后进行分析和修改。
APK打包和解包是分析和修改APP的基础,它们提供了方便快捷的操作方式,帮助开发人员更好地定位和修复APP中的安全漏洞。当然,在打击电信网络违法犯罪中,APK打包与解包技术也是非常重要的一环。
3
APK有哪些开发手段?
真实案件中,APP的常见开发手段有以下几种:
原生APP开发:使用针对特定平台的编程语言和工具,如iOS平台的Objective-C或Swift、安卓平台的Java或Kotlin等,来进行原生应用程序的开发。
混合式APP开发:这种方式结合了原生APP和Web App的优点,网页开发大部分使用,让app表面上看着是一个安卓应用,这个应用中不放任何组件,只放一个浏览器,这个浏览器与我们平时所理解的并不相同,把地址栏去掉了就只剩下浏览网页的地方,那浏览器里面就会嵌一个网页,就说明他把网页做成了一个app这样的界面,当我们遇到此类app时,我们需要寻找的是嵌入进这个app的网页是什么网页,而不是去寻找APK中有什么SDK。
Web App开发:响应式设计和前后端分离技术的发展,使得Web App成为一种越来越流行的开发方式,它使用Web技术来创建移动应用程序。Web App基于浏览器运行,无需下载安装,可以跨平台使用,可以节省开发成本并快速迭代。
2
取证分析:
静态分析与动态分析
1
静态分析
静态分析是指通过反编译来获取控制软件程序的源代码,从代码中分析程序的运行过程,了解模块中执行命令的一些功能;获取到软件名称、包名等基本信息;了解接入哪些SDK,这些SDK作用;了解到是使用什么语言进行编译或使用什么编译器进行编译的,了解程序是否受到加壳保护,进而开展下一步取证工作。
2
动态分析
APK动态分析是指对安卓应用程序(APK)在运行时的行为进行监控和分析,以发现其中可能存在的漏洞、恶意行为或其他安全问题。
在APK动态分析中,常见的技术包括hook技术、模拟器检测、网络通信分析等。利用这些技术,可以捕获应用程序的数据流量、函数调用情况、文件操作、系统调用等信息,以便分析应用程序的行为是否正常、是否存在安全风险等。
在打击电信网络犯罪中,动态分析也发挥着重要作用。例如,我们可以使用Burp Suite这样的动态分析工具,对APP进行测试,模拟真实用户操作,从而发现APP的安全漏洞和风险。通过模拟用户操作并记录HTTP/HTTPS请求和响应,Burp Suite可以帮助检测远程代码执行、SQL注入等漏洞,提高打击电信网络犯罪的效率。
APK静态分析和动态分析在打击电信网络犯罪中扮演着重要角色。现实生活中已经出现了此类取证分析工具,这些工具的使用为打击电信网络违法犯罪提供了有力支持,我们将在后面的内容中简单分析一些不同工具的使用场景。
3
常见的APK分析工具
无糖信息-大狗(涉诈网站溯源打击平台):https://dagou.nosugar.tech/
无糖信息-手机应用分析系统:http://browser.nosugar.tech
奇安信-情报沙箱:https://sandbox.ti.qianxin.com/sandbox/page
360-沙箱云:
https://ata.360.net/
VirusTotal:https://www.virustotal.com/gui/home/upload
微步云沙箱:https://www.threatbook.net/next/sandbox
摸瓜:https://mogua.co/
4
常见的APK分析工具
性能对比分析
本文使用的截图均位各家分析工具的免费版,一些功能的分析仅供参考,实际案件还是得自身实际使用后进行评估,不同的APK分析工具都具有自己的特色,我们上传同一个APK进行分析,具体通过下面的内容来看看吧。
无糖-大狗(涉诈线索溯源打击平台)
我们可以在无糖浏览器平台使用账号免费创建一个账号进行使用,上传样本后,后台分析得到下方的APK详情报告,报告内容如下:
无糖-手机应用分析系统
在无糖浏览器中直接使用手机应用分析系统上传样本APK,得到如下分析报告:
奇安信-情报沙箱
通过情报沙箱网站直接免费注册账号后,上传样本进行分析得到如下报告:
360-沙箱云
反编译APK获得基础信息:文件名、包名、哈希值、应用版本号、源码压缩文件列表等;
对APK风险等级进行了划分,未发现该样本APK中的威胁情报;
查看威胁指标与文件内容需要升级整体服务。
VirusTotal
微步
摸瓜
<左右滑动查看详情>
工具名称 |
APK反编译 |
威胁情报检测 |
网络请求提取 |
恶意代码分析 |
串并联线索 |
大狗 |
支持 |
匹配已知样本 |
提取网站请求与响应数据 |
支持 |
以线索图谱展示 ,支持线索扩线和挖掘 |
手机应用分析系统 |
支持 |
不支持 |
不支持 |
不支持 |
不支持 |
奇安信-情报沙箱 |
支持 |
威胁情报、行为异常 |
提取DNS、会话信息、HTTP |
支持 |
不支持 |
360-沙箱云 |
支持 |
威胁指标 |
不支持 |
支持 |
不支持 |
Virustotal |
支持 |
安全分析 |
扫描网站及IP地址 |
支持 |
不支持 |
微步云沙箱 |
支持 |
行为检测 |
样本APK不支持动态分析 |
支持 |
不支持 |
摸瓜 |
支持 |
不支持 |
不支持 |
不支持 |
不支持 |
在与一些用户交流的时候,也遇到过用户咨询如果APP关闭了,还可以去静态分析和动态分析嘛?当然是可以的,可以抓包、反编译获取APK的(历史)服务器和签名信息等,用来串并案、扩线。虽然APP关闭了,但是嵌在这个APP里面的域名网址还是有的,我们通过动态模拟其实还是能够获取到,获取到之后我们可以通过一些技术手段来进一步处理,比如他这个服务器还没有关闭,我们可以通过DNS反查,查域名历史解析的IP,看看这个IP是否存在,因为现在很多涉网犯罪,他们的域名因为成本很低,会经常换,但是实际上他的服务器可能没有换,那我们找到他历史的IP之后,找到服务器,再去查服务器关联的新的域名,这也是有可能找到一些线索的。
5
往期推荐
无糖浏览器-你身边的办案助手