Preserve source, binary, and runtime evidence boundaries while making precision and performance regressions reproducible. - decompose analysis orchestration into bounded modules - add differential, metamorphic, organic, and Yams change-time gates - fix detector, P-Code, fuzz sanitizer, and report identity precision
45 lines
1.2 KiB
JSON
45 lines
1.2 KiB
JSON
{
|
|
"schema_version": 1,
|
|
"case_id": "hybrid-source-div-binary-secret",
|
|
"case_type": "finding-set",
|
|
"origin": "synthetic",
|
|
"backend": "hybrid",
|
|
"name": "hybrid_source_div_binary_secret",
|
|
"description": "Hybrid merge-only golden requiring source and binary findings to preserve backend provenance.",
|
|
"sources": [
|
|
"../../fixtures/security/div_const_zero.cpp",
|
|
"../../fixtures/security/div_guarded.cpp"
|
|
],
|
|
"binary_build_source": "../binary/fixtures/hardcoded_secret.c",
|
|
"binary_compiler": "cc",
|
|
"binary_cflags": ["-O0", "-g0"],
|
|
"source_detectors": "div-by-zero",
|
|
"binary_detectors": "security",
|
|
"processes": 1,
|
|
"expect": {
|
|
"require_physical_location": true,
|
|
"require_backend": true,
|
|
"require_backends": ["source", "binary"],
|
|
"max_by_rule": {
|
|
"fold.div-by-zero": 1
|
|
},
|
|
"must_report": [
|
|
{
|
|
"ruleId": "fold.div-by-zero",
|
|
"backend": "source",
|
|
"messageRegex": "div_const_zero\\.cpp:3"
|
|
},
|
|
{
|
|
"ruleId": "fold.taint-track",
|
|
"backend": "binary",
|
|
"messageRegex": "token=fold_benchmark_secret_12345"
|
|
}
|
|
],
|
|
"must_not_report": [
|
|
{
|
|
"ruleId": "fold.div-by-zero",
|
|
"messageRegex": "div_guarded\\.cpp"
|
|
}
|
|
]
|
|
}
|
|
}
|