yara-rule-authoring

ISSUES FOUND max severity CRITICALSkillSpector Do not install 100 registry trailofbits last scanned 1 scan

19 findings (15 critical, 3 high, 1 low), mainly command injection, obfuscation, policy violation. Most recent scan 2026-02-08.

Second scanner: NVIDIA SkillSpector

Independent static run, no language model, over the same files as the Cisco scan above. How the two scanners compare across the whole corpus: Two scanners, one corpus.

What this skill does

Guides authoring of high-quality YARA-X detection rules for malware identification. Use when writing, reviewing, or optimizing YARA rules. Covers naming conventions, string selection, performance optimization, migration from legacy YARA, and false positive reduction. Triggers on: YARA, YARA-X, malware detection, threat hunting, IOC, signature, crx module, dex module.

Package
16 files, 153 KB
SKILL.md
3637 words, 12+ sections
Code
Python (2)

SKILL.md covers: YARA-X Rule Authoring · Core Principles · When to Use · When NOT to Use · YARA-X Overview · Platform Considerations · macOS Malware Detection · JavaScript Detection Decision Tree · Essential Toolkit · Rationalizations to Reject · Decision Trees · Is This String Good Enough?

Findings

CRITICAL INJECTION ATTACK detected by YARA Command Injectionstatic

Detects embedded scripting payloads (JS, VBScript, etc.) in MCP tool descriptions: #

scripts/atom_analyzer.py:1

# /// script
Remediation: Review and remove injection attack pattern
CRITICAL INJECTION ATTACK detected by YARA Command Injectionstatic

