距离“全自动”漏洞挖掘又近了一步!腾讯安全大数据实验室论文入选ACM CCS 2023

计算机领域国际权威学术顶会ACM CCS 2023于11月26日在丹麦哥本哈根开幕。腾讯安全大数据实验室团队论文《Hopper: Interpretative Fuzzing for Libraries》被大会收录,昨天,实验室研究员谢雨轩受邀出席大会进行主题分享。

该论文提出了解释性模糊测试(Interpretative Fuzzing)方法,展示了如何基于动态反馈来学习API内外的约束进行代码自动化生成,从而在没有任何外部专家知识的前提下生成有效可用的代码调用方式,并且根据这些代码来挖掘漏洞。该研究方法的出现旨在解决模糊测试需要人工构造入口的问题,有望极大地提升漏洞自动化挖掘的效率和应用范围。

模糊测试技术(Fuzzing)最近几年被证明是最有效的漏洞挖掘手段,它的主要机制是通过构造大量的随机输入来测试软件是否能过正确的处理这些输入,从而帮助开发人员自动化地发现软件缺陷。目前,模糊测试技术在开源软件和商业软件上被广泛使用。

但是,模糊测试依赖于开发人员给目标对象人工构造测试入口(Fuzz Driver) ,而编写出逻辑正确且覆盖率高的测试入口既需要开发者对待测的库有深入的理解,也需要耗费较大的工作量。在居高不下的门槛之下,目前仍有非常多的代码(包括项目、API等等)没有被模糊测试所覆盖,漏洞挖掘的“自动化”程度有限。

腾讯安全大数据实验室提出的解释性模糊测试改变了这一现状。解释性模糊测试不需要开发人员编写测试入口,让Fuzzer可以直接生成待执行的程序,从而实现完全零人工地学习和测试任意库API,打通模糊测试全自动化的流程,极大地提升漏洞自动化挖掘的效率。

基于这个方法,腾讯安全大数据实验室实现了漏洞自动化挖掘工具Hopper,并在11个开源的库文件中评估了Hopper的效果。结果表明,Hopper在其中三个库中覆盖率表现有显著优势,在其他库能取得跟人工构造的入口不相上下的效果。

在API覆盖率上,Hopper能达到93.52%的极高水准,而对相同目标人工编写的模糊测试入口只能覆盖大约15%-30%的API。

此外,Hopper推断的API内约束能达到96.51%的准确率,大大提升生成代码的成功率和效率。

最后,实验中,Hopper直接借助执行的动态反馈来生成可以测试API的代码,在大大提升API测试覆盖率的同时,还成功地找出了一系列真实的软件缺陷,并提交给相关平台和开发者进行了修复。

研究人员将上述研究成果以论文方式发布,并被ACM CCS 2023收录。ACM CCS与IEEE S&P、USENIX Security、NDSS并称为计算机安全领域四大顶级会议,已有近30年的历史,并对计算机安全领域产生了重大深远的影响。该会议在计算机安全领域享有崇高的声誉,同时也被中国计算机学会(CCF)认定为网络与信息安全A类国际学术会议。

腾讯安全大数据实验室认为,网络安全面临的内外部技术都在不断发展,但网络安全的本质还是漏洞和攻防,因此,如何才能先于攻击者找到系统的漏洞是不变的主题。大模型时代, 腾讯安全也将持续探索如何让AI等新技术赋能于漏洞挖掘、提升效率。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/200261.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

前端笔试遇到的坑-100题

