# FLOSS 混淆字符串提取工具

> Mandiant FLARE 团队的恶意软件字符串提取工具，用法与 strings.exe 相同，但还能还原混淆字符串。除了静态的 ASCII 和 UTF-16LE 字符串，它还能提取栈字符串、紧凑栈字符串（tight strings）以及由函数解码出的字符串：先用启发式方法识别解码函数，通过控制流分析取得调用参数，再模拟执行这些函数，并比较模拟前后的内存状态。它还能提取 Go 和 Rust 字符串，支持 PE、ELF 以及 32 位或 64 位原始 shellcode；JSON 结果可转换为 IDA Pro、Ghidra、Binary Ninja、radare2 和 x64dbg 的导入脚本。

- 类型：工具
- 目标：二进制
- 类别：原生分析工具
- 关联：基础工具
- 来源复核于：2026-10-19
- 收录于：2026-10-19
- 原始资源：<https://github.com/mandiant/flare-floss>
- 一手来源：<https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/flare-floss/>
- 记录 JSON：<https://awesomerea.org/resources/flare-floss/record.json>
- 英文版：[English](https://awesomerea.org/resources/flare-floss/index.md)

## 使用条件与局限

- 审阅时最新版本为 v3.2.0，发布于 2026-10-16，提供 Linux、macOS 和 Windows 独立可执行文件，并在 PyPI 上发布（需要 Python 3.10+）；该版本新增基本的 ELF 支持，并把 Ghidra 导入脚本迁移到 PyGhidra。所审阅的 master 提交中有 857 个提交不在 v3.2.0 中，而 v3.2.0 也有 8 个提交不在 master 上：master 已合并 QUANTUMSTRAND 预览版，因此其 README 中介绍的带文件结构上下文和标签的布局感知静态字符串、HTML 报告和在线查看器，目前只随 quantumstrand 预发布版本提供（最新为 2026-04-22 的 quantumstrand-beta3）。master 要求 Python 3.12+，版本号仍为 3.1.1。
- 解码采用静态模拟执行，并借助内置的 FLIRT 签名识别库函数；超过 64 MB 的文件会中止去混淆，除非指定 --large-file。shellcode 可通过 .sc32/.raw32/.sc64/.raw64 扩展名识别，或用 -f 指定。从源码克隆时需要 Git LFS 来获取标签数据库和签名文件；安装指南指出 Python API 在不同版本之间可能变化，稳定的接口是命令行。
- 样本由分析人员自行提供。v3.2.0 修复了一个问题：在 v3.1.1 及更早版本和 QUANTUMSTRAND 预发布版本中，精心构造的 .viv vivisect 工作区文件（无论是样本本身还是样本旁的同名文件）可在分析时执行代码；现在只有设置 FLOSS_LOAD_VIV_WORKSPACE=1 时才会加载已保存的工作区。解码出的字符串只来自 FLOSS 识别为解码函数并成功模拟执行的例程。
- 采用 Apache-2.0 许可。

## 一手来源

1. <https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/README.md>
2. <https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/doc/theory.md>
3. <https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/doc/usage.md>
4. <https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/doc/installation.md>
5. <https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/doc/language_specific_strings.md>
6. <https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/scripts/README.md>
7. <https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/pyproject.toml>
8. <https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/floss/version.py>
9. <https://github.com/mandiant/flare-floss/blob/e10079080ec5b6fb7584c5331842a94eb4a9b301/LICENSE.txt>
10. <https://github.com/mandiant/flare-floss/releases/tag/v3.2.0>
11. <https://github.com/mandiant/flare-floss/releases/tag/quantumstrand-beta3>
12. <https://pypi.org/project/flare-floss/3.2.0/>

## 同分区更多条目：原生二进制

- [Zydis x86 反汇编与代码生成库](https://awesomerea.org/zh/resources/zydis/index.md) · 工具
- [QBDI 动态二进制插桩框架](https://awesomerea.org/zh/resources/qbdi/index.md) · 工具
- [binsider ELF 二进制分析终端界面](https://awesomerea.org/zh/resources/binsider/index.md) · 工具
- [iced x86 指令解码与汇编库](https://awesomerea.org/zh/resources/iced/index.md) · 工具
- [hrtng IDA 反编译增强插件](https://awesomerea.org/zh/resources/hrtng/index.md) · 工具
- [BinCAT 二进制静态分析工具包](https://awesomerea.org/zh/resources/bincat/index.md) · 工具

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
