The automated technique on vulnerability detection and exploit generation has gained a great advance in the past few years. Traditional code hardening basically on human cannot meet the security requirements due its low efficiency. Therefore, it is significant to employ artificial intelligence techniques to automate code hardening and shorten the window of being attacked. This project aims to explore the key techniques of using artificial intelligence techniques to elevate code hardening, and fix the vulnerabilities in an accurate yet scalable fashion. In particular, the project first collects the code changes that are related to vulnerability fixing, distills the essences of security patches and then devises a variety of code hardening tactics; we intend to propose an efficient approach to generate Proof of Concepts (PoCs) and exploits in order to test the effectiveness of code hardening. To this end, we intend to solve the conditions along with the execution path leading to vulnerabilities, and utilize dynamic testing to work out the corresponding PoCs or exploits. We will put forward several criteria to evaluate the code hardening process, and then optimize this process with the guidance of multiple objectives optimization. Our study can benefit both the society and the country twofold: the formalized security patches provide a handy expert system which can facilitate the patching of vulnerable code; the developed automated code hardening system can effectively protect software from malicious exploitation, and increase the security of cyber space.
随着自动化漏洞挖掘和漏洞利用的快速发展,软件的安全问题更为严峻。通过人工手段对代码进行安全修复已经无法达到现阶段的安全需求,如何结合智能化方法对代码进行自动和大规模的安全加固成为安全领域内的研究重点和热点,并成为赢得这场软件攻防战役的关键。本项目旨在探索利用智能化方法在代码安全加固领域内的应用,克服传统方法的弊端,实现一套快速、准确和规模化的代码安全加固方法。拟对开源软件中安全的修复内容进行形式化建模,借助人工智能技术和程序分析确定漏洞跟补丁的映射关系,提炼安全加固策略;解决代码中的条件依赖,结合动态测试方法,生成漏洞的概念验证和攻击利用;提供一套安全加固的评估指标,不断优化代码的安全加固,实现最终的代码安全加固。项目提炼的代码加固策略,能够为软件安全领域提供丰富的数据,促进代码加固的自动化和智能化进程;设计和开发的自动化代码加固系统,能够提升软件的安全性,保障国家和社会在网络空间的安全。
软件系统面临多方面的安全威胁,不规范的编码容易导致代码存在漏洞,不充分的检查能够容易被恶意代码所绕过,给系统和用户带来严重的安全隐患,因此如何提升软件代码的质量,发现其中存在的问题是保障软件系统安全性的关键。项目围绕代码的安全加固开展了三方面的研究工作,首先针对软件系统的威胁,包括漏洞和恶意代码等,研究针对代码的表征学习,探索漏洞之间代码语义关联,利用人工智能技术,如卷积神经网络,图神经网络,宽深网络等,实现了对代码中漏洞和恶意代码的检测,提升了软件的安全性。第二,建立缺陷代码的上下文场景,构建代码的语义关联,设计高效的深度学习模型,实现对缺陷代码的自动化修复。同时,探索漏洞发现技术的局限,设计启发式的方法进行策略干扰,减缓攻击者发掘漏洞的效率,进而提升软件安全性。最后,项目对智能算法进行了安全的分析研究,从智能算法的鲁棒性、隐私性和安全测评分别开展相关研究,实现了针对物理世界的对抗攻击,低交互的模型窃取以及在终端设备中智能模型的鲁棒性测试。相关论文发表在USENIX Security,CCS,ICSE等高水平学术会议和期刊中,累计发表17篇论文,其中CCF-A类论文10篇,申请发明专利3项,相关研究成果应用于阿里云等大型企业中,并获得省部级科技进步一等奖一项,省部级人才计划一项。
{{i.achievement_title}}
数据更新时间:2023-05-31
基于分形L系统的水稻根系建模方法研究
涡度相关技术及其在陆地生态系统通量研究中的应用
粗颗粒土的静止土压力系数非线性分析与计算方法
正交异性钢桥面板纵肋-面板疲劳开裂的CFRP加固研究
硬件木马:关键问题研究进展及新动向
代码安全属性度量技术研究
基于加密规则的恶意代码安全检测关键技术研究
基于语言理论和实现技术的移动代码安全
面向动态语言安全性的源代码静态分析技术研究