1.闭包 let 形成闭包 var全局变量 function test() {for (var i 0; i < 6; i) {console.log(i); //1 2 3 4 5 6// setTimeout(() > {// console.log(i);// }, 0); 6 6 6 6 6 6 6} } test();var array []; for (var i 0; i < 3; i) {array.push(() > i);…

全国高校走进深算院:共话国产数据库产教融合生态建设

近日&#xff0c;由教育部高等学校计算机类专业教学指导委员会、全国高等学校计算机教育研究会主办&#xff0c;清华大学出版社、深圳市信息技术应用创新联盟承办的“2023全国高校走进信创企业研学活动”顺利举办。来自全国各地30余家高校的近80位院校领导、教师代表走进了深圳…

WordPress更改文章分类插件

当WP网站内容比较多的时候&#xff0c;有时候如果涉及到批量修改文章分类&#xff0c;如果一个个的去操作的话就太费事了&#xff0c;如果使用后台批量修改分类的话是增加旧分类不会取消选择&#xff0c;就就导致我们适得其反还需要一个一个的去编辑取消&#xff0c;实在繁琐了…

年终好价节有什么必买的数码好物?值得入手的数码好物推荐

大家是不是都没听说过好价节&#xff1f;直白点说就是原来的双十二购物狂欢节&#xff0c;只不过换一个说法&#xff0c;不过今年毕竟是第一年换个说法&#xff0c;所以淘宝年终好价节优惠还是值得我们期待的&#xff01;作为年前的最后一波大促&#xff0c;一起来看看有哪些好…

redis 内存机制探索篇

info memory 查看redis 内存使用情况出现的问题&#xff0c;公司在导入大量redis key 的时候&#xff0c;想要看一下redis 内存使用情况 &#xff0c;发现used_memory_peak_perc 和 used_memory_dataset_perc 马上达到100%&#xff0c;这个时候很慌张&#xff0c;是不是当前red…

智能AI问答系统ChatGPT网站系统源码+Midjourney绘画+支持GPT-4-Turbo模型+支持GPT-4图片理解能力

一、AI创作系统 SparkAi创作系统是基于ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统&#xff0c;支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美&#xff0c;可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI…

亚马逊发布人工智能助手Amazon Q,一起来看看有什么功能

Amazon 在11.28日Re:Invent大会上推出人工智能助手Amazon Q&#xff0c;主要面向企业客户&#xff0c;提供个性化服务。号称是专为工作定制的生成式人工智能助手。Your generative Al-powered assistant tailored for work 核心能力企业知识库&#xff1a;为客户提供快速、相关…

低功耗蓝牙模块在医疗保健领域中的创新应用

医疗保健领域一直在追求更先进的技术&#xff0c;以提高医疗服务的效率和质量。低功耗蓝牙技术的崭新应用为医疗设备的互联性和数据传输提供了可靠的解决方案。本文将深入研究低功耗蓝牙模块在医疗保健领域中的应用&#xff0c;重点关注其在可穿戴设备、远程医疗监测和患者数据…

Python编程基础:数据类型和运算符解析

想要学习Python编程语言&#xff1f;本文将为您介绍Python中常见的数据类型和运算符&#xff0c;为您打下坚实的编程基础。了解不同的数据类型和运算符&#xff0c;掌握它们之间的配合方式&#xff0c;让您能够更轻松地进行数据处理和计算任务。无论您是初学者还是有一定经验的…

网页能做二维码吗?1分钟学会链接转码的方法

想要将链接做成二维码图片&#xff0c;让他人通过扫码跳转链接以提高网页的传播性&#xff0c;是现在很常用的一种手段。主要在于二维码是现在最常用的一种展现方式&#xff0c;更加符合现在人的行为习惯&#xff0c;那么网址二维码该如何操作呢&#xff1f;今天小编给大家讲解…

对数据页的理解

1.InnoDB 是如何存储数据的&#xff1f; 数据表中的记录是按照行来存储的&#xff0c;但是数据库的读取并不以「行」为单位&#xff0c;否则一次读取&#xff08;也就是一次 I/O 操作&#xff09;只能处理一行数据&#xff0c;效率会非常低。 因此&#xff0c;InnoDB 的数据是按…

例:降压型直流开关稳压电源

继电器控制开断&#xff0c;记得要做防抖 单片机DAC控制输出电压 LM5117太复杂可以用TPS5450 二极管选择&#xff0c;可以选一个也可以选两个并联 一体成型电感排第一&#xff0c;铁硅铝电感排第二

CSS特效021:蛇形左右扭动的效果

CSS常用示例100专栏目录 本专栏记录的是经常使用的CSS示例与技巧&#xff0c;主要包含CSS布局&#xff0c;CSS特效&#xff0c;CSS花边信息三部分内容。其中CSS布局主要是列出一些常用的CSS布局信息点&#xff0c;CSS特效主要是一些动画示例&#xff0c;CSS花边是描述了一些CSS…

如何有效地开发客户关系?

如何有效地开发客户关系&#xff1f; 有效地开发客户关系&#xff0c;是企业在竞争激烈的市场中获得优势的关键。通过深入了解客户需求、提供优质的产品和服务、建立良好的沟通渠道、提供个性化的体验以及建立长期合作关系等方式&#xff0c;企业可以有效地开发客户关系&#…

unity学习笔记

一、Transform类 在Unity中&#xff0c;Transform 类是一种用于表示和操作游戏对象位置、旋转和缩放的类。每个游戏对象都有一个关联的 Transform 组件&#xff0c;该组件定义了对象在场景中的空间变换信息。 1.常见属性和方法 获取位置 相对与世界坐标系&#xff1a;Debug.…

使用Java给钉钉群发消息

目录 目录 1.安装依赖 2.编写工具类 3.测试 安全设置 Webhook 代码编写 运行测试 4.艾特全部功能 1.安装依赖 <dependency><groupId>com.taobao.dingding</groupId><artifactId>taobao-sdk</artifactId><version>1.0.0</versio…

java多线程-扩展知识三:乐观锁与悲观锁

1、悲观锁 悲观锁有点像是一位比较悲观&#xff08;也可以说是未雨绸缪&#xff09;的人&#xff0c;总是会假设最坏的情况&#xff0c;避免出现问题。 悲观锁总是假设最坏的情况&#xff0c;认为共享资源每次被访问的时候就会出现问题(比如共享数据被修改)&#xff0c;所以每次…

Windows系统搭建Appium 2 和 Appium Inspector 环境

前言 自 2022 年 1 月 1 日起&#xff0c;Appium 核心团队不再维护 Appium 1.x。官方支持的平台驱动程序的所有最新版本均不兼容 Appium 1.x&#xff0c;需要 Appium 2 才能运行。 Appium 2是一个自动化移动应用程序的开源工具&#xff0c;它带来了以下重要改进&#xff1a;  …

软件测评中心▏软件集成测试和功能测试之间的区别和联系简析

软件集成测试是在软件开发周期的后期阶段进行的测试活动&#xff0c;旨在验证系统各个组件之间的接口和交互是否正常工作。而功能测试是一种验证软件系统是否按照需求规格说明书所规定的功能进行正确实现的测试。接下来&#xff0c;我们来分别探讨一下软件集成测试和功能测试有…

hadoop安装

简介 Hadoop是一个开源的分布式存储和计算框架&#xff0c;最初由Apache软件基金会开发。它的发展背景可以追溯到Google的MapReduce和Google File System&#xff08;GFS&#xff09;的论文&#xff0c;这两篇论文启发了Hadoop的设计。Hadoop的主要应用场景包括大数据存…