马森
- 作品数:4 被引量:29H指数:4
- 供职机构:北京大学软件工程国家工程研究中心更多>>
- 发文基金:中国人民解放军总装备部预研基金国家重点基础研究发展计划更多>>
- 相关领域:自动化与计算机技术更多>>
- 基于值依赖分析的空指针解引用检测被引量:4
- 2015年
- 本文提出了一种基于程序值依赖分析的、路径敏感的空指针解引用检测方法.该方法通过结合数据流分析中的到达定值分析、区间分析及指向分析创建了值依赖分析图,该图刻画了可能产生空指针语句到其解引用语句的值依赖关系.该图中的边采用守卫标注,即描述了相邻点之间的到达条件.为了降低误报率,本文同时提出了一种需求驱动的必然别名算法.由本文所述方法实现的工具展示了良好的实验效果,在10个SPEC2000项目中发现了70余个空指针解引用缺陷,误报率仅为6%左右.
- 马森赵文习翔宇王栋伟
- 基于规则推理的语义检索若干关键技术研究被引量:8
- 2013年
- 针对专业领域复杂的检索需求,目前相关研究采用基于语义的方法来扩展检索范围并提高准确度.在语义推理方面,目前搜索引擎通常直接采用语义网中的推理算法,推理效率不高.在排序方面,基于关键字的搜索引擎的排序算法也不适合对语义检索结果进行排序.针对上述问题,本文给出了基于语义网的语义规则建立方法,并提出了一种基于闭合世界假设的反向链接推理算法,提高推理效率,同时给出了一种基于特征相似性排序算法,使检索结果排序方式更加符合语义检索的特点.基于本文提出的方法,构造了语义搜索引擎MaterialHub,实验表明该搜索引擎提高了检索的准确率和查全率,有较好的查询响应时间,并已经得到实际应用.
- 马森赵文袁崇义张世琨王立福
- 关键词:语义检索语义规则
- 面向代码相似性检测的相似哈希改进方法被引量:9
- 2021年
- 代码相似性检测(code similarity detection)是软件工程领域的基本任务之一,其在剽窃检测、许可证违反检测、软件复用分析以及漏洞发现等方向均起着重要作用.随着软件开源化的普及以及开源代码量的高速增长,开源代码在各个领域的应用日益频繁,给传统的代码相似性检测方法带来了新的挑战.现有的一些基于词法、语法、语义的检测方法存在算法较为复杂、对解析工具有依赖性、消耗资源高、可移植性差、候选对比项数量较多等问题,在大规模代码库上有一定的局限性.基于相似哈希(simhash)指纹的代码相似性检测算法将代码降维至1个指纹,能够在数据集规模较大的情况下实现快速相似文件检索,并通过海明距离阈值控制匹配结果的相似度范围.通过实验对现有的基于代码行粒度的相似哈希算法进行验证,发现其在大规模数据集下存在行覆盖问题,即高频行特征对低频行特征的覆盖现象,导致结果精确度较低.受TF-IDF算法思想启发,针对上述问题创新性地提出了分语言行筛选优化方法,通过各种语言的行筛选器对代码文件行序列进行筛选,从而消除高频出现但语义信息包含较少的行对结果的影响.对改进前后方法进行一系列对比实验,结果表明,改进后的方法在海明距离阈值为0~8的情况下都能够实现高精确度的相似文件对检索,当阈值为8时在两个数据集下的精确度较改进前的方法分别提升了98.6%和52.2%.在所建立的130万个开源项目、386486112个项目文件的大规模代码库上进行了实验,结果表明所提方法能够快速检测出待测文件的相似文件结果,平均单个文件检测时间为0.43s,并取得了97%以上的检测精度.
- 李玫高庆马森马森张世琨张兴明
- 关键词:大数据
- 软件供应链安全的风险和成因分析被引量:8
- 2018年
- 由于软件应用范围不断扩大,软件安全已经不限于虚拟空间,直接威胁到物理空间的安全,而且,供应链中的任何问题都会导致严重的危害。降低软件安全风险最重要的就是技术沉淀,而技术沉淀最好的方式就是自动化工具,例如美国国防高级研究计划局(DARPA)在2016年举办的网络安全挑战赛(CGC),无任何人为干预,由机器全自动地挖掘二进制程序中的漏洞。笔者认为,这类比赛的意义远大于夺旗赛(CTF)这种证明个人实力的比赛,因为靠人的经验式挖掘永远不能普惠更多的企业和个人,而且经验的传授也不会系统完整。
- 张世琨马森高庆孙永杰
- 关键词:供应链DARPA物理空间