zl程序教程

您现在的位置是:首页 >  APP

当前栏目

如何使用AndroidQF快速从Android设备中获取安全取证信息

2023-04-18 16:20:33 时间

关于AndroidQF

AndroidQF,全称为Android快速取证(Android Quick Forensics)工具,这是一款便携式工具,可以帮助广大研究人员快速从目标Android设备中获取相关的信息安全取证数据。该工具基于Snoopdroid项目实现其功能,利用的是官方ADB源码,并且使用了Go语言进行重构。

AndroidQF旨在给广大研究人员提供一个简单且可移植的跨平台实用程序,以快速从Android设备获取信息安全取证数据。它的功能有些类似于mvt-android,但是跟MVT相比,AndroidQF的优势就在于它可以让很多不懂技术的用户也能够轻松地使用。

工具下载

广大研究人员可以直接访问该项目的【Releases页面】下载获取最新版本的AndroidQF。除此之外,我们也可以使用下列命令将该项目源码克隆至本地,并自行构建源码:

git clone https://github.com/botherder/androidqf.git

工具构建

AndroidQF提供了针对Linux、Windows和macOS的可执行程序,如果你想自行下载源码构建,则需要在本地环境中安装并配置好Go v1.15+,然后根据平台选择运行下列代码:

make linux

make darwin

make windows

上述命令运行之后,我们将可以在build/目录下查看到生成的代码。

工具使用

在启动AndroidQF之前, 我们需要将目标Android设备通过USB线连接到我们的主机上,别忘了开启USB调试功能。

启动USB调试之后,我们就可以继续启动AndroidQF了。该工具首先会尝试通过USB桥接到目标设备,此时Android设备将会提示我们手动输入设备主机的密钥。确保授权成功之后,这里最好是永久授权,而不是只授权一次,这样就不会老是弹窗了。

现在,AndroidQF应该已经可以正常运行了,而且会在项目根目录下创建一个专门用来存储取证数据的文件夹。在执行过程中的某个时刻,AndroidQF会提示用户进行一些选择操作,而这些提示一定需要用户选择之后工具才会继续进行取证收集。

该工具支持收集以下信息:

· 目标设备上已安装的所有代码包列表,以及相关的文件信息;

· (可选)拷贝所有已安装的APK文件,或没有被标记为系统APP的所有APK文件;

· “dumpsys” Shell命令的执行输出,可以提供设备相关的诊断信息;

· “getprop” Shell命令的执行输出,可以提供构建信息和配置参数;

· “ps” Shell命令的输出结果,可以提供目标设备中所有正在运行进程的列表;

· (可选)备份SMS或MMS消息;

加密&潜在威胁

在未加密的驱动器上使用AndroidQF进行数据收集,可能会使我们自己的数据陷入安全风险之后,因为其中涉及到很多敏感数据操作。理想情况下,我们应该对驱动器进行完全加密。除此之外,我们还可以考虑让AndroidQF在一个VeraCrypt容器中运行。

或者,AndroidQF允许设置用户进行公钥加密,如果在AndroidQF根目录下存储一个名为key.txt的文件,那么AndroidQF则会自动尝试压缩和加密每次采集到的取证数据,并删除原始未加密的数据副本。

获取到加密的取证文件之后,我们可以使用下列方式进行解密:

$ age --decrypt -i ~/path/to/privatekey.txt -o <UUID>.zip <UUID>.zip.age

许可证协议

本项目的开发与发布遵循MVT v1.1开源许可证协议。

项目地址

https://github.com/botherder/androidqf

参考资料

https://github.com/botherder/snoopdroid

https://github.com/mvt-project/mvt

https://developer.android.com/studio/debug/dev-options#enable

https://www.veracrypt.fr/

https://age-encryption.org/