使用simhash与倒排索引的代码溯源技术
111 浏览量
更新于2024-08-29
收藏 618KB PDF 举报
"基于simhash与倒排索引的复用代码快速溯源方法" 是一种针对网络安全领域,尤其是针对复用代码分析的技术。该方法旨在高效地在大量代码中找到相似或重复使用的代码段,从而进行快速溯源。文章由乔延臣、云晓春、庹宇鹏和张永铮等人发表于2016年的《通信学报》。
该方法的核心是将代码单元(函数)作为基本分析对象,并结合了simhash算法和倒排索引技术。simhash是一种近似哈希技术,能够比较两个数据集的相似性,即使这两个数据集存在微小差异。在本文中,simhash用于计算函数的哈希值,以便快速查找相似的代码块。
首先,通过大量样本构建一个具有三级倒排索引结构的代码库。这个索引结构使得在大量代码中查找特定哈希值的代码块变得高效。当需要溯源某个待检测函数时,首先计算其内部代码块的simhash值,然后利用倒排索引来迅速定位可能相似的代码块。
接下来,通过分析代码块之间的跳转关系,可以进一步精确判断这些潜在的相似函数是否真的相同。这种方法考虑了代码执行流程中的控制流,从而提高了同源判定的准确性。最终,如果确认为相似,就可以追溯到源代码所在的原始样本。
实验结果显示,该方法在保持高准确率和召回率的同时,能够迅速在代码库中识别出由编译器插入的函数和复用的函数。这在网络安全领域特别重要,因为复用代码可能会隐藏恶意行为,如恶意代码的传播。通过对复用代码的快速溯源,可以有效地检测和防止潜在的网络安全威胁。
关键词涉及到的关键技术有网络安全、复用代码、快速溯源、同源判定以及恶意代码,表明该研究关注的是如何在大规模代码库中有效地检测和追踪复用代码,以增强网络安全防护能力。这项工作为复用代码的检测和分析提供了一种高效、精确的方法,对提升软件安全性和防止恶意代码的扩散具有重要意义。
929 浏览量
314 浏览量
1455 浏览量
1250 浏览量
1291 浏览量
3414 浏览量
947 浏览量
1429 浏览量
683 浏览量
weixin_38662213
- 粉丝: 3
- 资源: 915
最新资源
- WhereWasI:简单的地图向我显示了所有在城市中检查过的人
- jquery实现列表图片放大效果
- Algorithm-hadoop-pagerank.zip
- wioterminal-co2checker
- python-for-android:将您的Python应用程序转换为Android APK
- eng.traineddata chi_tra.traineddata chi_sim.traineddata
- jquery实现图片水平滚动效果
- YLAutolayout:UIView上的一个小型Swift扩展,它创建了一个UIView对象,该对象可用于程序化AutoLayout
- 蓝绿微立体工作总结PPT模板
- pussyTricks:React Native入门工具包,具有40多个屏幕和现代的“明暗”主题,可创建出色的跨平台移动应用程序
- git-ref:通过git describe获取当前的git参考
- Algorithm-Learn-algorithms.zip
- 基于vue+springboot+mybatis+邮箱注册验证+docker实现员工工资系统
- AC24V接口EMC设计标准电路-综合文档
- 工业控制
- walle:Android签名V2方案签名下的新一代渠道包打包神器