【网安AIGC专题】46篇前沿代码大模型论文、24篇论文阅读笔记汇总

网安AIGC专题

  • 写在最前面
    • 一些碎碎念
    • 课程简介
  • 0、课程导论
  • 1、应用 - 代码生成
  • 2、应用 - 漏洞检测
  • 3、应用 - 程序修复
  • 4、应用 - 生成测试
  • 5、应用 - 其他
  • 6、模型介绍
  • 7、模型增强
  • 8、数据集
  • 9、模型安全

写在最前面

请添加图片描述

本文为邹德清教授的《网络安全专题》课堂笔记系列的文章,本次专题主题为大模型。

本系列文章不仅涵盖了46篇关于前沿代码大模型的论文,还包含了24篇深度论文阅读笔记,全面覆盖了代码生成、漏洞检测、程序修复、生成测试等多个应用方向,深刻展示了这些技术如何在网络安全领域中起到革命性作用。同时,本系列还细致地介绍了大模型技术的基础架构、增强策略、关键数据集,以及与网络安全紧密相关的模型安全问题。

本篇博客旨在整理这些宝贵的笔记,方便未来的阅读和研究,同时也希望能够对广大读者产生启发和帮助。让我们一起踏上这场网络安全的未来探索之旅,共同在这个不断变化的领域中寻找属于我们的立足点。

一些碎碎念

纯散养、跨方向的直博开局,幸运的遇到了网络安全专题这门课,于是像每周组会一样在上课。
感谢邹德清、李珍、文明老师的授课,感谢课堂每一位同学的交流,受益匪浅。
带我打开一个全新视角,领略AIGC与大模型技术的革新之旅。同时理解最新的技术成就,发现它们的不足之处,并培养出创新能力。还有一些全英文PPT,“被迫”学了很多英文名词hh
对于我来说,这不仅仅是学术上的成长之旅,更是一次思维和视角的重大转变。通过课堂汇报、论文阅读和交流讨论,我逐渐培养了阅读论文的习惯,并学会了如何形成自己的思路。

这是2023秋季的三个月,也是积极的开始。希望之后的自己能延续每周阅读文献,积极推进科研进度,争取早日毕业!

课程简介

网络安全专题是针对当前热点安全问题进行研讨,通常分成四类热门主题进行介绍和研讨,包括的热门主题有:攻击行为与漏洞分析,分享最新的攻防进展;下一代网络安全,分享物联网、工控网络等相关协议安全、网络防御等技术;动态行为分析,分享内存相关安全以及动态污点技术等;人工智能安全,分享人工智能,人工智能安全应用,以及联邦学习安全等最新知识。

围绕着几个热门主题,在最近五年的信息安全顶尖会议上挑选一些代表性论文,组织学生研讨,启发他们理解最新成果,并发现最新成果的不足,从而达到培养创新能力的目的;另外也提高他们用英文介绍知识,以及进行讨论的能力。

0、课程导论

【网安AIGC专题10.11】软件安全+安全代码大模型
【网安AIGC专题10.11】①代码大模型的应用:检测、修复②其安全性研究:模型窃取攻击(API和网页接口) 数据窃取攻击 对抗攻击(用途:漏洞隐藏) 后门攻击(加触发器+标签翻转)

1、应用 - 代码生成

主题论文出处及时间论文笔记
Enabling Programming Thinking in Large Language Models Toward Code GenerationarXiv 2023.5.11
Self-Edit: Fault-Aware Code Editor for Code GenerationarXiv 2023.5.6
Improving Code Example Recommendations on Informal Documentation Using BERT and Query-Aware LSH: A Comparative StudyarXiv 2023.5.4
自动程序修复Is Your Code Generated by ChatGPT Really Correct? Rigorous Evaluation of Large Language Models for Code GenerationarXiv 2023.5.2论文1:生成式模型GPT\CodeX填充式模型CodeT5\INCODER+大模型自动程序修复(生成整个修复函数、修复代码填充、单行代码生产、生成的修复代码排序和过滤)
代码生成Self-collaboration Code Generation via ChatGPTarXiv 2023.4.15论文3代码生成:ChatGPT+自协作代码生成+角色扮演(分析员、程序员、测试员)+消融实验、用于MBPP+HumanEval数据集
代码生成Improving Code Generation by Training with Natural Language FeedbackarXiv 2023.3.282 ILF利用人类编写的 自然语言反馈 来训练代码生成模型:自动化反馈生成+多步反馈合并+处理多错误反馈+CODEGEN -M ONO 6.1 B model
Learning Performance-Improving Code EditsarXiv 2023.2.15

