Henny Sipma, Ricardo Baratto, Ben Karel, Michael Gordon (Aarno Labs)

When source code is unavailable, patching security vulnerabilities in binaries requires scarce reverse engineering expertise and specialized tooling. We present Dilipa, a binary micropatching system that enables users to specify patches as edits to lifted C code. Dilipa operates on an AST-based intermediate representation enriched with provenance metadata linking high-level constructs to underlying binary instructions, registers, and memory locations. A frontend compares the original and edited ASTs to extract minimal patch descriptions, and a backend applies them to the binary via direct instruction replacement or trampolines. By focusing on micropatches, small and localized modifications, our approach keeps binary changes minimal and enables post-patch validation through relational binary analysis, providing evidence that no unintended semantic changes have been introduced. We demonstrate Dilipa on three case studies involving real embedded systems, including input validation, buffer overflow, and race condition bugs.

View More Papers

Constructive Noise Defeats Adversarial Noise: Adversarial Example Detection for...

Meng Shen (Beijing Institute of Technology), Jiangyuan Bi (Beijing Institute of Technology), Hao Yu (National University of Defense Technology), Zhenming Bai (Beijing Institute of Technology), Wei Wang (Xi'an Jiaotong University), Liehuang Zhu (Beijing Institute of Technology)

Read More

NOD: Uncovering intense attackers’ behavior through Nested Outlier Detection...

Ghazal Abdollahi (University of Utah), Hamid Asadi (University of Utah), Robert Ricci (University of Utah)

Read More

Work-in-progress: RegTrack: Uncovering Global Disparities in Third-party Advertising and...

Tanya Prasad (University of British Columbia), Rut Vora (University of British Columbia), Soo Yee Lim (University of British Columbia), Nguyen Phong Hoang (University of British Columbia), Thomas Pasquier (University of British Columbia)

Read More