Zipr is a tool for static binary rewriting, first published in 2016. Zipr was engineered to support arbitrary program modification with an emphasis on low overhead, robustness, and flexibility to perform security enhancements and instrumentation. Originally targeted to Linux x86-32 binaries, Zipr now supports 32- and 64-bit binaries for X86, ARM, and MIPS architectures, as well as preliminary support for Windows programs. These features have helped Zipr make a dramatic impact on research. It was first used in the DARPA Cyber Grand Challenge to take second place overall, with the best security score of any participant, Zipr has now been used in a variety of research areas by both the original authors as well as third parties. Zipr has also led to publications in artificial diversity, program instrumentation, program repair, fuzzing, autonomous vehicle security, research computing security, as well as directly contributing to two student dissertations. The open-source repository has accepted accepted patches from several external authors, demonstrating the impact of Zipr beyond the original authors.
翻译:Zipr是一种用于静态二进制重写的工具,于2016年首次发布。Zipr旨在支持任意程序修改,重点强调低开销、稳健性和灵活性,以实现安全增强和程序插桩。最初针对Linux x86-32二进制文件,Zipr现已支持X86、ARM和MIPS架构的32位和64位二进制文件,并对Windows程序提供了初步支持。这些特性使Zipr在研究领域产生了显著影响。它首次应用于DARPA网络挑战赛,获得整体第二名,并在所有参赛者中取得了最佳安全分数。目前,Zipr已被原始作者及第三方广泛应用于多个研究领域。Zipr还推动了人工多样性、程序插桩、程序修复、模糊测试、自动驾驶车辆安全、研究计算安全等领域的论文发表,并直接为两篇学生学位论文做出了贡献。该开源仓库已收到多位外部作者的补丁,证明了Zipr在原始作者之外的影响力。