template for obsidian
SFuzz
FuzzSlice: Pruning False Positives in Static Analysis Warnings through Function-Level Fuzzing
减少静态分析假阳性的工具,核心思想:在函数层面进行代码切片,然后生成可编译的函数代码,进行fuzz,用于减少假阳性。
与SFuzz的关系:代码切片的思想;研究对象从独立的固件二进制转为静态分析的报警代码Efficient greybox fuzzing of applications in Linux-based IoT devices via enhanced user-mode emulation
在用户模式进行模糊测试,相较于FirmAFL进一步减小开销,提高效率。
SaTC
Accurate and Efficient Recurring Vulnerability Detection for IoT Firmware
检测相似漏洞的工具,核心思想:- 从攻击角度来构建已知漏洞的表示
- 通过已有漏洞报告以及混合执行来识别可行的攻击过程,从而提取其漏洞表示
- 轻量级识别-(仔细)确认
与SaTC的关系:- 输入条目识别是通过漏洞报告中的关键词来进行的
- 改进了污点传播策略,如果没有发现漏洞则加入先前去掉的函数(由于参数中不包括污点数据而删除)看结果改进效果也不是很明显,感觉意义不大
Detecting Vulnerabilities in Linux-Based Embedded Firmware with SSE-Based On-Demand Alias Analysis
EmTaint:
贡献:- 从recv等函数输入源开始分析,同时解决间接调用无法进行污点传播的问题
- SSE-based(structured symbolic expression)on-demand
Faster and Better: Detecting Vulnerabilities in Linux-based IoT Firmware with Optimized Reaching Definition Analysis
HermeScan:
贡献:- 使用reaching definition analysis (RDA):可达性。应用于固件二进制程序IR中间语言
- 针对污点源识别的方法:多了一项使用RDA寻找调用库函数来补充source
- 针对由于从共享字符串为起点导致的假阳性(前面可能会有check)问题:增加检查
Operation Mango: Scalable Discovery of Taint-Style Vulnerabilities in Binary Firmware Services
MongoDFA:
贡献:- 指出BDG(Binary Dependence Graph)确定边界二进制程序的局限性,选择分析全部程序
Harnessing the Power of LLM to Support Binary Taint Analysis
大模型辅助的污点分析技术,核心思想:先找sink点,通过后向传播提取包含外界输入的call tree,然后交给大模型分析
相较于传统的污点分析技术,其无需人力参与,实现了全自动化。Precise Discovery of More Taint-Style Vulnerabilities in Embedded Firmware
SinkTaint:
贡献:OctopusTaint: Advanced Data Flow Analysis for Detecting Taint-Based Vulnerabilities in IoT/IIoT Firmware
OctopusTaintAccelerating Command Injection Vulnerability Discovery in Embedded Firmware with Static Backtracking Analysis
CINDY:backtrackingSFO-CID: Structural Feature Optimization Based Command Injection Vulnerability Discovery for Internet of Things
使用机器学习方法来完成,(看不太懂)LuaTaint: A Static Analysis System for Web Configuration Interface Vulnerability of Internet of Things Device
LuaTaint:
集成了大模型FITS: Inferring Intermediate Taint Sources for Effective Vulnerability Analysis of IoT Device Firmware
FITS:shorten the data-flow pathsIoTaint: An Optimized Static Taint Analysis Method in Embedded Firmware
IoTaint:看abstract跟SaTC很像Facilitating Web Vulnerability Detection on Embedded Devices with Root Path Pruning
应该是对SaTC污点传播策略的优化Detecting Vulnerabilities in Firmware Via Back-End Differences
寻找taint source的方式不同:通过固件patch的版本差异来寻找关键词A Vulnerability Scanning Method for Web Services in Embedded FirmwareApplied Sciences
思路很像,相当于做了一下改进:- 边界二进制程序识别:含有HTTP相关特征
- 输入函数识别:总结了输入函数的一些特征(eg:存在共享关键词作为参数;调用输入库函数;在前调用strcmp函数)
- sink函数筛选:参数用户无法控制就提前过滤掉
可能有用的:
- SHFuzz: Service handler-aware fuzzing for detecting multi-type vulnerabilities in embedded devices
核心思想:先静态分析提取二进制程序中注册的service_handler函数(没用到SaTC的方法,经验性总结),然后对其进行fuzz - Fuzzing IoT Devices via Android App Interfaces with Large Language Model
- KVFL: Key-Value-Based Persistent Fuzzing for IoT Web Servers(4区)
核心思路:只变异Key和Value,Key是基于响应来确定的。