Skip to main content
QUICK REVIEW

[论文解读] Designing Robust API Monitoring Solutions.

Simone Nicchi, Matteo Mariani|arXiv (Cornell University)|May 1, 2020
Advanced Malware Detection Techniques参考文献 29被引用 7
一句话总结

本文提出 SNIPER,一种强大且开源的 API 监控系统,旨在以高精度、高可靠性和高透明度追踪用户空间库调用和系统调用。该系统通过两种实现变体——硬件辅助虚拟化与动态二进制翻译——解决了 API 监控中的关键挑战,实现了首个通用的用户空间追踪工具。

ABSTRACT

Tracing the sequence of library and system calls that a program makes is very helpful in the characterization of its interactions with the surrounding environment and ultimately of its semantics. Due to entanglements of real-world software stacks, accomplishing this task can be surprisingly challenging as we take accuracy, reliability, and transparency into the equation. To manage these dimensions effectively, we identify six challenges that API monitoring solutions should overcome and outline actionable design points for them, reporting insights from our experience in building API tracers for software security research. We detail two implementation variants, based on hardware-assisted virtualization (realizing the first general-purpose user-space tracer of this kind) and on dynamic binary translation, that achieve API monitoring robustly. We share our SNIPER system as open source.

研究动机与目标

  • 解决复杂软件栈中实现准确、可靠且透明的 API 监控所面临的挑战。
  • 克服现实软件环境中导致有效系统调用追踪受阻的复杂依赖关系。
  • 设计一种支持硬件辅助虚拟化与动态二进制翻译的通用用户空间 API 追踪器。
  • 为软件安全研究与系统分析提供一个生产就绪的开源解决方案。

提出的方法

  • 利用硬件辅助虚拟化构建高保真、低开销的用户空间追踪器。
  • 实现基于动态二进制翻译的变体,以确保在多种执行环境中的兼容性。
  • 设计系统以实现对库调用与系统调用的最小运行时干扰和高透明度。
  • 将两种方法整合到统一框架中,以平衡性能、可移植性与准确性。
  • 通过仔细处理控制流与系统调用拦截,确保正确性与鲁棒性。
  • 将系统以 SNIPER 的形式对外暴露,作为可复现且可扩展的软件分析工具。

实验结果

研究问题

  • RQ1在真实世界软件栈中实现准确、可靠且透明的 API 监控面临哪些关键挑战?
  • RQ2如何有效利用硬件辅助虚拟化来实现通用用户空间 API 追踪器?
  • RQ3动态二进制翻译在多大程度上可作为跨多样化执行环境的稳健 API 监控可行替代方案?
  • RQ4哪些设计原则能够支持一种统一的、生产就绪的 API 监控系统,使其同时支持两种追踪技术?

主要发现

  • 作者识别出六项核心挑战,这些挑战影响了复杂软件环境中 API 监控的准确性、可靠性和透明度。
  • 基于硬件辅助虚拟化的变体实现了首个同类通用用户空间 API 追踪器,具备高保真度与低开销。
  • 基于动态二进制翻译的变体提供了一种可移植的替代方案,可在多种执行平台中保持稳健性。
  • SNIPER 系统证明,结合两种方法可实现全面、准确且透明的系统调用追踪。
  • SNIPER 的开源发布为软件安全与系统分析领域的可复现研究和可扩展性提供了支持。
  • 所提出的设计原则与实现洞察可直接应用于系统级监控与运行时分析的未来工作。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。