izm1chael commited on
Commit
29ad81b
·
verified ·
1 Parent(s): 9f9f432

Publish Layerfault deep challenge LF-CH-EVAS-0010

Browse files
CHALLENGE_ORACLE.json ADDED
@@ -0,0 +1,30 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "attack_surface": [
3
+ "package-evasion"
4
+ ],
5
+ "control_type": "compound",
6
+ "corpus_id": "LF-CH-EVAS-0010",
7
+ "difficulty": "adversarial",
8
+ "expected_decision": "BLOCK",
9
+ "ground_truth": "synthetic-generated",
10
+ "layerfault_rule_expectations": {
11
+ "candidate_rules": [],
12
+ "expected_rules": [],
13
+ "must_not_rules": []
14
+ },
15
+ "oracle_ids": [
16
+ "LF-ORACLE-PACKAGE-CROSS-FILE-CAPABILITY"
17
+ ],
18
+ "related_cases": [],
19
+ "repo_name": "evasion-multi-file-fragmented-capability",
20
+ "safe_fixture": true,
21
+ "schema": 2,
22
+ "severity": "critical",
23
+ "techniques": [
24
+ "cross-file-fragmentation"
25
+ ],
26
+ "transformations": [
27
+ "fragmentation",
28
+ "cross-file-correlation"
29
+ ]
30
+ }
FIXTURE_LAYOUT.json ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "artifacts": [
3
+ "config.json",
4
+ "assets/a.py",
5
+ "assets/b.py",
6
+ "assets/c.json",
7
+ "assets/README.txt"
8
+ ],
9
+ "family": "evasion",
10
+ "note": "All content is synthetic and inert. Do not treat this as a production model.",
11
+ "repo_name": "evasion-multi-file-fragmented-capability"
12
+ }
LAYERFAULT_CORPUS.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "candidate_rules": [],
3
+ "challenge": {
4
+ "attack_surface": [
5
+ "package-evasion"
6
+ ],
7
+ "control_type": "compound",
8
+ "difficulty": "adversarial",
9
+ "expected_decision": "BLOCK",
10
+ "oracle_ids": [
11
+ "LF-ORACLE-PACKAGE-CROSS-FILE-CAPABILITY"
12
+ ],
13
+ "related_cases": [],
14
+ "severity": "critical",
15
+ "techniques": [
16
+ "cross-file-fragmentation"
17
+ ],
18
+ "transformations": [
19
+ "fragmentation",
20
+ "cross-file-correlation"
21
+ ]
22
+ },
23
+ "corpus_id": "LF-CH-EVAS-0010",
24
+ "description": "Capability name and function fragments are distributed across files.",
25
+ "expected_rules": [],
26
+ "generator": "challenges.generate_challenge",
27
+ "ground_truth": "synthetic-generated",
28
+ "must_not_rules": [],
29
+ "repo_name": "evasion-multi-file-fragmented-capability",
30
+ "repo_type": "model",
31
+ "safe_fixture": true,
32
+ "safety": "inert/canary-only",
33
+ "schema": 1,
34
+ "validation": {
35
+ "kind": "verify-package",
36
+ "target": "."
37
+ }
38
+ }
README.md ADDED
@@ -0,0 +1,73 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: apache-2.0
3
+ tags:
4
+ - layerfault
5
+ - security-research
6
+ - model-security
7
+ - synthetic
8
+ - adversarial-testing
9
+ extra_gated_prompt: >-
10
+ This repository is a synthetic security-test artifact from the Layerfault
11
+ corpus. It intentionally contains adversarial characteristics (e.g.
12
+ suspicious pickle opcodes, executable-format smuggling, prompt-injection
13
+ strings) designed to exercise security scanner detection rules. It is
14
+ **not** a usable ML model and must never be loaded or executed outside an
15
+ isolated scanner-testing environment. By accepting, you confirm you
16
+ understand this repository is a test fixture, not production model
17
+ weights.
18
+ extra_gated_button_content: I understand this is a security test fixture and accept the risk
19
+ gated: auto
20
+ ---
21
+
22
+ # evasion-multi-file-fragmented-capability
23
+
24
+ > **SECURITY TEST ARTIFACT: DO NOT USE AS A PRODUCTION MODEL**
25
+
26
+ This repository is part of the Layerfault synthetic security corpus.
27
+ It is deliberately constructed to contain security-relevant characteristics for scanner testing.
28
+
29
+ **Corpus ID:** `LF-CH-EVAS-0010`
30
+
31
+ ## Purpose
32
+
33
+ Capability name and function fragments are distributed across files.
34
+
35
+ ## Direct expected Layerfault rules
36
+
37
+ - None; this repository is a control/comparison input.
38
+
39
+ ## Candidate rules
40
+
41
+ These are deliberately plausible targets that remain marked as candidates until the exact
42
+ Layerfault build used for certification confirms them.
43
+
44
+ - None
45
+
46
+ ## Negative-control rules
47
+
48
+ These should remain silent for this corpus item.
49
+
50
+ - None
51
+
52
+ ## Safety
53
+
54
+ The corpus uses fake secrets, loopback/`.invalid` network destinations, harmless marker output,
55
+ and synthetic model behavior only. It is intended for static scanning and isolated security testing.
56
+
57
+ ## Challenge classification
58
+
59
+ - Severity: **critical**
60
+ - Difficulty: **adversarial**
61
+ - Expected admission decision: **BLOCK**
62
+ - Control type: **compound**
63
+ - Attack surface: package-evasion
64
+ - Techniques: cross-file-fragmentation
65
+ - Transformations: fragmentation, cross-file-correlation
66
+
67
+ ### Ground-truth oracle IDs
68
+
69
+ - `LF-ORACLE-PACKAGE-CROSS-FILE-CAPABILITY`
70
+
71
+ These oracle IDs describe synthetic ground truth. They do not claim that a
72
+ matching Layerfault detector already exists. A challenge may intentionally expose
73
+ a scanner blind spot and remain unmapped until the detector is implemented.
SHA256SUMS.json ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [
2
+ {
3
+ "path": "CHALLENGE_ORACLE.json",
4
+ "sha256": "a0b7099b7cfbbd79cabdef46a8cef8a24ae7b9f8b66c26436901c916ac6eb8b2",
5
+ "size": 687
6
+ },
7
+ {
8
+ "path": "FIXTURE_LAYOUT.json",
9
+ "sha256": "bc11aadad4841fcea7631648c033bbae07faaa752d649606497e9ad57d550bae",
10
+ "size": 299
11
+ },
12
+ {
13
+ "path": "LAYERFAULT_CORPUS.json",
14
+ "sha256": "911e11c19c022845d1d8c3c6b6594f25f5bc7754bd6488d7336ca34f33742193",
15
+ "size": 963
16
+ },
17
+ {
18
+ "path": "README.md",
19
+ "sha256": "7af33fa1aa858274239a4c22be0715cc7aad1de7150064d6d4547f8a4ab6e627",
20
+ "size": 2310
21
+ },
22
+ {
23
+ "path": "assets/README.txt",
24
+ "sha256": "b7884385efd0e7c2057956e9d098b8eff491b8ce9d485c5a7978f87fc367bbf8",
25
+ "size": 65
26
+ },
27
+ {
28
+ "path": "assets/a.py",
29
+ "sha256": "337aa1f2bbd869240c0242b281b21d5688a770439b573fba403abdfd86acfa9f",
30
+ "size": 22
31
+ },
32
+ {
33
+ "path": "assets/b.py",
34
+ "sha256": "3b3162b4e6ac2637d5bece66e261de6a1154e827aa95ec402182eba7fbb1023c",
35
+ "size": 26
36
+ },
37
+ {
38
+ "path": "assets/c.json",
39
+ "sha256": "a4c8654f9265fb9278951d7d47d2ec78aaf768afc89ce7903ccaf7c6c9d5731a",
40
+ "size": 122
41
+ },
42
+ {
43
+ "path": "config.json",
44
+ "sha256": "68d4b6c3308015c36332de690b727c02878531e6440ced97fcf1fd1a46d41704",
45
+ "size": 88
46
+ }
47
+ ]
assets/README.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ Fragments are intentionally inert unless manually reconstructed.
assets/a.py ADDED
@@ -0,0 +1 @@
 
 
1
+ MODULE_PREFIX = "sub"
assets/b.py ADDED
@@ -0,0 +1 @@
 
 
1
+ MODULE_SUFFIX = "process"
assets/c.json ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ {
2
+ "function_parts": [
3
+ "r",
4
+ "un"
5
+ ],
6
+ "marker": "LAYERFAULT_FIXTURE:evasion-multi-file-fragmented-capability"
7
+ }
config.json ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ {
2
+ "asset_root": "assets",
3
+ "fixture": true,
4
+ "model_type": "layerfault_challenge"
5
+ }