加快打造原始创新策源地,加快突破关键核心技术,努力抢占科技制高点,为把我国建设成为世界科技强国作出新的更大的贡献。

——习近平总书记在致中国科学院建院70周年贺信中作出的“两加快一努力”重要指示要求

面向世界科技前沿、面向经济主战场、面向国家重大需求、面向人民生命健康,率先实现科学技术跨越发展,率先建成国家创新人才高地,率先建成国家高水平科技智库,率先建设国际一流科研机构。

——中国科学院办院方针

首页 > 每日科学

用程序“修理”程序

智能系统能自行修复程序漏洞

2015-07-02 科技日报 王小龙
【字体:

语音播报

  美国麻省理工学院的研究人员日前对外展示了一种能够自行修复程序漏洞的系统。这套名为CodePhage的系统,可在无需人工干预、不用访问应用程序源代码的情况下,从其他程序中寻找合适的代码对存有高危漏洞的程序进行修复,直至问题解决为止。

  领导此项研究的麻省理工学院计算机科学与人工智能实验室(CSAIL)科学家斯泰利奥斯·塞迪罗格鲁-杜斯克斯说,在开源程序库中有海量的代码,涵盖数以百万计的项目,而其中不少在功能上都存在相似性。CodePhage正是基于这一点来开发的。

  在运行时,这套系统就像修补匠一样,首先识别出目标软件中的故障组件,再从程序库中找到与其功能类似的完好“新零件”,然后将“新零件”安装到目标软件上替换故障组件。这个过程会不断重复,直到系统认为“新零件”已经完美地解决了问题。

  为了测试其有效性,研究人员用该系统对开源程序中的7个漏洞进行修复,结果发现在所有情况下,它都能完成修复漏洞的任务,花费的时间从2分钟到10分钟不等。

  当然,由于不同的软件采用了不同的编码标准、变量名称以及变量类型,且变量也有区域性与全局性的区别,要识别这些不同,让来自不同软件的代码完美地结合起来并不是一件简单的事情。

  研究人员称,他们的长期愿景是:人们无需进行重复劳动,去写那些之前已经有人写过的代码,在需要时,只需自动寻找相应代码,然后将所需的部分组合成一个能够运行的整体。他们认为这将大幅减轻程序员的工作强度。

  美国马萨诸塞大学阿默斯特分校计算机科学教授埃默里·伯杰说:“这个技术能从另外一个程序中寻找适合的代码修复漏洞,通过这种方式来解决问题。说实话,我很惊讶,它非常酷。”

打印 责任编辑:侯茜

扫一扫在手机打开当前页

© 1996 - 中国科学院 版权所有 京ICP备05002857号-1 京公网安备110402500047号 网站标识码bm48000002

地址:北京市西城区三里河路52号 邮编:100864

电话: 86 10 68597114(总机) 86 10 68597289(总值班室)

编辑部邮箱:casweb@cashq.ac.cn

  • © 1996 - 中国科学院 版权所有 京ICP备05002857号-1 京公网安备110402500047号 网站标识码bm48000002

    地址:北京市西城区三里河路52号 邮编:100864

    电话: 86 10 68597114(总机) 86 10 68597289(总值班室)

    编辑部邮箱:casweb@cashq.ac.cn

  • © 1996 - 中国科学院 版权所有
    京ICP备05002857号-1
    京公网安备110402500047号
    网站标识码bm48000002

    地址:北京市西城区三里河路52号 邮编:100864
    电话:86 10 68597114(总机)
       86 10 68597289(总值班室)
    编辑部邮箱:casweb@cashq.ac.cn