Detects embedded scripting payloads (JS, VBScript, etc.) in MCP tool descriptions: \033[91m

scripts/atom_analyzer.py:455

print(f"\033[91mYARA-X compilation error in {file_path}:\033[0m {e}", file=sys.stderr)
Remediation: Review and remove injection attack pattern
CRITICAL INJECTION ATTACK detected by YARA Command Injectionstatic

Detects embedded scripting payloads (JS, VBScript, etc.) in MCP tool descriptions: \033[0m

scripts/atom_analyzer.py:455

print(f"\033[91mYARA-X compilation error in {file_path}:\033[0m {e}", file=sys.stderr)
Remediation: Review and remove injection attack pattern
CRITICAL INJECTION ATTACK detected by YARA Command Injectionstatic

Detects embedded scripting payloads (JS, VBScript, etc.) in MCP tool descriptions: \033[1m

scripts/atom_analyzer.py:466

print(f"\n\033[1m{rule_name}\033[0m")
Remediation: Review and remove injection attack pattern
CRITICAL INJECTION ATTACK detected by YARA Command Injectionstatic

Detects embedded scripting payloads (JS, VBScript, etc.) in MCP tool descriptions: \033[0m

scripts/atom_analyzer.py:466

print(f"\n\033[1m{rule_name}\033[0m")
Remediation: Review and remove injection attack pattern
CRITICAL INJECTION ATTACK detected by YARA Command Injectionstatic

Detects embedded scripting payloads (JS, VBScript, etc.) in MCP tool descriptions: \033[91m

scripts/atom_analyzer.py:480

color = "\033[91m"
Remediation: Review and remove injection attack pattern
CRITICAL INJECTION ATTACK detected by YARA Command Injectionstatic

Detects embedded scripting payloads (JS, VBScript, etc.) in MCP tool descriptions: \033[93m

scripts/atom_analyzer.py:482

color = "\033[93m"
Remediation: Review and remove injection attack pattern
CRITICAL INJECTION ATTACK detected by YARA Command Injectionstatic

Detects embedded scripting payloads (JS, VBScript, etc.) in MCP tool descriptions: \033[94m

scripts/atom_analyzer.py:484

color = "\033[94m"
Remediation: Review and remove injection attack pattern
CRITICAL INJECTION ATTACK detected by YARA Command Injectionstatic

Detects embedded scripting payloads (JS, VBScript, etc.) in MCP tool descriptions: \033[0m

scripts/atom_analyzer.py:486

print(f"    {color}{issue.severity.upper()}\033[0m: {issue.message}")
Remediation: Review and remove injection attack pattern
CRITICAL INJECTION ATTACK detected by YARA Command Injectionstatic

Detects embedded scripting payloads (JS, VBScript, etc.) in MCP tool descriptions: #

scripts/yara_lint.py:1

# /// script
Remediation: Review and remove injection attack pattern
CRITICAL INJECTION ATTACK detected by YARA Command Injectionstatic

Detects embedded scripting payloads (JS, VBScript, etc.) in MCP tool descriptions: \033[91m

scripts/yara_lint.py:547

red = "\033[91m"
Remediation: Review and remove injection attack pattern
CRITICAL INJECTION ATTACK detected by YARA Command Injectionstatic

Detects embedded scripting payloads (JS, VBScript, etc.) in MCP tool descriptions: \033[93m

scripts/yara_lint.py:548

yellow = "\033[93m"
Remediation: Review and remove injection attack pattern
CRITICAL INJECTION ATTACK detected by YARA Command Injectionstatic

Detects embedded scripting payloads (JS, VBScript, etc.) in MCP tool descriptions: \033[94m

scripts/yara_lint.py:549

blue = "\033[94m"
Remediation: Review and remove injection attack pattern
CRITICAL INJECTION ATTACK detected by YARA Command Injectionstatic

Detects embedded scripting payloads (JS, VBScript, etc.) in MCP tool descriptions: \033[0m

scripts/yara_lint.py:550

reset = "\033[0m"
Remediation: Review and remove injection attack pattern
CRITICAL INJECTION ATTACK detected by YARA Command Injectionstatic

Detects embedded scripting payloads (JS, VBScript, etc.) in MCP tool descriptions: \033[1m

scripts/yara_lint.py:551

bold = "\033[1m"
Remediation: Review and remove injection attack pattern
HIGH XOR operations often used for obfuscation Obfuscationstatic

Pattern detected: xor

scripts/yara_lint.py:424

# xor without range
Remediation: Remove XOR encoding unless clearly justified
HIGH XOR operations often used for obfuscation Obfuscationstatic

Pattern detected: xor

scripts/yara_lint.py:425

if "xor" in modifiers and not any("xor(" in str(m) for m in modifiers):
Remediation: Remove XOR encoding unless clearly justified
HIGH XOR operations often used for obfuscation Obfuscationstatic

Pattern detected: xor

scripts/yara_lint.py:430

message=f"String {string_id} uses 'xor' without range; generates 255 patterns",
Remediation: Remove XOR encoding unless clearly justified
LOW Skill does not specify a license Policy Violationstatic

Skill manifest does not include a 'license' field. Specifying a license helps users understand usage terms.

SKILL.md

Remediation: Add 'license' field to SKILL.md frontmatter (e.g., MIT, Apache-2.0)

What is in the package

FileKindSize
SKILL.mddoc26 KB
examples/MAL_Mac_ProtonRAT_Jan25.yarother3.4 KB
examples/MAL_NPM_SupplyChain_Jan25.yarother5.7 KB
examples/MAL_Win_Remcos_Jan25.yarother3.3 KB
examples/SUSP_CRX_SuspiciousPermissions.yarother4.4 KB
examples/SUSP_JS_Obfuscation_Jan25.yarother6.0 KB
references/crx-module.mddoc6.5 KB
references/dex-module.mddoc10 KB
references/performance.mddoc8.0 KB
references/strings.mddoc11 KB
references/style-guide.mddoc7.9 KB
references/testing.mddoc13 KB
scripts/atom_analyzer.pyscript15 KB
scripts/pyproject.tomlconfig553 B
scripts/yara_lint.pyscript19 KB
workflows/rule-development.mddoc13 KB

External hosts referenced

github.com objective-see.org developer.chrome.com www.elastic.co www.nist.gov www.virustotal.com yara-ci.cloud.virustotal.com yaradbg.dev analysis-report-url.com blog.malwarebytes.com blog.phylum.io stairwell.com www.veracode.com yara.readthedocs.io

Hostnames that appear in the skill's files. Referencing a host is not a finding; compare against the findings above and the skill's stated purpose.

Package contents recorded 2026-10-22 at commit a50696e20581. The scan above ran against the version current at scan time; the two can differ if the skill has since been updated.

What we checked

What we did not check

Sources