Reverse Engineering

11 篇内容

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

工程实践Ken Shirriff

Energizing a vacuum-tube flip-flop module from a 1948 IBM system

文章对IBM 604(1948)电子计算穿孔机中的TR-3触发(触发器)模块进行了逆向工程和实际演示。作者从真空管三极管的工作原理讲起,详细剖析了反相器电路和交叉耦合反相器构成的触发器,解释了电平移位和脉冲输入的实现,并展示了模块如何通过两个稳定状态存储一位信息。文中还结合历史脉络,说明该触发器如何用于十进制计数器(BCD编码)并为早期计算机的状态机提供基础。文章边界在于它聚焦于历史硬件,其高电压设计和模拟敏感性与现代数字电路有较大差异。

本文通过实际逆向工程和上电演示,阐释了真空管触发器的电路原理与历史意义,为理解早期计算机设计提供了第一手资料。适合对计算机历史、电子学基础或反向工程感兴趣的读者,其中的电平移位、交叉耦合和稳定条件分析可迁移到对时序电路基本原理的教学中。

技术文章知乎 - 孔某人

Claude模型thinking CoT是如何加密的

文章分析了Claude模型服务端返回的thinking signature的加密机制与绕过方法。作者先通过protobuf结构逆向出签名格式,推断其采用BLAKE2b哈希、随机nonce、AEAD加密与信封加密(随机DEK经KEK加密)保护思考内容,认为密码学上无明显漏洞,量子计算亦难破解。随后提出攻击面:构造包含thinking块与tool call的历史消息,注入工具结果后追问,可引导模型复述思考过程,虽不能精确还原原文,但能提取关键内容。测试发现fable模型拒绝复述,opus等可接受,反映安全护栏差异,并提及OpenAI的事后审查更严格。文章属科普性技术分析,基于真实API格式,非完整工业方案,但揭示了模型思维链保护的实际应用与潜在弱点。

推荐收录,因其从protobuf逆向到攻击面分析,提供了对主流模型思维链保护机制的第一手技术剖析。对AI安全研究者、逆向工程和LLM应用开发者而言,文中信封加密在服务端的落地方式与利用历史消息绕过防护的思路具有可迁移的参考价值。尽管是科普,但分析基于真实API结构,证据具体,有助于理解模型输出控制的工程边界。

个人心得Simon Willison

Reverse-engineering is cheap now

文章探讨了编程智能体(coding agents)如何大幅降低逆向工程和家庭设备自动化的成本与心理门槛。作者指出,过去由于时间投入和长期维护的不确定性,逆向工程类任务的ROI往往不值得投入;而经验丰富的开发者更清楚“未文档化、不稳定的API”可能带来的维护负担。随着AI编程工具的普及,编写代码、尝试失败乃至抛弃代码的成本都显著下降,从而改变了传统的决策方程。这种变化不仅降低了技术门槛,也减轻了“维护焦虑”,使得逆向工程从“值得吗”转向“为什么不试试”。文章基于个人观察和行业轶事,未提供量化数据或技术实现细节,但敏锐捕捉到AI工具对开发者心理和项目选择模式的潜在影响。

这是一篇简短但富有洞察力的个人反思,揭示了AI编程工具如何重新定义逆向工程等探索性任务的收益模型。适合关注AI对软件工程实践影响的开发者、技术管理者及研究者阅读。其核心观点——代码成本下降会改变技术决策的ROI计算——可迁移至其他以往因成本过高而被忽视的自动化或实验场景,启发读者在AI时代重新评估开发投入。

科研议题Elastic Security Labs

TELEPUZ: a modular MaaS malware spreading via CLICKFIX-VIDAR chains

Elastic Security Labs 详细剖析了新型模块化恶意软件即服务(MaaS)TELEPUZ,该木马通过 CLICKFIX-VIDAR 感染链传播,具备高度的模块化和快速演进特征。文章从 ClickFix 钓鱼入口、VIDAR 投递、stager 安装到主载荷执行,完整还原了感染链,并深入分析了其代码混淆技术(垃圾指令、API 哈希、RC4 字符串加密、间接系统调用)、持久化机制、UAC 绕过、C2 通信协议(WebSocket over TLS)以及 36 条命令集。通过 Telegram、Steam、DNS、Polygon 区块链等四种回退方式获取 C2,展示了运营基础设施的弹性。文章还提供了详尽的 IOC、YARA 规则和 MITRE ATT&CK 映射,确认该恶意软件仍处于活跃开发阶段,C2 域名有限但样本构建量巨大。边界上,分析基于特定样本,部分功能(如 shellcode 注入)尚未实现,且主要针对 Windows 环境。

文章从感染链、代码混淆、持久化、命令控制到 IOC 进行了系统性的逆向分析,技术细节丰富,并直接给出检测规则与战术映射,对安全分析师、威胁情报团队及恶意软件研究者具有直接工程价值。读者可迁移学习 C2 协议解析、混淆还原技巧及 MaaS 威胁建模方法,适合用于构建内部检测能力或进行学术引用。

科研议题Elastic Security Labs

ClickFix to Cash-Out: Anatomy of a Mexican Banking-Fraud Toolkit

这篇文章解析了一个面向墨西哥银行体系的诈骗团伙 REF6045,以及其核心工具链 SCMBANKER 的完整运作方式。作者从 ClickFix 假验证码钓鱼切入,展示了受害者如何被诱导执行单条命令,随后通过 PowerShell、BITS、注册表 Run 键和启动项完成多阶段落地与持久化。文章进一步拆解了该工具包的能力:监控银行会话、抓取屏幕、弹出伪造锁屏实施 vishing、按 IP 定向重定向浏览器,以及替换 CLABE 和银行卡号剪贴板内容。对方还按需部署商业远控 Remote Utilities,形成“监测—诱导—接管”的人工操控流程。文中同时指出开放目录、泄露 web-root、未鉴权编辑器和明显的 AI 生成痕迹,为威胁狩猎、样本分析与防护规则设计提供了清晰边界。