2、应用 - 漏洞检测

论文出处及时间
Large Language Models of Code Fail at Completing Code with Potential BugsarXiv
Large Language Models and Simple, Stupid BugsarXiv 2023.3.20
Prompting Is All Your Need: Automated Android Bug Replay with Large Language ModelsarXiv
When GPT Meets Program Analysis: Towards Intelligent Detection of Smart Contract Logic Vulnerabilities in GPTScanarXiv

3、应用 - 程序修复

主题论文出处及时间论文笔记
Towards Generating Functionally Correct Code Edits from Natural Language Issue DescriptionsarXiv 2023.4.7
自动程序修复Keep the Conversation Going: Fixing 162 out of 337 bugs for $0.42 each using ChatGPTarXiv 2023.4.15 ChatRepair:ChatGPT+漏洞定位+补丁生成+补丁验证+APR方法+ChatRepair+不同修复场景+修复效果(韦恩图展示)
CCTEST: Testing and Repairing Code Completion SystemsICSE 2023
Examining Zero-Shot Vulnerability Repair with Large Language ModelsS&P 2023
自动程序修复Automated Program Repair in the Era of Large Pre-trained Language ModelsICSE 2023大模型自动程序修复(生成整个修复函数、修复代码填充、单行代码生产、生成的修复代码排序和过滤)+生成式模型GPT\CodeX填充式模型CodeT5\INCODER
漏洞修复How Effective Are Neural Networks for Fixing Security VulnerabilitiesarXiv论文6(顶会ISSTA 2023):提出新Java漏洞自动修复数据集:数据集 VJBench+大语言模型、APR技术+代码转换方法+LLM和DL-APR模型的挑战与机会
自动程序修复Conversational Automated Program RepairarXiv 2023.1.30论文7:Chatgpt/CodeX引入会话式 APR 范例+利用验证反馈+LLM 长期上下文窗口:更智能的反馈机制、更有效的信息合并策略、更复杂的模型结构、鼓励生成多样性
静默漏洞修复识别CoLeFunDa-Explainable Silent Vulnerability Fix IdentificationICSE 20238 CoLeFunDa华为团队:静默漏洞检测(识别+多分类)+数据增强、样本扩充+对比学习+微调+结果分析(降维空间,分类错误样本归纳,应用场景优势,有效性威胁分析)

4、应用 - 生成测试

主题论文出处及时间论文笔记
No More Manual Tests? Evaluating and Improving ChatGPT for Unit Test GenerationarXiv 2023.5.9
Finding Failure-Inducing Test Cases with ChatGPTarXiv 2023.4.30
Large Language Models are Edge-Case Fuzzers: Testing Deep Learning Libraries via FuzzGPTarXiv 2023.4.4
自动化测试Large Language Models are Few-shot Testers: Exploring LLM-based General Bug ReproductionarXiv 2022.9.239 LIBRO方法(ICSE2023顶会自动化测试生成):提示工程+查询LLM+选择、排序、后处理(测试用例函数放入对应测试类中,并解决执行该测试用例所需的依赖)
模糊测试Large Language Models are Zero-Shot Fuzzers: Fuzzing Deep-Learning Libraries via Large Language ModelsISSTA 202310 TitanFuzz完全自动化执行基于变异的模糊测试:生成式(如Codex)生成种子程序,逐步提示工程+第一个应用LLM填充模型(如InCoder)+差分测试

5、应用 - 其他

