Quarkslab Blog

2 篇内容

工程实践Quarkslab Blog

From P-Code to GNN: extract binary code semantics

文章介绍 Quarkslab 开源的 pcode_graph 库,用于将二进制代码转换为语义图,并利用图神经网络进行跨架构、跨编译器的函数相似性检测。作者首先解释为何统计特征和原始汇编不适合语义比较,然后详细展示通过 pypcode 将二进制提升为 P-Code、构建数据流图与控制流图、应用简化与分析 pass 的过程。实验基于 Cisco-Talos 数据集,采用 GINE 架构和 Supervised Contrastive Loss 训练嵌入模型,最终在 XM 等任务上取得与基准最优方法 GMN 相当的 AUC。文章也明确指出了当前方法的局限,如指令排列对控制流边的影响、大函数超时剔除以及未做充分的超参数搜索。

推荐收录,因为文章不仅开源了可复用的工具,还完整呈现了从二进制语义提取到图神经网络建模的工程链路,包含具体代码、数据预处理权衡和实验对比。适合从事二进制分析、漏洞挖掘、恶意软件检测或程序相似性研究的读者,其将 P-Code 抽象与 GNN 结合的方法可直接迁移到相关工程场景,且文中明确说明的边界和未解决问题有助于读者判断适用性。

工程实践Quarkslab Blog

Bypassing Android Hardware Attestation from the Analyst's Chair

文章系统解析了Android硬件认证机制,从Keystore、Keymaster/KeyMint、TEE/StrongBox到证书链、KeyDescription和RootOfTrust,揭示了后端验证的关键字段与信任边界。作者提出一种基于Frida的中继绕过方法:在rooted设备上拦截认证请求,将挑战转发给干净设备生成真实硬件认证链,再将其返回给目标应用,从而在不攻击密码学或硬件的情况下绕过设备完整性检查。文章还提供了可复现的代码仓库,并讨论了后端应如何通过检查attestationApplicationId和证明密钥持有来缓解此类攻击,同时指出该方法仅适用于一次性门控场景,若需持续签名则需升级为实时代理。

推荐收录,因为文章不仅深入解释了Android硬件认证的底层机制,还给出了一个可复现的工程化绕过方案,并配套完整代码仓库。它适合移动安全分析师、逆向工程师和后端安全设计者阅读,能帮助读者理解硬件信任的边界、正确实施验证逻辑,并评估现有方案的漏洞。文章同时展示了攻击与防御的双重视角,具有很高的可迁移价值。