静态分析
文章平均质量分 70
bsauce
github:https://github.com/bsauce
展开
-
【bsauce读论文】Vetting Imbalance Reference Counting in Linux kernel with Symbolic Execution
1.简介目标:挖掘错误使用引用计数(reference counter)的漏洞。挑战:可扩展性;独特的内核约定(不统一的引用计数管理,eg,external vs. internal reference counter)需要进行 path-sensitive analysis,检查可行的路径上,refcount递增递减是否匹配reference的增加与移除;Linux内核中使用refcount时有特殊的约定,有些是良性的,并不会违反refcount的一致性原则,可能会导致误报,例如 interna原创 2022-05-04 22:37:02 · 1331 阅读 · 0 评论 -
phasar LLVM静态分析框架使用
一、数据流分析1.1 介绍原理:数据流分析的原理可参考这些文章 Useful Literature。说明:phasar提供了很多复杂机制,以便于用户自定义数据流分析。用户针对自己的需求,选择最合适的接口,用户只需要提供一个新类,即可实现该接口缺少的功能,该功能可作为分析的问题描述。将具体问题描述交给求解器求解,以下将列出多种数据流求解器。(1)选择控制流图首先需选择一种控制流图,以基于此图进行分析,如CFG (intra-procedural control-flow graph) 或 ICFG原创 2020-07-27 20:52:06 · 1516 阅读 · 0 评论 -
phasar LLVM静态分析框架介绍
一、简介简介:PhASAR是一个基于LLVM的静态分析框架,用户可以进行数据流分析,框架会帮助进行指向分析、调用图构建。安装:ubuntu下运行如下脚本。# 安装$ git clone https://github.com/secure-software-engineering/phasar.git$ sudo ./bootstrap.sh# 测试:若能获取正常输出,则表示安装正确。$ phasar-llvm --module test/build_systems_tests/installa原创 2020-07-27 20:51:14 · 2371 阅读 · 0 评论 -
LLVM学习之基础编程+过程间分析
1.简介官网:http://llvm.org/LLVM有很多自带工具:$> cd llvm/Debug+Asserts/bin编译成bc文件:$> clang -c -emit-llvm identity.c -o identity.bcopt优化工具:$> opt --help! 优化bc中间代码,如-die死代码消除;-reg2mem将值存在栈上。$> opt -mem2reg identity.bc -o identity.opt.bclli直接执行bc原创 2020-06-16 12:11:26 · 12767 阅读 · 1 评论 -
【课程笔记】南大软件分析课程—16课时完整版
【课程笔记】南大软件分析课程南京大学李樾和谭添老师的软件分析视频课程。推送门:南大课件 南大视频课程 北大课件笔记列表更新中。。。【课程笔记】南大软件分析课程1——课程介绍【课程笔记】南大软件分析课程2——IR【课程笔记】南大软件分析课程3——数据流分析应用【课程笔记】南大软件分析课程4——数据流分析基础(课时5/6)【课程笔记】南大软件分析课程5——过程间分析(课时7)【课程笔记】南大软件分析课程6——指针分析介绍(课时8)【课程笔记】南大软件分析课程7——指针分析基础(课时9/1转载 2020-05-08 21:51:36 · 8617 阅读 · 5 评论