主题论文出处及时间论文笔记
信息提取CODEIE: Large Code Generation Models are Better Few-Shot Information ExtractorsarXiv 2023.5.1112 CODEIE用于NER和RE:顶刊OpenAI API调用、CodeX比chatgpt更好:提示工程设计+控制变量对比实验(格式一致性、模型忠实度、细粒度性能)
代码搜索On Contrastive Learning of Semantic Similarity for Code to Code SearcharXiv 2023.5.514Cosco跨语言代码搜索代码: (a) 训练阶段 相关程度的对比学习 对源代码(查询+目标代码)和动态运行信息进行编码 (b) 在线查询嵌入与搜索:不必计算相似性
生成知识图谱CodeKGC: Code Language Model for Generative Knowledge Graph ConstructionarXiv 2023.4.18
软件工程15 ChatGPT在软件工程中的全面作用:程序语法(AST生成、表达式匹配) 静态行为、动态分析(数据依赖和污点分析、指针分析) 提示设计(角色提示、指令提示)
代码摘要Comparing Code Explanations Created by Students and Large Language ModelsarXiv 2023.4.1317ASAP如何更好地改进少样本提示:在LLMs的prompt中添加语义信息,来提高代码摘要生成+代码补全任务的性能。CodeSearchNet数据集
代码解释Active Code Learning: Benchmarking Sample-Efficient Training of Code ModelsarXiv 2023.4.8论文13:理解和解释代码,GPT-3大型语言模型&学生创建的代码解释比较+错误代码的解释(是否可以发现并改正)
代码学习The Scope of ChatGPT in Software Engineering: A Thorough InvestigationarXiv11 Coreset-C 主动学习:特征选择+11种采样方法+CodeBERT、GraphCodeBERT+多分类(问题分类)二元分类(克隆检测)非分类任务(代码总结)
许可证版权保护CODEIPPROMPT: Intellectual Property Infringement Assessment of Code Language ModelsICML 202316CODEIPPROMPT:顶会ICML’23 从GitHub到AI,探索代码生成的侵权风险与缓解策略的最新进展:训练数据`有限制性许可;模型微调+动态Token过滤
LLM4SE综述Large Language Models for Software Engineering: A Systematic Literature ReviewarXiv 2023.9.1218LLM4SE革命性技术揭秘:大型语言模型LLM在软件工程SE领域的全景解析与未来展望 - 探索LLM的多维应用、优化策略与软件管理新视角

6、模型介绍

论文出处及时间
StarCoder: may the source be with you!arXiv 2023.5.9
Textbooks Are All You NeedarXiv 2023.6.20
Analysis of ChatGPT on Source CodearXiv

7、模型增强

主题论文出处及时间论文笔记
代码预训练ContraBERT: Enhancing Code Pre-trained Models via Contrastive LearningICSE 202319ContraBERT:顶会ICSE23 数据增强+对比学习+代码预训练模型,提升NLP模型性能与鲁棒性:处理程序变异(变量重命名)
持续学习Keeping Pace with Ever-Increasing Data: Towards Continual Learning of Code Intelligence ModelsICSE 202323REPEAT方法:软工顶会ICSE ‘23 大模型在代码智能领域持续学习 代表性样本重放(选择信息丰富且多样化的示例) + 基于可塑权重巩固EWC的自适应参数正则化 【网安AIGC专题11.22】
TRACED: Execution-aware Pre-training for Source CodearXiv
Symmetry-Preserving Program Representations for Learning Code SemanticsarXiv

8、数据集

主题论文出处及时间论文笔记
The Vault: A Comprehensive Multilingual Dataset for Advancing Code Understanding and GenerationarXiv 2023.5.9
错误代码补全Large Language Models of Code Fail at Completing Code with Potential BugsNeurIPS 202324 LLM错误代码补全:机器学习顶会NeurIPS‘23 智能体评估:自行构建数据集Buggy-HumanEval、Buggy-FixEval+错误代码补全+修复模型【网安AIGC专题11.22】
CCF CLLMSecEval: A Dataset of Natural Language Prompts for Security EvaluationsarXiv 2023.3.1622LLMSecEval数据集及其在评估大模型代码安全中的应用:GPT3和Codex根据LLMSecEval的提示生成代码和代码补全,CodeQL进行安全评估【网安AIGC专题11.22】
CrossCodeBench: Benchmarking Cross-Task Generalization of Source Code ModelsICSE 2023
数据增强Data Augmentation Approaches for Source Code Models: A Survey arXiv20源代码模型的数据增强方法:克隆检测、缺陷检测和修复、代码摘要、代码搜索、代码补全、代码翻译、代码问答、问题分类、方法名称预测和类型预测对论文进行分组【网安AIGC专题11.15】

9、模型安全

主题论文出处及时间
Multi-target Backdoor Attacks for Code Pre-trained ModelsarXiv
对抗攻击Discrete Adversarial Attack to Models of CodePLDI 2023

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

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

相关文章

nodejs+vue+elementui网上家电家用电器数码商城购物网站 多商家

基于vue.js的恒捷网上家电商城系统根据实际情况分为前后台两部分,前台部分主要是让用户购物使用的,包括用户的注册登录,查看公告,查看和搜索商品信息,根据分类定位不同类型的商品,将喜欢的商品加入购物车&a…

c语言:有关内存函数的模拟实现

memcpy函数&#xff1a; 功能&#xff1a; 复制任意类型的数据&#xff0c;存储到某一数组中。 代码模拟实现功能&#xff1a; #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<string.h> #include <stdio.h> #include<assert.h> memcpy…

初识Spring (Spring 核心与设计思想)

文章目录 什么是 Spring什么是容器什么是 IoC理解 Spring IoCDI 概念 什么是 Spring Spring 官网 官方是这样说的: Spring 让每个人都能更快、更轻松、更安全地进行 Java 编程。春天的 专注于速度、简单性和生产力使其成为全球最受欢迎Java 框架。 我们通常所说的 Spring 指的…

避免手机无节制使用

手机使用情况分析 使用时间 我挑选了11月份某一周的统计数据&#xff0c;可以看到&#xff0c;我的日均手机手机时间达到了惊人的8个小时&#xff0c;每周总共余约57小时。 按照使用软件的类型来分类&#xff0c;其中约%50用于娱乐&#xff0c;主要使用软件为&#xff1a;哔哩…

Mac 搭建本地服务器

文章目录 1 启动服务器2 服务器目录3 手机访问服务器3.1 手机和电脑连上同一个局域网( 或WIFI)3.2 找到电脑的ip地址 如下图所示3.3 手机打开 http://192.168.10.5/1.txt 4 关闭服务器5 参考文章 1 启动服务器 sudo apachectl start启动后访问 http://localhost/ 如下图所示即…

Java第二十章 ——多线程

本文主要讲了java中多线程的使用方法、线程同步、线程数据传递、线程状态及相应的一些线程函数用法、概述等。 在这之前&#xff0c;首先让我们来了解下在操作系统中进程和线程的区别&#xff1a;   进程&#xff1a;每个进程都有独立的代码和数据空间&#xff08;进程上下文…

SQL Server:流程控制语言详解

文章目录 一、批处理、脚本和变量局部变量和全局变量1、局部变量2、全局变量 二、顺序、分支和循环结构语句1、程序注释语句2、BEGIN┅END语句块3、IF┅ELSE语句4、CASE语句5、WHILE语句6、BREAK和CONTINUE语句BREAK语句CONTINUE语句 三、程序返回、屏幕显示等语句1、RETURN语句…

深度学习之图像分类(十五)DINAT: Dilated Neighborhood Attention Transformer详解(一)

Dilated Neighborhood Attention Transformer Abstract Transformers 迅速成为跨模态、领域和任务中应用最广泛的深度学习架构之一。在视觉领域&#xff0c;除了对普通Transformer的持续努力外&#xff0c;分层Transformer也因其性能和易于集成到现有框架中而受到重视。这些模…

CGAN原理讲解与源码

1.CGAN原理 生成器&#xff0c;输入的是c和z&#xff0c;z是随机噪声&#xff0c;c是条件&#xff0c;对应MNIST数据集&#xff0c;要求规定生成数字是几。 输出是生成的虚假图片。 判别器的输入是 1.生成器输出的虚假图片x; 2.对应图片的标签c 来自真实数据集&#xff0c;且…

线性分类器--数据处理

数据集划分 通常按照 70%&#xff0c;20% &#xff0c;10% 来分数据集 数据处理 斯坦福的线性分类器体验 http://vision.stanford.edu/teaching/cs231n-demos/linear-classify/

数据结构-二叉树(1)

1.树概念及结构 1.1树的概念 树是一种非线性的数据结构&#xff0c;它是由n&#xff08;n>0&#xff09;个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树&#xff0c;也就是说它是根朝上&#xff0c;而叶朝下的。 1.有一个特殊的结点&…

【上海大学数字逻辑实验报告】一、基本门电路

一、 实验目的 熟悉TTL中、小规模集成电路的外形、管脚和使用方法&#xff1b;了解和掌握基本逻辑门电路的输入与输出之间的逻辑关系及使用规则。 二、 实验原理 实现基本逻辑运算和常用逻辑运算的单元电路称为逻辑门电路。门电路通常用高电平VH表示逻辑值“1”&#xff0c;…

前端入职环境安装

前端入职 后环境安装 &#xff0c;内函 nodenvmgit微信开发者工具vscode 的安装包 一.node安装-js运行环境 1.node下载&#xff0c;下载地址Node.js 2.配置淘宝镜像 npm config set registry https://registry.npmmirror.com/ 3.查看配置 npm config list 二.nvm安装-切…

什么是高性能计算岗位

最近有小伙伴咨询什么是高性能计算岗位。 1、什么是高性能计算 高性能计算&#xff0c;在很多招聘信息中也会被标注为 HPC&#xff0c;是 High Performance Computing 的缩写。 目前很多 AI 公司或者从事 AI 的部门招聘都有这个岗位需求&#xff0c;我从某聘上截取了几个有代…

面试常见问题:什么是进程? 什么是线程?进程和线程有什么区别?

1.什么是进程&#xff1f; 进程是操作系统中一个程序在执行过程中的一个实例&#xff0c;每个进程都有自己独立的地址空间&#xff0c;进程间不共享内存。它是程序运行的最小内存单元&#xff1b; 进程特点&#xff1a; 1> 需要占用独立的内存空间&#xff1b; 2>可以并…

R语言阶段复习一

创建一个长度为7的字符向量&#xff0c;元素为"A", "B", "C", "D", "E", "F", "G"&#xff0c;并命名为vec1。 创建一个因子&#xff0c;包含6个水果&#xff1a;"apple", "banana"…

Selenium-介绍下其他骚操作

Chrome DevTools 简介 Chrome DevTools 是一组直接内置在基于 Chromium 的浏览器&#xff08;如 Chrome、Opera 和 Microsoft Edge&#xff09;中的工具&#xff0c;用于帮助开发人员调试和研究网站。 借助 Chrome DevTools&#xff0c;开发人员可以更深入地访问网站&#xf…

C语言:一个数如果恰好等于除它本身外的因子之和,这个数就称为完数。例如6=1+2+3。编程找出1000以内的所有完数。

分析&#xff1a; 在主函数 main 中&#xff0c;程序首先定义三个整型变量 m、s 和 i&#xff0c;并用于计算和判断完数。然后使用 printf 函数输出提示信息。 接下来&#xff0c;程序使用 for 循环结构&#xff0c;从 2 到 999 遍历所有的数。对于每个遍历到的数 m&#xff0c…

ESP32-Web-Server编程- JS 基础 3

ESP32-Web-Server编程- JS 基础 3 概述 本示例演示通过 button 控件的 onclick 内联属性&#xff0c;实现在网页上点击按钮&#xff0c;切换 LED 灯图标的转变。 示例解析 前端设计 前端代码建立了一个 id 为 “imageLamp” 的图片对象。并建立两个按钮&#xff0c;设计两…

pinyin4j 汉字转拼音包括——多音字

一、Maven 依赖 <dependency><groupId>com.belerweb</groupId><artifactId>pinyin4j</artifactId><version>2.5.1</version> </dependency> 二、通过多音字字典匹配 2.1&#xff0c;先看效果效果 输入&#xff1a;我在重庆…