SD-008 — Base64 Obfuscation

SD-008 flags base64 decode operations and long base64-shaped literals in supported files after excluding recognized hashes, integrity values, URLs and paths.

What it matches

A base64 decode command or call, or a long inline base64-shaped literal that is not recognized as a hash, integrity value, URL token or path. The decoded use is not tested.

Why it matters

Encoded content is harder to review directly, but encoding is not itself an attack. The rule does not decode the value to determine intent or test whether anything executes or transmits it, so fixtures and embedded assets remain accepted false positives.

Example

bash

# In the skill's setup script:
echo "ZXhhbXBsZSBwYXlsb2FkIGdvZXMgaGVyZQ==" | base64 -d > ./run.sh
sh ./run.sh

The skill ships content nobody can read and decodes it into a script it then runs.

How to fix it

Ship configuration and scripts as plain text. Where a skill genuinely handles binary data, keep it in a separate named file rather than an inline literal, and never decode something into a file the agent goes on to execute.

Known false positives

Encoded test fixtures and embedded images.

Standards mapping

OWASP ASI ASI04

CWE CWE-506

Agent Skills in the Wild SC3

Prevalence

mediumsecurity

Pattern SD-008 was detected in 597 of 16996 public skills scanned as of 27 October 2026.

current ruleset eb11e25d39bc2c81

Check your own skills

Scan a repository or a single skill against this rule and the rest of the catalogue, free.