推荐收录,因为文章不仅还原了钓鱼投递、持久化、剪贴板劫持和远控接管的完整链路,还给出了可直接用于检测的 IOC、ATT&CK 映射和防护规则。适合恶意代码分析、威胁情报和反欺诈团队参考;其可迁移价值在于展示了如何从基础设施失误与样本行为双线溯源同类攻击。

技术文章Ken Shirriff

Examining circuit boards from the Space Shuttle's I/O Processor

这篇文章以作者实物拆解的两块 Space Shuttle I/O Processor 电路页为线索,系统梳理了航天飞机计算机的 I/O 架构。作者先说明 IOP 并非普通外设,而是连接 CPU 与 24 条数据总线的独立可编程处理器,采用 25 个虚拟处理器的 barrel processor 设计,由 BCE 和 MSC 两套完全不同的指令集分工完成网络搬运与调度。随后文章重点分析了 MIA 网络接口页的模拟前端、变压器隔离、Manchester 编码/解码、串并转换与校验逻辑,以及 PROM 页如何用熔丝 ROM 存放 72 位微指令并驱动物理处理器。文中还比较了 IBM 4 Pi 标准页与 IOP 专用页的尺寸、连接器、散热和封装密度差异,解释了为何航天级板卡会大量使用 hybrid module、flat-pack 与高可靠器件。文章结论指出,后来 AP-101S 将 CPU 与 IOP 合并以提升性能并减重,但原始 IOP 的架构与物理实现仍是理解早期航天计算机的重要样本;部分芯片编号和某些旁证板卡归属仍带有推断成分。

收录依据很明确:文章基于实物电路板、部件编号和官方文档,完整解释了航天飞机 IOP 的架构、总线协议、微码与板级实现,不是泛泛的历史回顾。适合做硬件逆向、古典计算机体系结构和高可靠系统设计的参考,尤其能迁移到“从板级结构反推系统工作方式”的分析方法。

技术文章Fzakaria Blog

Hijacking ELF entry points for NixOS compatibility or WTF is wrap-buddy?

这篇文章深入讲解了 wrap-buddy 如何通过篡改 ELF 入口点、动态段和辅助向量,绕过 NixOS 上预编译二进制因动态链接器路径不兼容而无法运行的问题。作者先用一个最小 C 程序演示 patchelf/autoPatchelf 在特殊 ELF 布局下的失败场景,再逐步拆解 wrap-buddy 的做法:保存原始入口指令、清空 PT_INTERP、注入自定义 RUNPATH,并在内存中恢复原样后把控制权交给 NixOS 的动态加载器。文章的核心结论是:这种方案并不是通用替代品,而是面向“常规修补失效”的病理场景,为旧二进制兼容性提供了一条极低层但有效的路径。

推荐收录,因为它不是简单介绍 Nix 工具链,而是把 ELF 启动、动态链接与启动劫持的机制讲得非常透彻,适合长期作为系统底层兼容性问题的参考。读者可以迁移的不只是某个工具的用法,更是“当静态修补失败时,如何从进程启动链路下手”的分析方法。

科研议题Microsoft Research Blog

Ire identifies another LOTUSLITE specimen

这篇文章介绍了 Microsoft Research 的 Project Ire 如何在没有人工提示、没有上下文元数据的情况下,对一个 Windows DLL 恶意样本进行静态逆向分析,并给出“malicious”判定。作者将 Ire 的函数级行为报告与 Acronis 对 LOTUSLITE 家族的分析进行对照,说明该代理能够通过安装逻辑、C2 协议、持久化方式和混淆痕迹识别出同一恶意家族,即使样本不包含现成 IOC。文章同时强调了 LLM 驱动分析的风险:表面字符串可能误导判断,因此需要把可审计的行为证据与谨慎的归因区分开来。

推荐收录,因为它展示了一个具有研究意义的安全分析范式:用 LLM 代理结合反编译工具进行无人工交互的恶意软件分类,并用实际样本验证其效果。对于研究自动化逆向、恶意代码分析、以及 LLM 在安全场景中的可靠性边界的读者,这篇文章有明确的参考价值。

技术文章知乎 - 孔某人

主流Agent Harness实现对比——Context压缩

这篇文章系统对比了主流 Agent Harness 在 Context 压缩上的实现差异,覆盖 Claude Code、Codex/OpenAI Agents SDK、OpenCode、Pi、Kimi Code 以及 Hermes Agent 等多个项目。作者不仅梳理了共同的压缩触发思路、token 估算方式和兜底策略,还通过版本级逆向与 prompt 还原,分析了各家在本地压缩、服务端压缩、局部压缩、tool result 清理、增量摘要更新等方面的具体设计。文章的核心结论是:当前多数实现仍处在较早期阶段,普遍依赖 LLM 生成历史摘要来替换上下文,但不同框架在压缩触发、摘要格式、分支处理和服务端协同上的工程成熟度差异明显。

推荐收录,因为它不是泛泛介绍“上下文压缩”的概念,而是对真实 Agent Harness 的实现细节做了横向拆解,能直接帮助读者理解不同框架如何管理长上下文。对于做 AI Agent、编排框架、上下文管理或提示词工程的读者,这篇文章有很强的可迁移价值,尤其适合参考其压缩触发、摘要模板和分支处理思路。