- 博客(46)
- 资源 (4)
- 收藏
- 关注

原创 C/C++程序验证工具汇总
C/C++ Verification Tools SummaryThe article contains three parts:PART I Open-source Verification ToolsPART II Software Verification with Validation of ResultsPART III A Benchmark for C program Ve...
2020-04-03 23:09:41
3418

原创 通过主动学习生成自动机 (A Quick Survey of Active Automata Learning) - wcventure
A Quick Survey of Active Automata Learning Remark 1:For Basic theoretical knowledge of the Angluin’s L* Algorithm, the interested reader can refer to this article.Remark 2:go through the article on...
2020-03-13 19:10:17
2340

原创 Recent Fuzzing Papers
Recent Papers Related To Fuzzing原文在GitHub上更新:https://github.com/wcventure/FuzzingPaperAll PapersInteresting FuzzingDifFuzz: Differential Fuzzing for Side-Channel Analysis (ICSE 2019)REST-ler:...
2019-03-13 15:19:10
2622

原创 符号执行技术总结(A Brief Summary of Symbol Execution)- wcventure
符号执行技术总结(A Brief Summary of Symbol Execution)Prologue摘要简介经典符号执行技术现代符号执行技术混合执行测试(Concolic testing)执行生成测试(Execution-Generated Testing (EGT))动态符号执行中的不精确性(imprecision) vs.完整性(completeness)主要挑战和解决方案路径爆炸(Pa...
2019-02-07 22:18:20
20555
4

原创 Fuzzing技术总结(Brief Surveys on Fuzz Testing)- wcventure
Fuzzing surveyStatic analysisDynamic analysisSymbolic executionFuzzing White box fuzzingGrey box fuzzingBlack box fuzzing Generation-based FuzzingMutation-based Fuzzing Fuzzing技术的对比 F...
2018-08-26 22:05:20
35511
5

原创 模型学习 Angluins L*算法 学习笔记-wcventure
Angluins L*算法 学习笔记简介:这个算法的目标:构造DFA或者Mealy automate,使之同一个Black system吻合。这个算法假定了一个“teacher”的角色,他是先知,知道这个黑盒SUL的一切。在构造过程中我们可以问老师二种类型的问题。一是称为membership query成员查询, 对于构造Mealy automate来说就是输入某个字串,SUL输出什么?(
2018-01-23 20:55:30
4666
1
原创 RPG:一种面向Rust库的模糊测试目标自动生成技术(ICSE‘24)
文章提出了一种自动化的模糊测试目标生成技术,用于支持Rust库的模糊测试,能够有效地检测Rust库中由不安全代码或复杂API序列交互导致的漏洞。文章提出了一种基于池的序列生成和过滤方法,能够生成多样化和深度的API序列,覆盖更多的API和依赖,同时保持目标的精简和高效。文章提出了一种泛型支持和有效性检查方法,能够处理Rust库中广泛使用的泛型函数,通过类型推断和参数提供器为泛型参数提供合适的类型,并保持类型的一致性,同时对API序列进行移动-借用检查和泛型声明检查,以确保API序列的语法和语义有效性。
2023-12-12 00:52:32
948
原创 ACSL 及Frama-C验证工具简介(二)
实例演示我们已经介绍了 ACSL 和 WP 的基本思想,下面我们将结合实例演示如何使用 WP 来验证包含 ACSL 注释的 C 项目。示例代码介绍我们的示例代码围绕寻找数组中最大值的问题展开。这个项目包含三个文件。项目的入口 main 函数在 max_seq_main.c 文件中。该 main 函数调用一个名为 max_seq 的函数计算给定数组中的最大值。此 max_seq 函数的定义位于头文件 max_seq.h 中。而 max_seq 函数的实现则在 max_seq.c 文件中。我们力图通
2020-10-19 11:09:37
804
原创 ACSL 及Frama-C验证工具简介(一)
ACSL 及相关工具简介在软件系统的开发过程中,如何检查功能模块是否符合设计预期并保证这些模块能够正确的组合在一起实现更复杂的功能,是一个核心问题。测试(testing)的方法在一定程度上能够帮助我们发现一些问题;但要获得更可靠的保证,往往需要借助程序验证(verification)的方法:亦即使用某种形式化的语言(通常包括了对谓词逻辑的支持)对程序行为作出规范,然后使用逻辑规则证明相关代码符合给出的规范。由法国原子能和替代能源委员会下属实验室(CEA-LIST)和法国国家信息与自动化研究所(INR
2020-10-19 11:02:02
1828
2
原创 用Mixed Integer Programming做神经网络的鲁棒性验证
Evaluating Robustness of Neural Networks with Mixed Integer Programming# RemarksConference: ICLR 2019Full Paper: https://groups.csail.mit.edu/robotics-center/public_papers/Tjeng17.pdf# AbstractNeural networks trained only to optimize for tr..
2020-09-05 11:46:48
1228
原创 Event-B建模实际操作:控制桥上的汽车(四)
接上节;在这一次精化中,我们将引入传感器,这是一种能够检查汽车上桥或下桥的物理情况的设备。Third Refinement: Introducing Car SensorsIn this refinement, we introduce the sensors, which are devices capable of detecting the physical presence of cars entering or leaving the bridge. We remind the re.
2020-07-14 18:03:22
708
1
原创 Event-B建模实际操作:控制桥上的汽车(三)
接上节;在现在的形式中,桥的模型看起来有些奇妙。按照我们的观察,好像汽车司机能统计汽车的数量,并据此决定能不能从大陆上桥或者从岛上桥。这也意味着我们能看到系统的状态。显然,这是根本不可能的。为此,我们进一步做精化。Second Refinement: Introducing the Traffic LightsIn its present form, the model of the bridge appears to be a bit magic. It seems, from our obser
2020-07-14 18:01:32
717
原创 Event-B建模实际操作:控制桥上的汽车(二)
紧接上节。现在我们要继续工作,做出初始模型的第一个精化。一个精化就是一个比初始模型更精确的模型。虽然它更精确,但也不应该与初始模型矛盾。这样,我们就必须证明这个精化与初始模型的一致性。First Refinement: Introducing the One-Way BridgeWe are now going to proceed with a refinement of our initial model. A refinement is a more precise model than th
2020-07-14 18:00:48
716
原创 Event-B建模实际操作:控制桥上的汽车(一)
本文的意图是使用Rodin和Event-B建模语言完成一个小型系统的开发,该例子来源于Jean-Raymond Abrial所编著的书,笔者主要是使用Rodin工具尝试完成了这个例子的建模,现将Rodin工具的建模过程一步一步描述如下(应老板要求,只能用英文总结了)。Requirements DocumentThe system we are going to build is a piece of software, called thecontroller, connected to some.
2020-07-14 17:59:46
1630
1
原创 Event-B 形式化方法
Event-B 形式化软件开发方法一、概念Event-b 是一种基于传统的谓词演算和定理证明的形式化语言。Event-b 新的特征是它引入了事件(Event)。事件是event-b的一个重要特征,因此它非常适合用来为周期行为建模。除此之外,Event-b支持逐步精化地建立系统模型。二、使用形式化方法开发软件的过程(理想情况)形式化方法是一种开发途径,工程师可以按这种途径把软件需求文档转换成某种可执行代码。即工程师不需要使用某种经典程序设计语言进行软件开发,而是工作在更抽象的层..
2020-07-13 17:05:03
1015
原创 HyDiff:混合差分软件分析
HyDiff: Hybrid Differential Software Analysis# RemarksConference: ICSE 2020Full Paper:https://yannicnoller.github.io/publications/icse2020_noller_hydiff.pdfArtifact:https://github.com/yannic...
2020-05-05 13:28:56
676
原创 基于Maximal Causality Reduction的并发程序验证
Stateless Model Checking Concurrent Programs with Maximal Causality Reduction# RemarksPublication: ACM SIGPLAN Notices June 2015Full Paper:https://dl.acm.org/doi/abs/10.1145/2813885.2737975...
2020-05-02 19:05:15
395
原创 Inductive Data Flow Graphs - 基于数据流图的并发程序验证
Inductive Data Flow Graphs# RemarkConference: POPL 2013Full Paper: https://www.cs.princeton.edu/~zkincaid/pub/popl13.pdf# AbstractThe correctness of a sequential program can be shown b...
2020-04-24 21:33:29
488
原创 用差分模糊测试做Side-Channel分析
DIFFUZZ: Differential Fuzzing for Side-Channel AnalysisRemarkConference: ICSE 2019Full Paper: https://yannicnoller.github.io/publications/icse2019_nilizadeh_diffuzz.pdfCode: https://github.com/i...
2020-04-17 14:14:26
1283
1
原创 利用差分重放技术检测未初始化的变量
Different is Good: Detecting the Use of Uninitialized Variables through Differential ReplayRemarkConference: CCS 2019Full Paper: http://malgenomeproject.org/papers/ccs19_timeplayer.pdfSummaryIn...
2020-04-16 11:13:37
472
原创 ProFuzzer:基于运行时类型探测的模糊测试技术
ProFuzzer: On-the-fly Input Type Probing for Better Zero-day Vulnerability DiscoveryRemarksConference: S&P 2019Full Paper: https://youwei1988.github.io/papers/SP2019.pdfSlides: https://www.in...
2020-04-15 16:57:06
1061
原创 MEDS:增强型内存错误检测Sanitizer
Enhancing Memory Error Detection for Large-Scale Applications and Fuzz TestingRemarksConference: NDSS 2018Full Paper: https://lifeasageek.github.io/papers/han:meds.pdfSlides: https://lifeasagee...
2020-04-15 13:33:33
607
原创 Big Code != Big Vocabulary
Big Code != Big Vocabulary: Open-Vocabulary Models for Source CodeRemarkConference:ICSE 2020Full Paper:http://homepages.inf.ed.ac.uk/s1467463/documents/icse20-main-1325.pdfArtifact:https://...
2020-04-15 12:28:45
616
原创 Hawkeye:定向灰盒模糊测试技术
Hawkeye Towards a Desired Directed Grey-box FuzzerRemarksConference: CCS 2018Full Paper: https://hongxuchen.github.io/pdf/hawkeye.pdfSlides: https://hongxuchen.github.io/pdf/hawkeye-slides.pdf...
2020-04-15 11:12:11
2694
原创 UltimateAutomizer程序验证工具总结
UltimateAutomizer1. IntroductionUltimateAutomizer is a software verifier that implements an automata-based approach for the verification of safety and liveness properties. UltimateAutomizer is ...
2020-04-09 11:03:53
944
原创 一种基于多面体路径抽象的渐进式混合模糊测试技术
PANGOLIN: Incremental Hybrid Fuzzing with Polyhedral Path AbstractionRemarksConference: S&P 2020Full Paper: https://qingkaishi.github.io/public_pdfs/SP2020.pdfSummary针对的问题:尽管目前已经有不少针对混合模糊测试...
2020-04-06 21:30:50
765
原创 基于类型状态机导向的模糊测试技术UAFL
Typestate-Guided Fuzzer for Discovering Use-after-Free VulnerabilitiesRemarksConference: ICSE 2020Full Paper: https://www.scedt.tees.ac.uk/s.qin/papers/icse2020-uafl.pdfOpen-source: NoSummary...
2020-04-05 16:53:33
1194
原创 挖掘代码覆盖率工具中的Bug
Hunting for bugs in code coverage tools via randomized differential testingRemarksConference: ICSE 2019Full Paper: https://yangyibiao.github.io/papers/ICSE2019_difftest_coverage.pdfSummary针对的问题:...
2020-04-04 23:31:49
881
原创 HFL:基于混合模糊测试的Linux内核漏洞挖掘
HFL:基于混合模糊测试的Linux内核漏洞挖掘RemarksConference: NDSS 2020Full Paper: https://www.ndss-symposium.org/ndss-paper/hfl-hybrid-fuzzing-on-the-linux-kernel/Summary针对的问题: Linux 操作系统内核安全漏洞的发现需要新技术。现有解决方案的不足...
2020-04-02 23:11:47
1458
原创 DSA算法运行示例
Explain DSA Algorithm Through A Simple Example Step By Step关于DSA算法可参考:https://blog.youkuaiyun.com/wcventure/article/details/105061321由于DSA论文中的例子省略了很多步骤,不利于理解,本文使用一个简单例子一步一步地运行一下DSA算法。让我们考虑如下例子,两个函数(a...
2020-03-28 12:47:19
1732
原创 DSA:上下文敏感的指针分析/别名分析
Data Structure Analysis (DSA)Full Paper: [Data Structure Analysis: A Fast and Scalable Context-Sensitive Heap Analysis (2003)]DSA算法(DataStructure Analysis的首字母缩写)是LLVM的发起人Chris Latter在其硕士、博士系列论文中提出的一...
2020-03-23 23:50:16
1666
原创 Smack:软件验证工具与软件验证工具链
SMACK: Software Verifier and Verification ToolchainReading:SMACK: Decoupling Source Language Details from Verifier ImplementationsSMACK: Software Verification ToolchainSmack是一个软件验证工具,它可以在给定的循环迭代...
2020-03-20 11:00:24
947
原创 从代码更改中推断密码学API规则
Inferring Crypto API Rules from Code ChangesRemarkFull Paper: https://files.sri.inf.ethz.ch/website/papers/diffcode-pldi2018.pdfVideo: https://www.youtube.com/watch?v=vl-w5KFO0IIAbstractCreating...
2020-03-19 10:25:57
325
原创 EffectiveSan: 利用C/C++动态类型实现内存错误检测
EffectiveSan: Type and Memory Error Detection using Dynamically Typed C/C++RemarksConference: PLDI 2019Full Paper: https://dl.acm.org/doi/10.1145/3192366.3192388Artifact: https://github.com/GJDuc...
2020-03-18 12:52:06
303
原创 基于两个维度输入空间探索的文件系统Fuzzing
Fuzzing File Systems via Two-Dimensional Input Space ExplorationRemarksConference: S&P 2019Full Paper: https://gts3.org/assets/papers/2019/xu:janus-slides.pdfArtifact: https://github.com/ssla...
2020-03-15 22:56:35
520
原创 JMP指令也可能是函数调用,二进制实时函数调用检测
Now You See Me: Real-time Dynamic Function Call DetectionRemarksConference: ACSAC 2018Full Paper: https://syssec.mistakenot.net/papers/acsac18.pdfArtifact: https://github.com/Frky/iCiSummary作者...
2020-03-15 22:37:01
994
1
原创 Mesh:替代malloc自动减少C/C++应用程序内存占用的内存分配器
Mesh: Compacting Memory Management for C/C++ ApplicationsRemarksConference: PLDI 2019Full Paper: https://dl.acm.org/doi/10.1145/3314221.3314582Artifact: https://github.com/plasma-umass/MeshSumm...
2020-03-14 11:11:58
867
翻译 揭示变化交互误差的回归测试-Regression Tests to Expose Change Interaction Errors
Regression Tests to Expose Change Interaction ErrorsBackgroundProblemMotivating ExampleDefinitionExample For ExplanationBöhme M, Oliveira B C S, Roychoudhury A. Regression tests to expose change inte...
2019-01-29 16:16:49
319
翻译 向着Concolic测试的最优策略迈进-Towards Optimal Concolic Testing-wcventure译
Towards Optimal Concolic TestingTowards Optimal Concolic Testing. In ICSE ‘18: ICSE ‘18: 40th. International Conference on Software Engineering , May 27-June 3, 2018,.1. 最优策略的定义(根据程序路径的概率和约束求解的成本)...
2018-08-22 22:50:51
2434
原创 二进制代码的类型恢复-Type inference on executable-wcventure
This document collects papers that are related with Type inference on executable.
2018-01-21 19:56:39
1434
PC恶意软件检测python源代码
2018-06-03
Handbook of Model Checking
2018-06-03
校园导航系统
2012-11-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人