Lazy loaded imageByteDance-AppShark静态分析工具

在前期对App进行漏洞挖掘的过程中发现,以纯人工的方式去逆向某些App并且发现其中的漏洞已经不太现实,主要有以下几点原因: • Android系统体系十分庞大,App代码量巨大,存在超大型App(抖音目前已经有150万个函数),人工分析极度不现实 • 对Android静态分析精力耗费巨大,自动化静态分析完全可以简化大量重复的工作。 Appshark 是一个针对安卓的静态分析工具,它的设计目标是针对超大型App的分析(抖音目前已经有150万个函数). Appshark支持众多特性: • 基于json的自定义扫描规则,发现自己关心的安全漏洞以及隐私合规问题 • 灵活配置,可以在准确率以及扫描时间空间之间寻求平衡 • 支持自定义扩展规则,根据自己的业务需要,进行定制分析

🗒️Android环境下Seccomp对系统调用的监控

一切都因WMCTF2023一道Android 游戏题BabyAnti-2而起,预期解为拦截**mincore**调用(**int mincore(void *start, size_t length, unsigned char *vec);**监测指定大小的页面是否处于物理内存中。一般用于内存扫描的检查,一旦扫描行为发生,有些并不在物理内存的页面被调入。vec 是一个字节数组,用于存储结果。每个字节对应 addr 和 length 指定的内存区域中的一个页面。如果相应的页面驻留在内存中,那么相应的字节的最低位会被设置为 1,否则会被设置为 0。),当时非预期了题目,即直接CheatEngine附加游戏题,扫描内存时游戏虽然会监测到并弹窗,但是游戏正常运行,直接能修改分数并且拿到flag。 由于题目中mincore 不止存在直接libc调用,而且存在svc指令的调用,这种svc指令相当于是直接的系统调用,不能被一般的钩子挂住,从而无法监视和修改调用参数返回值。而且题目设计使用申请的内存空间修改为可执行后放置svc指令,一直循环监测。除此之外,题目还是flutter写的,逆向逻辑难上加难。经过大量逆向和调试工作后,利用frida的内存搜索功能匹配svc指令,最终能够拦截并且不被检测到,但是鉴于太复杂,想着有没有什么通用办法,不需要逆程序逻辑就直接拦截svc调用的方法。 于是有了这篇文章,文章总结了各位大佬提出的三种方案(ptrace-seccomp,frida-seccomp以及sigaction-seccomp)并进行了测试。

🗒️Android-Flutter逆向

因为WMCTF2023的一道用Flutter写的Android游戏题而引出这篇文章,刚好一直想研究一下Flutter,这次趁这个机会研究一下,并且介绍一种基于Patch Flutter动态链接库实现辅助解析Flutter逆向工程符号的方法。这个方法理论上支持任意Flutter版本,而且具有高度定制化的特点,缺点是需要根据特定的版本重新编译,并且需要替换动态链接库,存在被检测到的可能。

Lazy loaded imageAndroid反序列化漏洞-Bundle风水

因为去年的某厂商利用其主流APP中的漏洞对Android设备进行大面积的攻击使用了这一漏洞,对这个问题比较感兴趣,阅读一些相关文章后决定结合理解进行整理再做记录。文章介绍了Parcel不匹配问题和Bundle风水的利用细节,并结合CVE-2017-13288和CVE-2023-20963进行分析

🗒️LaunchAnyWhere漏洞分析

该文介绍了Android系统中的LaunchAnyWhere漏洞,该漏洞可以绕过Activity组件的导出属性,直接启动任意组件。文章详细介绍了漏洞的原理、利用方法以及修复措施。LaunchAnyWhere 顾名思义就是能够掉起任意未导出的Activity,突破进程间组件访问隔离的限制。这个漏洞影响2.3 ~ 4.3的安卓系统。以下攻击环境为Android4.2 (API 17)
LLeaves
LLeaves
Happy Hacking
最新发布
Android grantUriPermission与StartAnyWhere
2025-2-21
腾讯2023SecAndroid初赛题目
2025-2-19
基于eBPF实现一个简单的隐蔽脱壳工具-eBPFDexDumper
2025-1-9
LakeCTF At your Service 题解
2024-12-13
PendingIntent-security
2024-12-1
eBPF实践之修改bpf_probe_write_user以对抗某加固Frida检测
2024-11-10
公告