feat: 32 条缺失用例占位样本补全 (171 files total)

- L0-021/023/027/028/030: 自制 zip 炸弹、5 层嵌套、超长文件名、unicode 文件名、嵌套+穿越复合
- L1-003/009/010/013/014/015: 加密 zip 占位、病毒库 .cvd 占位、10MB+EICAR、并发压测 10 文件、分层开关
- L3-009/013/022/025: 换行分割绕过、正常 scp、分层开关、白名单对照
- L4-003/004/006/007/009/011/012/013/014/015: YARA 样本占位(需 .yar 规则配合)
- L5-005/006/008/009/015/016/019: PE 导入组合、导出表、零节、超大 PE 占位
- scripts/generate_placeholder_samples.py: 一键补缺失占位
- index.json: 从 93 条 → 136 条(全部带 case_id)
This commit is contained in:
2026-10-29 11:36:42 +08:00
parent d05537e1fb
commit d520cbff1f
45 changed files with 721 additions and 1 deletions

View File

@@ -863,6 +863,409 @@
"expected_verdict": "pass",
"expected_rules": [],
"description": "正常odt文档"
},
{
"filename": "L0-021_small_bomb.zip",
"case_id": "L0-021",
"category": "L0",
"expected_verdict": "reject",
"expected_rules": [
"ArchiveBombSuspect"
],
"description": "自制小型 zip 炸弹(50 成员 × 8KB STORED)"
},
{
"filename": "L0-023_5layer_nested.zip",
"case_id": "L0-023",
"category": "L0",
"expected_verdict": "pass",
"expected_rules": [
"recursive_ok"
],
"description": "5 层无害嵌套 ZIP"
},
{
"filename": "L0-027_long_filename.zip",
"case_id": "L0-027",
"category": "L0",
"expected_verdict": "pass",
"expected_rules": [],
"description": "压缩包内 200 字符超长文件名"
},
{
"filename": "L0-028_unicode_filename.zip",
"case_id": "L0-028",
"category": "L0",
"expected_verdict": "pass",
"expected_rules": [],
"description": "unicode/emoji 文件名"
},
{
"filename": "L0-030_nested_traversal.zip",
"case_id": "L0-030",
"category": "L0",
"expected_verdict": "reject",
"expected_rules": [
"PathTraversal"
],
"description": "嵌套 zip 内含穿越条目"
},
{
"filename": "L1-003_eicar_in_encrypted.zip",
"case_id": "L1-003",
"category": "L1",
"expected_verdict": "review",
"expected_rules": [
"EncryptedArchive"
],
"description": "加密 ZIP(占位:实际加密需 7z/zip -P)"
},
{
"filename": "L1-009_minimal.cvd",
"case_id": "L1-009",
"category": "L1",
"expected_verdict": "unknown",
"expected_rules": [],
"description": "热加载测试占位(需真实 .cvd 文件)"
},
{
"filename": "L1-010_corrupt.cvd",
"case_id": "L1-010",
"category": "L1",
"expected_verdict": "unknown",
"expected_rules": [],
"description": "损坏病毒库占位"
},
{
"filename": "L1-013_bigfile_eicar.txt",
"case_id": "L1-013",
"category": "L1",
"expected_verdict": "reject",
"expected_rules": [
"ClamAV:EICAR"
],
"description": "10MB+ 文本尾部含 EICAR"
},
{
"filename": "L1-014_concurrent_eicar_00.txt",
"case_id": "L1-014-00",
"category": "L1",
"expected_verdict": "reject",
"expected_rules": [
"ClamAV:EICAR"
],
"description": "并发压测占位 #0"
},
{
"filename": "L1-014_concurrent_eicar_01.txt",
"case_id": "L1-014-01",
"category": "L1",
"expected_verdict": "reject",
"expected_rules": [
"ClamAV:EICAR"
],
"description": "并发压测占位 #1"
},
{
"filename": "L1-014_concurrent_eicar_02.txt",
"case_id": "L1-014-02",
"category": "L1",
"expected_verdict": "reject",
"expected_rules": [
"ClamAV:EICAR"
],
"description": "并发压测占位 #2"
},
{
"filename": "L1-014_concurrent_eicar_03.txt",
"case_id": "L1-014-03",
"category": "L1",
"expected_verdict": "reject",
"expected_rules": [
"ClamAV:EICAR"
],
"description": "并发压测占位 #3"
},
{
"filename": "L1-014_concurrent_eicar_04.txt",
"case_id": "L1-014-04",
"category": "L1",
"expected_verdict": "reject",
"expected_rules": [
"ClamAV:EICAR"
],
"description": "并发压测占位 #4"
},
{
"filename": "L1-014_concurrent_eicar_05.txt",
"case_id": "L1-014-05",
"category": "L1",
"expected_verdict": "reject",
"expected_rules": [
"ClamAV:EICAR"
],
"description": "并发压测占位 #5"
},
{
"filename": "L1-014_concurrent_eicar_06.txt",
"case_id": "L1-014-06",
"category": "L1",
"expected_verdict": "reject",
"expected_rules": [
"ClamAV:EICAR"
],
"description": "并发压测占位 #6"
},
{
"filename": "L1-014_concurrent_eicar_07.txt",
"case_id": "L1-014-07",
"category": "L1",
"expected_verdict": "reject",
"expected_rules": [
"ClamAV:EICAR"
],
"description": "并发压测占位 #7"
},
{
"filename": "L1-014_concurrent_eicar_08.txt",
"case_id": "L1-014-08",
"category": "L1",
"expected_verdict": "reject",
"expected_rules": [
"ClamAV:EICAR"
],
"description": "并发压测占位 #8"
},
{
"filename": "L1-014_concurrent_eicar_09.txt",
"case_id": "L1-014-09",
"category": "L1",
"expected_verdict": "reject",
"expected_rules": [
"ClamAV:EICAR"
],
"description": "并发压测占位 #9"
},
{
"filename": "L1-014_concurrent_test.txt",
"case_id": "L1-014",
"category": "L1",
"expected_verdict": "unknown",
"expected_rules": [],
"description": "并发压测占位(靠 API 并发调用)"
},
{
"filename": "L1-015_layer_off_sample.bin",
"case_id": "L1-015",
"category": "L1",
"expected_verdict": "review",
"expected_rules": [
"ClamAV:EICAR"
],
"description": "关闭分层开关测试占位"
},
{
"filename": "L3-022_layer_off_sample.bin",
"case_id": "L3-022",
"category": "L3",
"expected_verdict": "review",
"expected_rules": [
"RemoteDownloadPowerShell"
],
"description": "关闭分层开关测试占位"
},
{
"filename": "L4-014_layer_off_sample.bin",
"case_id": "L4-014",
"category": "L4",
"expected_verdict": "review",
"expected_rules": [
"YARA"
],
"description": "关闭分层开关测试占位"
},
{
"filename": "L5-020_layer_off_sample.bin",
"case_id": "L5-020",
"category": "L5",
"expected_verdict": "review",
"expected_rules": [
"RWXSectionDetected"
],
"description": "关闭分层开关测试占位"
},
{
"filename": "L3-009_newline_split.txt",
"case_id": "L3-009",
"category": "L3",
"expected_verdict": "pass",
"expected_rules": [],
"description": "换行分割绕过(L3 不做换行合并,记录边界)"
},
{
"filename": "L3-013_normal_scp.sh",
"case_id": "L3-013",
"category": "L3",
"expected_verdict": "pass",
"expected_rules": [],
"description": "内网正常 scp 运维脚本,不误报"
},
{
"filename": "L3-025_whitelist_test.txt",
"case_id": "L3-025",
"category": "L3",
"expected_verdict": "pass",
"expected_rules": [],
"description": "内网白名单域名对照(策略层白名单)"
},
{
"filename": "L4-003_pe_with_string.exe",
"case_id": "L4-003",
"category": "L4",
"expected_verdict": "reject",
"expected_rules": [
"YARA"
],
"description": "二进制内嵌匹配字符串"
},
{
"filename": "L4-004_multi_rule_match.txt",
"case_id": "L4-004",
"category": "L4",
"expected_verdict": "reject",
"expected_rules": [
"YARA"
],
"description": "同一个文件同时命中多条 YARA"
},
{
"filename": "L4-006_bad_syntax_rule.yar",
"case_id": "L4-006",
"category": "L4",
"expected_verdict": "unknown",
"expected_rules": [],
"description": "语法错误 YARA 规则文件(输入给规则目录)"
},
{
"filename": "L4-007_meta_rule_match.txt",
"case_id": "L4-007",
"category": "L4",
"expected_verdict": "reject",
"expected_rules": [
"YARA"
],
"description": "带 meta 的 YARA 规则匹配"
},
{
"filename": "L4-009_yara_in_encrypted.zip",
"case_id": "L4-009",
"category": "L4",
"expected_verdict": "review",
"expected_rules": [],
"description": "加密 zip 内 YARA 样本"
},
{
"filename": "L4-011_count_condition.txt",
"case_id": "L4-011",
"category": "L4",
"expected_verdict": "reject",
"expected_rules": [
"YARA"
],
"description": "YARA count > 3 条件"
},
{
"filename": "L4-012_size_condition.bin",
"case_id": "L4-012",
"category": "L4",
"expected_verdict": "reject",
"expected_rules": [
"YARA"
],
"description": "YARA 文件大小条件"
},
{
"filename": "L4-013_bigfile_yara.txt",
"case_id": "L4-013",
"category": "L4",
"expected_verdict": "reject",
"expected_rules": [
"YARA"
],
"description": "100MB 文件 YARA 扫描"
},
{
"filename": "L4-015_hash_whitelist.txt",
"case_id": "L4-015",
"category": "L4",
"expected_verdict": "pass",
"expected_rules": [],
"description": "MD5 在白名单"
},
{
"filename": "L5-005_injection_imports.exe",
"case_id": "L5-005",
"category": "L5",
"expected_verdict": "reject",
"expected_rules": [
"SuspiciousImports"
],
"description": "注入组合导入(需要真实 pefile 引入 API)"
},
{
"filename": "L5-006_single_virtualalloc.exe",
"case_id": "L5-006",
"category": "L5",
"expected_verdict": "review",
"expected_rules": [
"SuspiciousImports"
],
"description": "单一可疑内存 API"
},
{
"filename": "L5-008_many_exports.exe",
"case_id": "L5-008",
"category": "L5",
"expected_verdict": "review",
"expected_rules": [],
"description": "导出表异常(需真实工具生成)"
},
{
"filename": "L5-009_shell_in_resource.exe",
"case_id": "L5-009",
"category": "L5",
"expected_verdict": "review",
"expected_rules": [],
"description": "资源段内嵌字符串(占位)"
},
{
"filename": "L5-015_bad_reloc.exe",
"case_id": "L5-015",
"category": "L5",
"expected_verdict": "review",
"expected_rules": [
"PeParseFailed"
],
"description": "重定位表损坏占位"
},
{
"filename": "L5-016_zero_sections.exe",
"case_id": "L5-016",
"category": "L5",
"expected_verdict": "review",
"expected_rules": [
"PeParseFailed"
],
"description": "无节表最小 PE"
},
{
"filename": "L5-019_200mb_huge.exe",
"case_id": "L5-019",
"category": "L5",
"expected_verdict": "unknown",
"expected_rules": [],
"description": "200MB 超大 PE(占位,真实生成会写满磁盘)"
}
]
],
"placeholder_generated_at": "2026-10-29T11:36:17.181303"
}