Corpus directory is dumped into and re-imported from itself every iteration
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 新手友好度
- 74/100
- Issue 类型
- 缺陷
- 描述清晰度
- 描述清楚
- 活跃度
- 活跃
- 技术栈
- rust
- 领域
- security, testing-qa
调研方向
Read src/fuzzer/mod.rs around lines 413–419 and 529–530, focusing on how SyncFromDiskStage, DumpToDiskStage, and the disk-backed corpora use their directories. Trace which files the sync stage loads and check the LibAFL callback options. Done when the redundant copies and metadata files are no longer re-imported; the issue notes this was confirmed by code reading but not reproduced under SIMICS.
由索引模型根据 Issue 内容生成。
描述
Where
- https://github.com/intel/tsffs/blob/79972db9c63eba3ac8a1ce348264eee2005b2b16/src/fuzzer/mod.rs#L413-L419
- https://github.com/intel/tsffs/blob/79972db9c63eba3ac8a1ce348264eee2005b2b16/src/fuzzer/mod.rs#L529-L530
Problem
SyncFromDiskStage::with_from_file(corpus_directory) and DumpToDiskStage(corpus_directory, solutions_directory) target the same directories that CachedOnDiskCorpus/OnDiskCorpus already persist to. Each fuzz_one, the dump stage writes an extra id_{i}_{name} copy of every corpus entry and solution, and the sync stage loads every recent file as a raw BytesInput, with no dotfile filter: including .{name}.metadata JSON, the id_* copies and *.testcase files.
Impact
Wasted executions on duplicates, and JSON metadata executed as fuzz input (which can itself enter the corpus). Likely contributes to near-duplicate testcases.
Suggested fix
Drop DumpToDiskStage (redundant), and either sync from a separate directory or use SyncFromDiskStage::new with a callback that skips dotfiles.
Related
#101, #60
Status
Confirmed by reading the code at 79972db. Found by reading the code; not reproduced under SIMICS.
- 主要语言
- Rust
- 星标
- 335
- 派生
- 26
- 平均合并
- 1 天 50 分钟
- 30 天内合并 PR
- 12
环境准备
在浏览器里用你自己的 GitHub 账号启动这个项目的开发容器。
- 提供 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
intel/tsffs 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 82/100
维护者通常 1 天内回复
-
难度 1/5 1-3 小时 新手友好度 86/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
维护者通常 1 天内回复
相似的 Issue
-
bug UI
难度 2/5 1-3 小时 新手友好度 70/100
wardian-app/Wardian#1746 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 82/100
jlcodes99/cockpit-tools#3125 ·
维护者通常 2 天内回复
-
bug user-sprint
难度 2/5 1-3 小时 新手友好度 72/100
Vondor/KassenSturz#967 ·
维护者通常 1 天内回复
-
area/ci
难度 1/5 1 小时以内 新手友好度 62/100
维护者通常 1 天内回复
-
[BUG] Incremental sync warns "no stored highest_uid" on every round for folders with no new mail未关闭bug
难度 2/5 1-3 小时 新手友好度 70/100
rustmailer/bichon#411 ·