论文
文章平均质量分 89
看论文的笔记
破落之实
Into the Night.
展开
-
【论文分享】One Fuzz Doesn’t Fit All: Optimizing Directed Fuzzing via Target-tailored Program State...
本文简单介绍下ACSAC 2022上一篇定向模糊测试的文章SieveFuzz。原创 2023-01-09 20:46:52 · 618 阅读 · 0 评论 -
【论文分享】WindRanger: A Directed Greybox Fuzzer driven by Deviation Basic Blocks
定向模糊测试WindRanger的阅读笔记。原创 2022-10-17 19:52:19 · 1303 阅读 · 9 评论 -
【论文分享】Effective Seed Scheduling for Fuzzing with Graph Centrality Analysis
来自S&P 2022的一篇利用图中心性来指导模糊测试种子调度的文章。原创 2022-10-11 19:03:13 · 1083 阅读 · 0 评论 -
【论文分享】LibAFL: A Framework to Build Modular and Reusable Fuzzers
AFL是软件安全测试领域的一个重要里程碑,使得fuzzing成为了一个主要的研究领域,并带动了大量的研究去提高fuzzing流水线上的各个方面。许多研究是通过fork AFL的代码来进行实现的。虽然一开始看起来挺合适的,但是要把多种fork合并到一个fuzzer,需要大量的工程开销,阻碍了不同技术客观和公正的评估。严重碎片化的fuzzing的生态阻止了研究者组合多种技术来实现新的原型系统。为了解决这个问题,这篇文章提出了LibAFL,一个框架来构建模块化和可重用的fuzzer。...原创 2022-08-30 16:09:33 · 1792 阅读 · 0 评论 -
【论文分享】An Empirical Study on the Effectiveness of Static C Code Analyzers for Vulnerability Detection
看到gossip的推送,所以细细读了一下这篇文章,感觉还是挺有收获的。原创 2022-07-29 16:51:40 · 1006 阅读 · 0 评论 -
【论文分享】Fuzzing: A Survey for Roadmap
ACM computing survey 的上一篇关于fuzzing的论文阅读记录。这篇文章很适合刚入门模糊测试或者想在模糊测试做研究的人阅读!强烈推荐看看原文!原创 2022-07-05 20:34:07 · 2049 阅读 · 0 评论 -
S&P 2022论文泛读
粗略扫了S&P 2022每个介绍视频,把自己觉得有意思,和自己方向相关的论文给整理到一块~原创 2022-07-05 09:54:57 · 3655 阅读 · 0 评论 -
如何写更好的安全文章?--学习笔记
S&P 2022一篇论文的附件D “如何写好安全论文”的整理总结原创 2022-06-05 11:31:43 · 340 阅读 · 0 评论 -
【论文分享】Sequence Directed Hybrid Fuzzing
这篇文章发表于CCF B类会议SANER 2020,是ICPC 19年一篇工作的改进版Sequence coverage directed greybox fuzzing主要的变化是原来是单纯的fuzz,现在是hybird Fuzz,也就是加入了符号执行来作为辅助。这篇工作要解决的问题是:现有的定向模糊测试没有在effectness和efficiency上达到很好的平衡,也很难基于随机变异来覆盖复杂的路径。方法文章主要是在能量调度算法和种子选择策略做了修改。能量调度算法是根据目标序列和种子执行轨迹的原创 2022-02-17 19:27:21 · 851 阅读 · 0 评论 -
【论文分享】Sequence Coverage Directed Greybox Fuzzing
文章目录简介背景方法结果True positives verificationCrash reproductionBug exposure总结本文介绍一篇来自CCF B类会议 ICPC 2019的关于定向模糊测试的文章。简介现有的定向模糊测试不足够高效。定向符号执行,比如BugRedux,花很多时间在很重的程序分析和约束求解上。定向模糊测试,比如AFLGo,在运行时做得很好。但是插桩过程中的距离计算花费了很大的开销。这篇文章提出了一种序列覆盖率的定向模糊测试,能够按顺序到达目标行。并且和AFLG原创 2022-02-16 13:46:41 · 1129 阅读 · 0 评论 -
【论文分享】 Regression Greybox Fuzzing
CCS 2021 的一篇关于模糊测试的文章,主要是利用git commit 的日志来去指导模糊测试,去测试最近变化过和变换频繁的代码区域。简介What you change is what you fuzz !在OSSFuzz里生成的报告里,大约77%的漏洞报告都是回归型的。对于一个新加进来的项目,每天可能会有2-3个漏洞报告。在刚开始这段漏洞爆发期过去后,后续每周有漏洞的频率大概是一周会有3-4个bug。这种常数的增长速率只能用回归率来解释。作者画了个漏洞是回归的概率与漏洞数目的图,从图上可以看出.原创 2022-01-22 15:57:47 · 1216 阅读 · 0 评论 -
Usenix 2022 夏季论文简单分类
最近发现Usenix 2022夏季的paper已经出了,所以扫扫看有没有有趣的文章,对文章进行了简单的分类。基于个人知识分类,可能分类不是那么准确。也可以等usenix 2022上了dblp看官方的分类。文章目录二进制fuzz软件安全物联网声音相关侧信道可信计算内核云安全嵌入式设备AI模型安全驾驶系统移动安全LTE(通信安全?)密码学网络安全Web安全隐私未分类二进制DeepDi: Learning a Relational Graph Convolutional Network Model on.原创 2022-01-16 20:14:05 · 6609 阅读 · 0 评论 -
【论文分享】SLAKE: Facilitating Slab Manipulation for Exploiting Vulnerabilities in the Linux Kernel
Usenix 2019年一篇关于内核堆布局自动化构造的文章文章目录简介:背景研究意义难点研究范围假设研究目标SLAB/SLUB的一些背景知识关键挑战哪个内核对象适合利用?如何释放/分配对象和解引用相应的指针?如何系统地调整系统调用来获取理想的内存布局?方法识别对象和系统调用找系统调用匹配漏洞能力调整SLAB布局实现静态分析动态分析结果识别系统调用可利用性评估相关工作讨论支持更多的OS其他的分配器对象识别利用方法漏洞能力总结简介:为了确定内核漏洞的可利用性,安全分析人员通常需要操作slab,然后描述.原创 2022-01-15 09:57:34 · 3256 阅读 · 0 评论 -
【论文分享】Learning to Explore Paths for Symbolic Execution
CCS 2021年的一篇用监督学习优化符号执行路径选择的论文。简介符号执行是很强力的技术,能够生成测试样例来让程序执行想要的路径。然而,符号执行的扩展性受限于路径爆炸问题。因此,要提高符号执行的有效性,就要让符号执行能够选择正确的符号状态。文章提出了一种基于学习的技术,能够有效地选择合适的状态来缓解路径爆炸问题。learch能够直接估计每个状态对最大化覆盖率这一目标的贡献。而不是像传统的启发式方法基于简单的策略。而且,learch利用了现有的启发式方法来生成训练数据和提取特征。因此,learch从.原创 2022-01-15 09:34:27 · 608 阅读 · 0 评论 -
【论文分享】Facilitating Vulnerability Assessment through PoC Migration
CCS 2021 ,来自复旦白泽的论文论文链接:https://dl.acm.org/doi/abs/10.1145/3460120.3484594开源,需要身份认证:https://seclab-fudan.github.io/VulScope/简介:有研究表明,MITRE/NIST的漏洞报告,关于漏洞版本的信息有缺失,使得没有报告的漏洞版本存在很大的安全隐患。这篇文章,通过基于fuzz的方法去解决这个问题。技术上来说,这个方法首先收集软件参考版本的崩溃路径,然后使用这个路径去指导目标版本程序的.原创 2021-12-26 21:25:21 · 2421 阅读 · 0 评论 -
【论文分享】Reinforcement Learning Guided Symbolic Execution
SANER 2020上的一篇Poster简介符号执行是软件测试和程序分析里一个很重要的技术。路径爆炸是符号执行里一个很严重的问题。为了缓解这个问题,文章提出了一种基于Q-learning的算法来指导符号执行。方法Q-learning算法是一种model-free off-policy的算法。给定一个状态,算法能够估计一个动作的长期expected return。这个expected return 也叫做Q-value。Q-value越高,意味着动作AtA_{t}At在状态StS_{t}St上.原创 2021-12-13 19:01:33 · 776 阅读 · 0 评论 -
【论文分享】ARBITRAR: User-Guided API Misuse Detection
S&P 2021 ,一篇检查API误用的工作开源于:https://github.com/petablox/arbitrar简介软件的API因为他的多样性和复杂性很容易导致编程错误,而且也很难用分析工具检查出来。这类检查API误用的工具要么需要专家去设置精确的API规范,要么假设API的使用是遵守一些简单的规则,而这些规则可以自动地从代码中提取。这种方法的准确性很差。文章提出的方法可以与用户交互来区分目标API是合法还是非法使用。具体来说是通过一种主动学习的算法来计算API使用非法的概率.原创 2021-12-05 14:08:37 · 795 阅读 · 0 评论 -
NDSS 2021 论文泛读
会议论文列表:https://dblp.uni-trier.de/db/conf/ndss/ndss2021.html只挑了几个感兴趣的session过了一遍,还是发现了不少有意思的文章。文章目录程序分析模糊测试侧信道智能家居软件防御嵌入式安全可信计算程序分析Towards Measuring Supply Chain Attacks on Package Managers for Interpreted Languages.简介:qualitative assessment!(定性评估)包管理原创 2021-10-22 09:30:23 · 9927 阅读 · 2 评论 -
【论文分享】FCEP: A Fast Concolic Execution for Reaching Software Patches
这篇文章来源于CCF的C类会议SEKE 2021。文章主要介绍了一种快速到达软件补丁的混合执行技术。看这篇文章主要是看他如何快速生成到达补丁附近的输入。背景软件更新在带来新功能的同时,也有可能引入新的bug。因此,安全研究人员会在软件发布前测试更新的软件。许多研究者都在开发新技术来实现高覆盖率的测试组件。文章提到现有的concolic execution不足以在真实程序里快速,自动地生成测试样例。本文提出了一种基于concolic execution的方法来确保补丁的合法性和可靠性。方法输入包含两个原创 2021-09-17 11:10:58 · 511 阅读 · 0 评论 -
【论文分享】HAEPG: An Automatic Multi-hop Exploitation Generation Framework
来源会议:DIMVA 2020,虽然是个C会,但文章内容挺长的,有21页单栏。简介采用符号执行和专家知识结合的方法,针对CTF程序的堆漏洞自动化利用的文章。考虑的防御机制包含NX和Full RELRO。使用到的信息包含PoC,漏洞程序和先验专家知识。2个贡献:利用很少能力的堆漏洞对程序和堆分配器进行建模方法分为三个步骤:堆操作建模漏洞分析利用生成堆操作建模生成控制流图,标记堆操作的函数调用。主要对三类原语进行标记:allocation:分配deallocation:.原创 2021-08-19 17:09:01 · 315 阅读 · 0 评论 -
ISSTA 2021论文泛读记录
会议网址:https://dl.acm.org/doi/proceedings/10.1145/3460319主要看fuzzing、dynamic analysis、symbolic execution、testing、binary analysis、bugs and analysis这几个session。其他的session,大家感兴趣可以去上面的网址看。fuzzingSeed selection for successful fuzzing类似sok的工作,系统地对模糊测试中的种子选择问题做了原创 2021-07-18 17:09:18 · 1172 阅读 · 2 评论 -
【论文分享】Validating Static Warnings via Testing Code Fragments
这篇论文来自ISSTA 2021论文地址:https://dl.acm.org/doi/10.1145/3460319.3464832简介静态分析是一个很重要的找bug和漏洞的方法。然而检查和验证static warning是很有挑战性并且很耗时的。在这篇论文里,我们提出了一个新的方法来验证warning。文章提出了一种打补丁的算法能够语法合法,保留语义的可执行代码片段。同时,还使用fuzzer,klee,valgrind来测试代码片段。评估部分,采用12个真实的C程序和2个静态分析工具提取的1955原创 2021-07-18 10:52:41 · 282 阅读 · 0 评论 -
【论文分享】Precisely Characterizing Security Impact in a Flood of Patches via Symbolic Rule Comparison
文章目录简介背景Overviewimplementation预处理识别安全操作识别vulnerable operations映射patched 和unpatched version约束的符号执行引擎评估其他可能有用的资料简介这篇论文来自NDSS 2020,论文的目标是:给定一个补丁以及目标程序,SID自动确定补丁能否修补安全影响。(评估补丁)A bug is a vulnerability if it has security impacts when triggered.确定一个bug的安全影响对原创 2021-06-27 20:57:01 · 379 阅读 · 0 评论 -
【论文分享】ARCUS: Symbolic Root Cause Analysis of Exploits in Production Systems
Usenix 2021 的一篇root cause analysis的文章。文章目录简介几个疑惑威胁模型what if questionARCUS是如何定位root cause的?结果局限性总结简介运行监控器会标记可能存在攻击的进程。然而这些攻击的特征(比如非法的控制流转移)可能会在root cause(比如缓冲区溢出)的很后面才发生,而此时开发者看到的漏洞报告里的快照是执行了漏洞指令后的很久的状态。为了给系统管理员更精确的报告,文章提出了ARCUS,一个自动化的框架去实现root cause a.原创 2021-05-25 09:31:04 · 483 阅读 · 0 评论 -
【论文分享】SMOKE: Scalable Path-Sensitive Memory Leak Detection for Millions of Lines of Code
论文名:SMOKE: Scalable Path-Sensitive Memory Leak Detection for Millions of Lines of Code来源会议:ICSE 2019来源团队:香港科技大学(源伞团队)简介尽管过去几十年工业界和学术界都花很大努力在检测内存泄露漏洞上,但是在工业界级的代码量上的效果一直不是很好。现有的工作存在一个很难解决的悖论问题——牺牲扩展性换取高精度,或者扩展性好,但精度不高。这篇文章用了staged approach(分步骤)来解决这个问题。第原创 2021-04-26 13:48:29 · 605 阅读 · 0 评论 -
【论文分享】Chopped Symbolic Execution
论文名:Chopped Symbolic Execution来源会议:ICSE 2018论文下载地址:https://dl.acm.org/doi/10.1145/3180155.3180251文章目录简介要解决的问题如何解决的问题具体实现结果如何Failure ReproductionTest Suite Augmentation总结简介符号执行是很强大的程序分析技术可以系统地去探索程序的多条路径。然而,尽管技术进步了很多,但符号执行仍然难以到达很深的程序路径,由于路径爆炸问题和约束求解的限制。原创 2021-04-15 17:23:00 · 499 阅读 · 0 评论 -
【论文分享】Automatic Buffer Overflow Warning Validation
来源期刊:JOURNAL OF COMPUTER SCIENCE AND TECHNOLOGY(JCST)是个CCF b期刊最早发在:ASE 2016上(CCF A会议)简介静态缓冲区溢出检测会有很多误报,因为缺少很多运行时信息。要去手工检查每个静态警告很费时间。这篇文章提出了BovInspector,一个可以自动验证静态缓冲区溢出警告的框架,并且能够半自动修复漏洞。给定程序源码和警告信息,bovinspector首先去做warning reachability analysis,然后在警告信息指导原创 2021-04-15 17:22:12 · 234 阅读 · 0 评论 -
【论文分享】On the Efficiency of Test Suite based Program Repair
今天给大家推荐的是软工会议ICSE 2020的一篇关于JAVA程序漏洞自动修补的综述。论文名:On the Efficiency of Test Suite based Program Repair–A Systematic Assessment of 16 Automated Repair Systems for Java ProgramsTest-based 的程序漏洞自动修补是过去十年软工研究的热点。虽然最近的文献解决了一些benchmark的bug,但是一些研究认为目前先进的研究仍然还有局限原创 2021-03-12 21:58:59 · 145 阅读 · 0 评论 -
【论文分享】Finding Cracks in Shields: On the Security of Control Flow Integrity Mechanisms
来自清华的CCS2020的一篇关于CFI评估的论文开源于:https://github.com/vul337/cfi-eval简介控制流完整性是一种很好地防御控制流劫持攻击的防御机制。但是这些机制并没有小心地去评估,导致这些机制到底好不好还是个问题。这篇论文就去测量了理论和实际的安全到底差多少(gap)。首先,提出了CSan的方法去测量运行时由CFI保护的间接控制跳转指令(ICT)的跳转目标(枚举法)。然后,提出了CBench,来验证CFI对于经典攻击的有效性。对12个开源的CFI机制(没有CC.原创 2020-12-10 17:07:46 · 750 阅读 · 1 评论 -
CCS2020论文泛读记录
CCS '20: Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security我只挑了一些我感兴趣的文章简单过了一下,如果这里没有你感兴趣的可以去这里链接看看还有没有你感兴趣的:https://dl.acm.org/doi/proceedings/10.1145/3372297文章目录二进制相关IOT 固件等模糊测试与可信执行环境内核安全Exploitation and Defenses后量.原创 2020-12-02 11:09:44 · 5430 阅读 · 3 评论 -
printf oriented programming 工具介绍
这篇文章主要针对Usenix security 2015的control flow bending这篇论文提到的工具(printbf – Brainfuck interpreter in printf)进行简单的介绍开源链接:https://github.com/HexHive/printbf获取源码git clone https://github.com/HexHive/printbf进入到./src文件夹下make就能生成一堆demo文件。查看Makefile文件,就知道这个pri.原创 2020-11-08 15:43:00 · 220 阅读 · 0 评论 -
如何找到论文里的开源工具
刚上研不久,研究论文时就想看看代码学习学习。于是怎么找论文的开源工具就是个很复杂的问题了。方法论文里直接给出了。可以直接在论文pdf搜索github,available等关键字直接定位到开源链接。上github上搜索论文名字,也可能搜到。搜作者的个人主页,主页上一般会有开源的链接。目前我主要依赖这三种方式来找,大家如果有别的方法,欢迎在评论区分享~实例这篇文章SpecROP: Speculative Exploitation of ROP Chains在conclusion部分就提到.原创 2020-11-05 15:40:11 · 1330 阅读 · 0 评论 -
【论文分享】Control-Flow Bending: On the Effectiveness of Control-Flow Integrity
Usenix 2015的绕过CFI的一篇论文。简介CFI是针对控制流劫持攻击的防御机制。最近的研究表明,粗粒度的CFI不足以阻止这种攻击,而细粒度的CFI公认为安全的。作者认为评估CFI的有效性是很重要的,而普通的评估不能评估CFI的有效性。作者对最精确的静态CFI进行了评估,并且发现细粒度CFI存在一些安全问题。基于一个叫Control-Flow Bending(CFB)的非控制数据攻击,文章展示了一个攻击者如何利用内存破坏类漏洞和标准库的调用来在内存上实现图灵完备的计算。文章使用这种攻击技术来.原创 2020-11-03 10:47:43 · 608 阅读 · 2 评论 -
【论文分享】Dowser: a guided fuzzer to find buffer overflow vulnerabilities
这篇论文是Usenix 2013的一篇文章,主要是一个检测缓冲区溢出漏洞的工作。复旦白泽战队也对这一文章作过解读:https://www.jianshu.com/p/cf0c71f7d625简介Dowser是一个导向的模糊测试工具,其结合了污点追踪、程序分析和符号执行去找到程序逻辑历得缓冲区溢出漏洞。很显然,复杂的指针运算比数组访问更容易触发内存错误。更重要的是,越复杂的漏洞其指针运算也就越复杂。这就导致使用现有的随机模糊测试和静态分析很难找到复杂的bug。Dowser根据指针的复杂性对指针解引.原创 2020-10-26 15:27:41 · 332 阅读 · 0 评论 -
【论文分享】AURORA: Statistical Crash Analysis for Automated Root Cause Explanation
这篇论文是来自Usenix Security 2020 的关于分析crash的论文。文章目录简介背景难点方法结果局限性总结简介软件测试的自动化技术在实践中发现了很多crash。分析这些crash的根源是很耗时的。为了解决这个问题,学术界提出了各种方法来解决,比如逆向执行,后向污点分析。然而,这些方法局限于特定的错误种类,或者只给分析人员提供汇编指令,而没有上下文信息或者关于错误的解释。这篇文章提出了一种自动化分析的方法,不仅能识别导致二进制可执行文件崩溃的crash的根源,而且能提供程序错误行为.原创 2020-10-19 17:22:06 · 994 阅读 · 4 评论 -
【论文分享】Finding Bugs Using Your Own Code: Detecting Functionally-similar yet Inconsistent Code
论文:Finding Bugs Using Your Own Code: Detecting Functionally-similar yet Inconsistent Code今天分享的论文是美国东北大学卢龙教授团队在usenix security2021发的一篇关于机器学习检测漏洞的论文文章目录简介背景方法结果局限性总结简介概率分类在检测已知类型的漏洞取得了很好的效果。但是这些方法需要很大的数据量来训练模型。论文提出了新的基于机器学习的漏洞检测技术。这种技术不需要外部代码或样例来训练。而是从.原创 2020-10-17 16:27:02 · 870 阅读 · 0 评论 -
【论文分享】Sys: a Static/Symbolic Tool for Finding Good Bugs in Good (Browser) Code
今天分享的Usenix 2020的Sys: a Static/Symbolic Tool for Finding Good Bugs in Good (Browser) Code这篇论文。这篇论文的作者也是KLEE这个很牛逼工具的作者。目前该论文的工具已开源在github上:https://github.com/PLSysSec/sys在网上也看到大佬写的关于这篇论文的阅读报告(写的比我详细):https://ycdxsb.cn/bc8e474f.html文章目录简介核心方法用sys去找bug结果.原创 2020-10-16 17:15:05 · 680 阅读 · 0 评论 -
【论文分享】Automatic Generation of Data-Oriented Exploits
论文题目:Automatic Generation of Data-Oriented Exploits这篇论文来自于Usenix 2015文章目录简介:背景研究意义关键技术和挑战研究问题贡献方法内存错误影响分析安全敏感数据识别stitch 候选选择候选过滤实现结果有效性搜索空间的减少性能相关工作数据流攻击相关工作漏洞自动化利用生成数据流攻击的防御总结简介:由于针对控制流劫持的防御机制在广泛应用,控制流导向的漏洞利用变得更加复杂了。一个备选方案是,针对非控制数据进行攻击,就无需转移控制流。虽然数据.原创 2020-08-09 13:52:13 · 372 阅读 · 0 评论 -
【论文分享】Unleashing MAYHEM on Binary Code
论文题目:Unleashing MAYHEM on Binary Code文章目录简介:背景研究意义挑战贡献方法实现结果有效性可扩展性真实应用中的符号内存问题覆盖率和AEG的比较相关工作讨论简介:提出了mayhem系统,能够自动化地在二进制程序中找到可利用的漏洞。mayhem报告出的漏洞都会附带一个获取shell的exp。Mayhem工作在二进制程序上,而不需要debug信息。为了能够在二进制级别实现自动化利用,mayhem解决了两个挑战:一是,管理执行路径而不需要耗尽内存,二是推断符号化内存标记.原创 2020-07-26 09:30:34 · 618 阅读 · 0 评论 -
【论文分享】Unleashing Use-Before-Initialization Vulnerabilities in the Linux Kernel Using Targeted Stack
论文完整题目:Unleashing Use-Before-Initialization Vulnerabilities in the Linux Kernel Using Targeted Stack Spraying这是一篇关于内核未初始化漏洞自动利用的论文,发表在NDSS2017上文章目录简介:背景研究意义挑战方法Deterministic Stack SprayingExhaustive Memory Spraying实现结果栈喷射的覆盖率覆盖率分布和频率喷射的可靠性喷射的有效性针对未初始化使.原创 2020-07-18 21:36:29 · 383 阅读 · 0 评论