软件所提出基于软硬件结合的数据流分析芯片加速方案
文章来源: | 发布时间:2026-01-27 | 【打印】 【关闭】
中国科学院软件研究所可信计算与信息保障实验室研究团队在数据流分析领域取得进展,提出了一种基于软硬件结合设计的高性能多标签数据流分析方案,为解决实际应用中数据流分析性能瓶颈提供了新思路。相关论文MULCOTAINT: Towards Efficient Multi-tag Dynamic Taint Analysis via Hardware/Software Co-design被网络安全领域顶级会议USENIX Security 2026录用。论文第一作者为博士生齐兵、正高级工程师杨轶,通讯作者为苏璞睿研究员。该成果获得国家自然科学基金重点项目“大规模缺陷库的自动构建与应用”等科研任务支持。
数据流分析是软件分析的重要基础性方法之一,广泛应用于软件安全性分析、漏洞挖掘等相关研究。当前主流的数据流分析方案多为单标签分析,只能判断数据是否来源于被标记的数据源,而无法进一步区分数据具体来源于标记数据中的哪一个字节。在漏洞分析、修复与利用等需要细粒度追踪的场景中,必须明确程序中每个受影响字节的具体来源,这就需要多标签分析能力。然而,实现多标签分析需重新设计标签的记录、管理与计算机制,其复杂度远高于单标签方案,长期以来一直缺乏能适用于大规模软件系统的高效解决方案。
针对这一挑战,团队提出了软硬件系统结合的多标签(Multi-tag)分析方案MulcoTaint。该方案基于CPU流水线和协处理器架构,将程序执行逻辑和数据流分析逻辑分离,并通过将数据流标签计算向量化,利用专用协处理器进行硬件加速。同时,团队在软件层面设计了配套机制,使其能够支持二进制/源码的字节级多标签数据流分析。

MulcoTaint分析系统架构
研究团队面向RISC-V指令集,基于开源RISC-V处理器与SoC生成框架Rocket Chip,在FPGA上完成MulcoTaint方案并进行了实验验证。结果显示,MulcoTaint的平均性能开销仅为TaintRabbit的1/136,是PANDA系统平均性能开销的1/1117,显著提升了数据流分析能力和效率。

MulcoTaint分析性能效果
可信计算与信息保障实验室苏璞睿研究团队长期致力于数据流分析方法研究。此前,团队在网络安全领域顶级会议IEEE S&P 2024上提出AirTaint方案,实现了污点传播计算从“指令级”到“基本块级”的提升,从软件层面大幅降低了数据流分析过程的插桩数量和计算开销。MulcoTaint方案是团队在基于硬件的数据流分析方案方面的探索,未来有望引入到处理器架构设计中,为新型程序分析能力和安全机制设计提供基础性支撑。