agent-threat-rules 2.0.3 → 2.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (24) hide show
  1. package/README.md +12 -3
  2. package/dist/cli.js +0 -0
  3. package/package.json +1 -1
  4. package/rules/context-exfiltration/ATR-2026-00201-credential-pipe-exfiltration.yaml +83 -0
  5. package/rules/privilege-escalation/ATR-2026-00204-stealth-execution-persistence.yaml +113 -0
  6. package/rules/prompt-injection/ATR-2026-00202-encoding-evasion-homoglyph-synonym.yaml +98 -0
  7. package/rules/prompt-injection/ATR-2026-00203-context-pollution-skill-description.yaml +76 -0
  8. package/rules/prompt-injection/ATR-2026-00206-hidden-priority-instructions.yaml +59 -0
  9. package/rules/prompt-injection/ATR-2026-00207-hidden-instructions.yaml +58 -0
  10. package/rules/prompt-injection/ATR-2026-00211-system-prompt-override.yaml +60 -0
  11. package/rules/prompt-injection/ATR-2026-00213-system-prompt-override.yaml +59 -0
  12. package/rules/prompt-injection/ATR-2026-00226-identity-substitution.yaml +107 -0
  13. package/rules/prompt-injection/ATR-2026-00227-historical-persona-jailbreak.yaml +109 -0
  14. package/rules/prompt-injection/ATR-2026-00228-structured-jailbreak.yaml +106 -0
  15. package/rules/prompt-injection/ATR-2026-00229-roleplay-jailbreak.yaml +106 -0
  16. package/rules/prompt-injection/ATR-2026-00230-persona-moral-bypass.yaml +107 -0
  17. package/rules/skill-compromise/ATR-2026-00200-agent-memory-config-tampering.yaml +101 -0
  18. package/rules/skill-compromise/ATR-2026-00214-credential-theft.yaml +57 -0
  19. package/rules/skill-compromise/ATR-2026-00217-credential-harvesting.yaml +104 -0
  20. package/rules/skill-compromise/ATR-2026-00220-malware-dropper.yaml +100 -0
  21. package/rules/skill-compromise/ATR-2026-00222-credential-harvesting.yaml +102 -0
  22. package/rules/skill-compromise/ATR-2026-00223-reverse-shell-dropper.yaml +100 -0
  23. package/rules/skill-compromise/ATR-2026-00224-credential-exfiltration.yaml +102 -0
  24. package/rules/skill-compromise/ATR-2026-00225-c2-communication.yaml +103 -0
@@ -0,0 +1,103 @@
1
+ title: 'Hardcoded Suspicious IP Address in Skill Content'
2
+ id: ATR-2026-00225
3
+ rule_version: 1
4
+ status: experimental
5
+ description: >
6
+ Detects hardcoded IP addresses in skill content that may represent command and control
7
+ (C2) servers, particularly when associated with suspicious network ranges or known
8
+ malware infrastructure. The analyzed skill "sakaen736jih/youtube-watcher-p" contains
9
+ reference to IP 91.92.242.30 identified as a known malware C2 server.
10
+ author: "ATR Threat Cloud Crystallization"
11
+ date: "2026/04/15"
12
+ schema_version: "0.1"
13
+ detection_tier: pattern
14
+ maturity: experimental
15
+ severity: high
16
+ references:
17
+ owasp_llm:
18
+ - "LLM09:2025 - Overreliance"
19
+ owasp_agentic:
20
+ - "ASI04:2026 - Unbounded Consumption"
21
+ mitre_atlas:
22
+ - "AML.T0048"
23
+ tags:
24
+ category: skill-compromise
25
+ subcategory: c2-communication
26
+ scan_target: skill
27
+ confidence: high
28
+ agent_source:
29
+ type: mcp_exchange
30
+ framework: [any]
31
+ provider: [any]
32
+ detection:
33
+ conditions:
34
+ - field: content
35
+ operator: regex
36
+ value: '(C2\s+server|command\s+control|malware\s+actor)\s+[^\n]*\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}'
37
+ description: 'References to C2 server or malware actor with IP address'
38
+ - field: content
39
+ operator: regex
40
+ value: '(known|identified|detected)\s+(malware|threat|actor|server)[^\n]*\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}'
41
+ description: 'Explicit identification of malicious infrastructure with IP'
42
+ - field: content
43
+ operator: regex
44
+ value: '\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}[^\n]*(C2|command|control|backdoor|malware)'
45
+ description: 'IP address followed by malicious infrastructure terms'
46
+ - field: content
47
+ operator: regex
48
+ value: '(91\.92\.24[0-9]\.|185\.159\.15[0-9]\.|194\.87\.9[0-9]\.)[0-9]{1,3}'
49
+ description: 'Known malicious IP ranges commonly used for C2'
50
+ - field: content
51
+ operator: regex
52
+ value: 'finding_[0-9]+:\s*(known|identified)\s+(malware|threat|C2|command)'
53
+ description: 'Structured threat intelligence findings format'
54
+ condition: any
55
+ false_positives:
56
+ - 'Security research documentation describing C2 patterns'
57
+ - 'Threat intelligence feeds in legitimate security tools'
58
+ - 'Network monitoring tools documenting suspicious activity'
59
+ response:
60
+ actions: [alert, block_tool]
61
+ message_template: >
62
+ [ATR-2026-00225] Skill contains reference to known malicious IP infrastructure
63
+ test_cases:
64
+ true_positives:
65
+ - input: 'finding_0: Known malware actor: C2 server at 91.92.242.30'
66
+ expected: triggered
67
+ - input: 'Command control server identified at 185.159.158.42'
68
+ expected: triggered
69
+ - input: 'Malware actor using 194.87.95.123 for C2 communications'
70
+ expected: triggered
71
+ - input: 'Known C2 infrastructure: 91.92.241.15'
72
+ expected: triggered
73
+ - input: '203.45.67.89 - detected malware server'
74
+ expected: triggered
75
+ true_negatives:
76
+ - input: 'Connect to database at 192.168.1.100'
77
+ expected: not_triggered
78
+ reason: 'Private IP address for legitimate database connection'
79
+ - input: 'API endpoint: https://api.youtube.com/v3/videos'
80
+ expected: not_triggered
81
+ reason: 'Legitimate API endpoint without suspicious context'
82
+ - input: 'Server configuration: bind to 0.0.0.0:8080'
83
+ expected: not_triggered
84
+ reason: 'Standard server binding configuration'
85
+ - input: 'Load balancer IP: 10.0.0.50'
86
+ expected: not_triggered
87
+ reason: 'Private network infrastructure IP'
88
+ - input: 'Monitor health check to 172.16.0.1'
89
+ expected: not_triggered
90
+ reason: 'Private IP range for internal monitoring'
91
+ evasion_tests:
92
+ - input: 'Server location: 91[.]92[.]242[.]30'
93
+ expected: not_triggered
94
+ bypass_technique: 'IP defanging'
95
+ notes: 'Brackets used to defang IP address in security documentation'
96
+ - input: 'Base64: OTEuOTIuMjQyLjMw (decodes to suspicious IP)'
97
+ expected: not_triggered
98
+ bypass_technique: 'Base64 encoding'
99
+ notes: 'IP address encoded in Base64 to evade plain text detection'
100
+ - input: 'Hex encoded: 5b.5c.f2.1e (91.92.242.30 in hex)'
101
+ expected: not_triggered
102
+ bypass_technique: 'Hexadecimal encoding'
103
+ notes: 'IP address represented in hexadecimal notation'