论文学习
文章平均质量分 92
kitsch0x97
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
论文学习_MegaVul: A C/C++ Vulnerability Dataset with Comprehensive Code Representations
我们通过收集通用漏洞与暴露数据库中的相关信息,并结合多个基于Git的代码托管平台中与CVE关联的开源项目,构建了一个名为MegaVul的大规模、综合性C/C++漏洞数据集。具体而言,我们从CVE数据库抓取了所有可获取的漏洞描述信息,并从28个Git类平台中提取了与漏洞相关的代码变更记录。在构建过程中,我们采用先进工具确保所提取代码提交的完整性,并通过四种不同的代码表示形式对数据进行了增强。原创 2025-11-10 17:01:07 · 713 阅读 · 0 评论 -
A Systematic Literature Review on Detecting Software Vulnerabilities with Large Language Models
随着大型语言模型(LLM)在软件工程领域的广泛应用,利用其进行软件漏洞检测的研究日益受到关注。然而,该领域发展迅速,导致研究格局较为零散,不同研究在系统设计和数据集使用方面存在差异,难以进行有效比较。这种碎片化现象使得学界难以清晰把握当前研究的前沿进展,也难以对相关成果进行系统分类和对比分析。为此,本文对基于LLM的软件漏洞检测研究进行了全面的系统文献综述(SLR)。我们分析了2020年1月至2025年6月期间发表的227项相关研究,从任务定义、输入表示、系统架构和适应技术等维度对其进行分类梳理。原创 2025-11-10 16:24:11 · 866 阅读 · 0 评论 -
论文学习_Precise and Accurate Patch Presence Test for Binaries
打补丁是应对软件漏洞的主要手段,关键在于确保补丁能够及时部署到所有受影响的软件中,然而现实中这一过程往往存在滞后。因此,无论对防御方还是攻击方而言,准确检测软件版本中是否存在安全补丁都至关重要。受安全分析师通常仅检查局部代码区域这一行为的启发,我们提出了FIBER系统,其核心设计正是基于这一观察。FIBER首先对开源安全补丁进行细粒度分析与比对,进而生成能够忠实反映补丁所引入关键语法与语义变化的二进制签名,并利用这些签名在目标二进制文件中进行精准搜索。原创 2025-11-01 12:10:01 · 1050 阅读 · 0 评论 -
论文学习_Towards Practical Binary Code Similarity Detection: Vulnerability Verification via Patch Semant
漏洞是软件安全的主要威胁。实践证明,二进制代码相似性检测方法能够有效检测因代码复用导致的二进制软件漏洞复发。然而,由于该类方法常将已修补函数误判为存在漏洞,且在二进制文件采用不同编译设置时检测效果不佳,其误报率普遍偏高。针对该问题,本文提出名为Robin的方法,通过过滤已修补函数来准确识别复发性漏洞。Robin基于轻量级符号执行技术,求解可触发漏洞相关代码路径的函数输入集合,并通过相同输入执行目标函数,依据其表现出漏洞或已修补的行为特征实现函数过滤。原创 2025-11-01 11:08:21 · 653 阅读 · 0 评论 -
论文学习_Similarity of binaries through re-optimization
我们提出一种可扩展的方法,用于在无调试信息的剥离二进制文件间建立相似性关联。二进制相似性分析的核心挑战在于:需识别经不同编译器、优化级别或目标架构编译的代码之间的共性,同时避免误报。克服该挑战对逆向工程及漏洞代码定位具有重要意义。我们提出的技术兼具可扩展性与精确性,其通过对外部过程片段进行重优化,避免传统重量级语义比对。该方法将二进制程序分解为可比片段,利用编译器优化器将其转换为规范化形式,从而通过轻量语法比较即可识别等价片段。原创 2025-10-31 18:01:27 · 316 阅读 · 0 评论 -
论文学习_Unleashing the power of pseudo-code for binary code similarity analysis
代码相似性分析因其在漏洞检测、恶意软件检测和补丁分析等领域的重要应用而受到广泛关注。由于多数情况下难以获取软件源代码,二进制级代码相似性分析成为研究重点。近年来,许多结合人工智能技术的BCSA研究致力于从二进制函数中提取语义信息,通过汇编代码、中间表示或控制流图等代码表征形式来衡量相似性。然而,由于编译器、目标架构及代码混淆技术的差异,同一源代码编译生成的二进制文件可能呈现显著不同,这成为现有方法获取鲁棒特征的主要障碍。本文提出名为UPPC的解决方案,通过利用二进制函数对应的伪代码作为输入应对这一挑战。原创 2025-10-31 17:51:46 · 569 阅读 · 0 评论 -
论文学习_DeepBinDiff: Learning Program-Wide Code Representations for Binary Diffing
二进制差异分析通过量化两个给定二进制文件之间的差异,并生成细粒度的基本块级匹配结果,已成为支撑多种关键安全分析的基础技术。然而,现有基于程序分析或机器学习的方法普遍存在准确率低、可扩展性差、匹配粒度粗糙或依赖大量标注数据等问题。本文提出一种无监督的程序级代码表示学习技术,通过联合利用代码语义信息与全程序控制流结构生成基本块嵌入表示,并进一步提出k跳贪婪匹配算法,基于生成的块嵌入寻找最优差异分析结果。我们实现了名为DeepBinDiff的原型系统,并通过大量二进制文件验证其效能与效率。原创 2025-10-31 17:34:27 · 887 阅读 · 0 评论 -
论文学习_Binary Code Representation With Well-Balanced Instruction Normalization
本文提出均衡指令规范化方法(WIN),用于改进二进制代码分析中的语义保留。研究发现二进制指令分布遵循齐普夫定律,函数包含上下文相关语义。基于BERT架构的DeepSemantic框架采用两阶段训练,实验表明WIN方法在代码相似性检测任务中性能显著优于现有技术,平均提升达49.8%和15.8%。该方案有效解决了传统方法因操作数泛化导致的信息丢失问题。原创 2025-10-31 17:09:43 · 794 阅读 · 0 评论 -
论文学习_Similarity Metric Method for Binary Basic Blocks of Cross-Instruction Set Architecture
基本块相似性分析是众多基于机器学习的二进制程序分析方法中的基础技术,其核心在于将基本块的语义信息映射为固定维度的向量,即基本块嵌入。然而,现有基本块嵌入方案存在两大局限性:一是嵌入向量所含语义信息有限,二是仅适用于单一指令集架构(ISA)。为突破这些限制,我们提出一种面向跨ISA的基本块嵌入解决方案,通过神经机器翻译(NMT)模型建立不同指令集架构间的关联。该嵌入模型能够将任意ISA的基本块丰富语义高效映射至固定维度向量。原创 2025-10-31 16:50:29 · 852 阅读 · 0 评论 -
论文学习_ACETest: Automated Constraint Extraction for Testing Deep Learning Operators
深度学习(DL)应用如今已十分普遍,因其能够协助完成多种任务。深度学习库是构建深度学习应用的基础,而深度学习算子作为深度学习库的重要组成部分,负责对多维数据(张量)进行计算。因此,深度学习算子中的缺陷可能带来严重影响。测试是检测深度学习算子缺陷的一种实用方法。为了有效测试深度学习算子,测试用例必须通过输入有效性检查,并能触及算子的核心功能逻辑。因此,提取输入验证约束对于生成高质量测试用例至关重要。现有技术要么依赖人工努力,要么依赖深度学习库API的文档来提取约束。原创 2025-10-31 11:07:05 · 1080 阅读 · 0 评论 -
论文学习_FidelityGPT: Correcting Decompilation Distortions with Retrieval Augmented Generation
反编译是一项关键技术,它将机器代码转换为人类可读的格式,从而在缺乏源代码的情况下促进分析与调试。然而,这一过程受到保真度问题(fidelity issues)的制约,可能严重影响反编译结果的可读性和准确性。现有方法(如变量重命名和结构简化)在一定程度上缓解了这些问题,但通常无法在复杂且具有实际意义的闭源二进制场景中实现充分的检测与修正。为了解决这一问题,我们提出了——一种旨在提升反编译代码准确性与可读性的全新框架。该框架通过系统地检测并修正反编译代码与原始源代码之间的不一致来提高整体保真度。原创 2025-10-30 11:26:17 · 898 阅读 · 0 评论 -
论文学习_DSFM: Enhancing Functional Code Clone Detection with Deep Subtree Interactions
函数级代码克隆检测在软件维护中具有重要意义。近年来,深度学习技术被引入,以提升函数级代码克隆检测器的性能。通过将每个代码片段表示为一个包含其程序语义的向量,可以检测出那些在语法上不同但在功能上相似的代码克隆。然而,现有的深度学习方法过于强调代码特征的学习,试图将代码片段中所有可识别的知识都压缩到单一向量表示中。原创 2025-10-20 20:17:00 · 594 阅读 · 0 评论 -
论文学习_Source Code is a Graph, Not a Sequence: A Cross-Lingual Perspective on Code Clone Detection
代码克隆检测具有挑战性,因为源代码可以用不同的语言、领域和风格编写。在本文中,我们提出,源代码本质上是图而非序列,基于图的方法比基于序列的方法更适合进行代码克隆检测。我们比较了两种最先进模型的性能:基于序列的模型CodeBERT和基于图的模型CodeGraphBCB和PoolC。我们展示了CodeGraph在这两个数据集上均优于CodeBERT,尤其是在跨语言代码克隆的检测上。根据我们所知,这是首个证明在识别用不同语言编写的相似代码时,使用图结构比使用序列更有效的研究。原创 2025-10-20 19:33:15 · 934 阅读 · 0 评论 -
论文学习_Asteria: Deep Learning-based AST-Encoding for Cross-platform Binary Code Similarity Detection
二进制代码相似性检测(Binary Code Similarity Detection, BCSD)是一项支撑多种安全应用的基础技术,如漏洞搜索、补丁分析和恶意软件检测。随着物联网(IoT)设备中关键漏洞数量的不断增加,跨架构进行漏洞相似代码检测的需求日益迫切。由于IoT硬件架构和软件平台种类繁多,相似性检测必须能够准确捕获代码片段的语义等价关系。然而,现有方法在语义相似性建模方面仍存在不足。我们注意到,函数的抽象语法树(Abstract Syntax Tree, AST)蕴含丰富的语义信息。原创 2025-10-20 16:26:34 · 619 阅读 · 0 评论 -
论文学习_PalmTree: Learning an Assembly Language Model for Instruction Embedding
深度学习在众多二进制分析任务中已展现出其优势,例如函数边界检测、二进制代码搜索、函数原型推断和值集分析等。在将深度学习应用于二进制分析任务时,我们需要确定应向神经网络模型输入何种数据。更具体地说,需要解决如何将一条指令表示为固定长度向量的问题。自动学习指令表示的想法颇具吸引力,但现有方案未能捕捉到反汇编代码的独有特征。这些方案忽略了指令内部复杂的结构,并且主要依赖控制流信息,而控制流中的上下文信息存在噪声且易受编译器优化影响。原创 2025-10-19 11:36:45 · 883 阅读 · 0 评论 -
论文学习_jTrans: jump-aware transformer for binary code similarity detection
二进制代码相似性检测(BCSD)在漏洞检测、软件组件分析和逆向工程等多个领域具有重要应用。最近的研究表明,深度神经网络(DNN)能够理解二进制代码的指令或控制流图(CFG),并支持BCSD。在本研究中,我们提出了一种新型的基于Transformer的方法,称为jTrans,用于学习二进制代码的表示。这是首个将二进制代码的控制流信息嵌入到基于Transformer的语言模型中的解决方案,通过使用一种新颖的跳转感知表示法以及重新设计的预训练任务。原创 2025-10-19 11:12:09 · 719 阅读 · 0 评论 -
论文学习_Improving cross-platform binary analysis using representation learning via graph alignment
跨平台二进制分析需要在不同平台之间共享二进制表示,以便进行特定的分析。然而,现有技术存在一些不足之处,要么是(i)针对单一平台,产生的平台间不对齐的嵌入,要么是(ii)未能捕捉反汇编二进制中丰富的上下文信息。我们提出了一种新型的基于深度学习的方法——XBA,旨在解决上述问题。为此,我们首先将二进制文件抽象为类型化图,称为二进制反汇编图(BDG),该图编码了反汇编二进制中不同实体的控制流和其他丰富的上下文信息,包括基本块、外部函数调用以及引用的字符串常量。原创 2025-10-19 10:31:03 · 683 阅读 · 0 评论 -
论文学习_Practical Binary Code Similarity Detection with BERT-based Transferable Similarity Learning
二进制代码相似性检测(BCSD)是许多应用的基础,包括软件抄袭、恶意软件分类和已知漏洞发现。然而,由于缺乏源代码中的语义信息,推断二进制代码的上下文意义是具有挑战性的。最近的进展通过利用深度学习架构的优势,能够更好地理解底层代码语义,并结合Siamese架构在BCSD中发挥优势。本文提出了BinShot,一个基于BERT的相似性学习架构,具有很好的可转移性,能够有效进行BCSD。我们通过一-shot学习(少样本学习的特例)来解决检测代码相似性的问题。原创 2025-10-19 10:10:22 · 1136 阅读 · 0 评论 -
论文学习_BBDetector: A Precise and Scalable Third-Party Library Detection in Binary Executables with Fin
第三方库(TPL)的复用可能引入易受攻击或恶意的代码,暴露软件潜在风险。因此,当发现或报告出问题的可复用组件时,必须识别第三方依赖关系并立即采取纠正措施以修复关键漏洞。然而,大多数现有方法仅依赖于语法特征,这导致识别准确度较低,并且在代码混淆技术的影响下检测性能大幅下降。此外,一些基于语义的方法面临效率问题。为了解决这些问题,我们提出并实现了一种更精确且可扩展的TPL检测方法——BBDetector。除了语法特征外,我们还考虑了丰富的函数级语义特征,并为每个函数形成特征向量。原创 2025-10-18 18:26:19 · 713 阅读 · 0 评论 -
论文学习_VulHawk: Cross-architecture Vulnerability Detection with Entropy-based Binary Code Search
代码重用在软件开发中广泛存在,但它也带来了大量的漏洞,威胁着软件安全。不幸的是,随着物联网(IoT)的发展和部署,代码重用的危害被放大。二进制代码搜索是一种有效的方式来发现这些隐藏的漏洞。然而,面对由不同编译器、不同优化级别、不同架构编译的IoT固件镜像,现有方法难以适应这些复杂的场景。在本文中,我们提出了一种新颖的中间表示函数模型,它是一个架构无关的跨架构二进制代码搜索模型。该模型将二进制代码提升为微代码,并通过补充隐式操作数和修剪冗余指令来保留二进制函数的主要语义。原创 2025-10-18 18:17:59 · 768 阅读 · 0 评论 -
论文学习_sem2vec : Semantics-Aware Assembly Tracelet Embedding
二进制代码相似性是许多安全和软件工程应用的基础。近年来的研究利用深度神经网络(DNN)来学习汇编函数的数值向量表示(即嵌入表示),从而在数值空间中实现相似性分析。然而,现有的基于DNN的技术通常仅捕获汇编代码的语法层、控制流层或数据流层信息,这些信息粒度过于粗糙,无法充分表示程序功能。这些方法在面对诸如编译器优化和代码混淆等复杂场景时,往往缺乏足够的鲁棒性。我们提出了sem2vec,一种从语义中学习的二进制代码嵌入框架。原创 2025-10-18 17:27:20 · 964 阅读 · 0 评论 -
论文学习_kTrans: Knowledge-Aware Transformer for Binary Code Embedding
二进制代码嵌入(BCE)在多种逆向工程任务中具有重要应用,如二进制代码相似性检测、类型恢复、控制流恢复和数据流分析。近期研究表明,Transformer模型能够理解二进制代码的语义,以支持下游任务。然而,现有模型忽略了汇编语言的先验知识。本文提出了一种基于Transformer的新方法,名为kTrans,用于生成知识感知的二进制代码嵌入。通过将显式知识作为额外输入提供给Transformer,并通过一种新颖的预训练任务融合隐式知识,kTrans为将领域知识融入Transformer框架提供了新的视角。原创 2025-10-18 15:44:32 · 747 阅读 · 0 评论 -
FASER: Binary Code Similarity Search through the use of Intermediate Representations
能够识别跨架构软件中感兴趣的函数,在进行恶意软件分析、软件供应链安全或漏洞研究时都是非常有用的。跨架构二进制代码相似性搜索已经在许多研究中得到探索,并使用了多种不同的数据来源来实现其目标。通常使用的数据来源包括从二进制文件中派生出的常见结构,如函数控制流图、二进制级调用图、反汇编过程的输出或动态分析方法的输出。其中一个较少受到关注的数据来源是二进制中间表示。二进制中间表示具有两个有趣的特性:它们本质上是跨架构的,并且明确地编码了函数的语义,以支持后续的使用。原创 2025-10-18 11:47:37 · 475 阅读 · 0 评论 -
论文学习_Virtual Compiler Is All You Need For Assembly Code Search
汇编代码搜索对于减轻逆向工程师的负担至关重要,使其能够在庞大的二进制程序中通过自然语言快速定位特定函数。尽管这一任务具有重要意义,但由于构建高质量数据集的复杂性,它仍面临诸多挑战。本文提出训练一个大型语言模型(LLM)来模拟通用编译器的思路。我们通过利用Ubuntu软件包,构建了一个包含200亿个标记的数据集,并在此基础上继续预训练CodeLlama,使其成为一个虚拟编译器(ViC),能够将任何编程语言的源代码编译为汇编代码。原创 2025-07-01 11:18:18 · 733 阅读 · 0 评论 -
论文学习_A Cross-Architecture Instruction Embedding Model for NLP-Inspired Binary Code Analysis
在处理诸如专有软件和病毒这类。原创 2025-05-13 19:56:40 · 1063 阅读 · 0 评论 -
论文学习_Understanding the AI-powered Binary Code Similarity Detection
近年来,AI驱动的二进制代码相似性检测(Binary Code Similarity Detection, 简称 BinSD)已广泛应用于程序分析领域。该技术通过神经网络将复杂的二进制代码比较问题转化为代码嵌入向量之间的距离度量。然而,由于现有研究在嵌入策略、评估方法、运行环境以及使用的基准数据集等方面存在较大差异,导致我们难以量化评估 BinSD 在现实应用中的解决程度。此外,当前对日益复杂的嵌入神经网络结构及多样化评估方法缺乏深入系统的研究,已成为制约 AI 驱动 BinSD 发展的关键因素。原创 2025-05-13 13:15:06 · 693 阅读 · 0 评论 -
论文学习_SWE-bench: Can Language Models Resolve Real-World GitHub Issues?(ICLR20204,普林斯顿)
当前语言模型的能力发展已超越现有评估体系的覆盖范围,因此必须针对其技术前沿开展系统性研究以指导未来方向,<研究背景>。我们发现软件工程领域具有场景丰富性、挑战持续性和应用真实性等特点,能够为下一代语言模型提供多维度的能力验证平台,<研究动机>。为此,我们构建了SWE-Bench评估框架——该框架基于12个主流Python开源项目中的实际开发场景,从GitHub真实问题库中提取了2,294个具有完整代码库环境及问题描述的软件工程任务(对应已提交的拉取请求),要求语言模型通过代码编辑解决问题,<研究内容>。此类原创 2025-03-03 18:13:50 · 1303 阅读 · 0 评论 -
论文学习_SAFE: Self-Attentive Function Embeddings for Binary Similarity
对于两个二进制函数 和 是相似的(即),如果它们是通过不同的编译器从相同的源代码编译得到的结果。本质上,一个编译器是一种确定性转换,能够将源代码映射为相应的二进制函数。在本文中,我们将编译器视为特定的软件(例如。原创 2024-11-26 20:49:56 · 815 阅读 · 0 评论 -
论文学习_Efficient Algorithms for Personalized PageRank Computation: A Survey
PPR 代数定义:我们用 表示相对于源节点的 PPR 向量,它为每个分配一个接近度得分。 被定义为以下线性方程的唯一解:其中是一个预定义的参数,称为“传送概率”(又称“衰减因子”)。在这里,指示向量被称为定义 PPR 时的“偏好向量”。为了证明 是定义良好的,需要注意矩阵保证是非奇异的,因为它是严格列对角占优的。因此,等于:这证明了的存在性和唯一性。PPR 的更一般定义允许方程中的偏好向量为任意概率分布向量,而不仅限于指示向量。原创 2024-11-13 17:43:08 · 1393 阅读 · 0 评论 -
论文学习_BinaryAI: Binary Software Composition Analysis via Intelligent Binary Source Code Matching
许多现有的二进制到二进制 SCA 技术集成了先进的基于嵌入的方法来检测二进制文件之间的代码相似性,并根据 SCA 数据库进一步识别重用的库。最终,BinaryAI 利用匹配的源函数来计算重用函数的比率,作为收集的 TPL 与目标二进制文件之间的相似度得分,进一步识别相似度超过预定义阈值的组件以及潜在的安全风险。同时,现有的从 C/C++ 源代码中提取字符串的技术本质上并不稳健,例如,通过连接宏定义字符串和常量字符串生成的字符串丢失,从而与从相应 TPL 中的二进制文件中提取的字符串文字不匹配,原创 2024-08-20 22:02:01 · 1100 阅读 · 0 评论 -
论文学习_CLAP: Learning Transferable Binary Code Representations with Natural Language Supervision
这在少样本学习场景和零样本学习场景中尤其成问题,在少样本学习场景中,模型必须适应具有最少示例的新任务,在零样本学习场景中,模型遇到在训练期间从未见过的任务。具体来说,我们可以使用自然语言(即代码语义的解释)作为监督信号,通过将二进制代码(即汇编代码)与预训练对齐来学习二进制代码的表示。生成的模型很可能获得封装更多有关二进制代码的语义信息的表示。同样,我们可以将二进制代码概念化为一种类似的模态,并探索二进制代码和自然语言之间的一致性,以开发具有更好可移植性的语义上更深刻的汇编代码表示(自然语言↔️汇编代码。原创 2024-08-07 11:39:36 · 964 阅读 · 0 评论 -
论文学习_ERS0: Enhancing Military Cybersecurity with AI-Driven SBOM for Firmware Vulnerability Detection
SBOM 作为一种战略工具,通过在供应链中引入透明度元素来减轻这些风险。通过提供系统中使用的所有软件组件的全面且详细的列表(包括其来源、版本和依赖项),SBOM 可以仔细检查和验证每个组件的安全性和完整性。这种程度的透明度对于识别和解决在复杂的供应链关系网络中可能被忽视的漏洞至关重要。作为一种主动方法,SBOM 在防止供应链攻击方面特别有价值,因为它可以及早检测到软件组件中的任何异常或未经授权的更改。原创 2024-08-04 19:55:29 · 801 阅读 · 0 评论 -
论文学习_Identifying Open-Source License Violation and 1-day Security Risk at Large Scale
论文名称 发表时间 发表期刊 期刊等级 研究单位 Identifying Open-Source License Violation and 1-day Security Risk at Large Scale 2017年 CCS CCF A 佐治亚理工学院 1. 引言原创 2024-07-26 18:13:14 · 300 阅读 · 0 评论 -
论文学习_Getafix: learning to fix bugs automatically
Getafix 由三个主要组件组成,分为学习阶段和预测阶段。在下文中,论文将在高层次上描述它们的功能和挑战,然后在后面的部分中进行更详细的描述。上图概述了该方法。在学习阶段,一组错误及其修复对作为训练数据提供给 Getafix。因为训练数据可以服务于与特定信号相关的过去人类代码更改的任何集合,例如静态分析警告、类型错误、lint 消息,或者只是在人类代码审查期间建议更改的事实。论文的评估侧重于将静态分析警告作为信号,即所有错误和修复均已被静态分析器检测为特定错误类别的实例,例如潜在的空取消引用。原创 2024-07-10 22:31:52 · 797 阅读 · 0 评论 -
论文学习_Path-sensitive code embedding via contrastive learning for software vulnerability detection
上图概述了论文的框架,包括训练过程和预测过程。原创 2024-07-10 20:53:02 · 1034 阅读 · 0 评论 -
论文学习_VULGEN: Realistic Vulnerability Generation Via Pattern Mining and Deep Learning
下图概述了论文的技术设计,VULGEN由三个主要技术模块/阶段组成:模式挖掘、本地化学习和漏洞注入,以两种模式工作。在模式挖掘/本地化学习模式中,VULGEN从给定的现有易受攻击程序样本及其固定(即正常)版本的语料库中挖掘现实世界漏洞的模式,从而诱导代码编辑(即逆转相应的修复),然后学习定位漏洞可能存在的位置。借助得到的编辑模式和经过训练的定位模型,在后续漏洞注入模式下,VULGEN将给定的正常程序作为输入,查询模型以获得候选注入位置并应用兼容的模式,从而生成易受攻击的程序。原创 2024-07-10 17:39:14 · 1075 阅读 · 0 评论 -
论文学习_An Empirical Study of Deep Learning Models for Vulnerability Detection
近年来,深度学习漏洞检测工具取得了可喜的成果。最先进的模型报告了 0.9 的 F1 分数,并且优于静态分析器。结果令人兴奋,因为深度学习可能会给软件保障带来革命性的变化。因此,IBM、谷歌和亚马逊等行业公司非常感兴趣,并投入巨资开发此类工具和数据集。:尽管深度学习漏洞检测在前景上很有潜力,但目前尚未达到计算机视觉和自然语言处理的水平。目前大部分研究重点是尝试新兴的深度学习模型,并将其应用于类似 Devign 或 MSR 数据集的数据集。原创 2024-07-10 15:52:24 · 1704 阅读 · 0 评论 -
论文学习_VERI: A Large-scale Open-Source Components Vulnerability Detection in IoT Firmware
在本节中,论文描述用于检测固件中 OSC N-Day 漏洞的 VERI 高级架构。论文所提的系统 VERI的概述如下图所示,它由三部分组成。VERI的输入是整个固件映像,输出是固件的易受攻击的OSC 及其 N-Day 漏洞。OSC 版本识别:VERI 使用轻量级符号执行和静态分析自动识别 OSC 版本。研究团队解压固件镜像,然后从中发现所有可能的 OSC,作为后续分析的对象。给定 OSC,研究团队恢复控制流图(CFG)和调用图(CG)。然后研究团队定位入口点和候选版本点。原创 2024-07-09 20:25:15 · 1001 阅读 · 0 评论 -
论文学习_V1SCAN: Discovering 1-day Vulnerabilities in Reused C/C++ Open-source Software Components Using
这篇论文提出了一种新的方法 V1SCAN,用于精确地发现重用的 C/C++ 开源软件(OSS)组件中存在的1天漏洞。论文指出,现有的基于版本和基于代码的方法在检测受传播漏洞的软件时存在局限性,容易产生大量的误报和漏报。作者提出,通过结合版本和代码两种方法,并利用代码分类技术,可以克服现有方法的缺陷。评估结果显示,与现有方法相比,V1SCAN 在检测 GitHub 上 10 个流行的 C/C++ 软件时发现了50% 更多的漏洞,精确率达 96%,召回率达 91%。V1SCAN 还显著降低了误报率和漏报率。原创 2024-07-09 17:34:15 · 862 阅读 · 0 评论 -
论文学习_MOVERY: A Precise Approach for Modified Vulnerable Code Clone Discovery from Modified Open-Sour
MOVERY 通过两个阶段来解决这一问题。第一阶段生成漏洞和修复签名,考虑了最早的易受攻击函数并仅提取核心的易受攻击和修复代码行,以应对 OSS 的内部和外部修改。第二阶段使用这些签名在目标软件中发现 VCC,并采用选择性抽象技术来精确发现外部修改的 VCC。原创 2024-07-09 17:12:56 · 1072 阅读 · 0 评论
分享