Skip to content

Security: diegosouzapw/awesome-omni-skills

SECURITY.md

๐Ÿ›ก๏ธ Security Policy


๐Ÿšจ Reporting a Vulnerability

If you discover a security issue in Awesome Omni Skills, do not open a public issue first.

Please report through one of these private channels:

Channel How
๐Ÿ”’ GitHub Security Advisory Open a private advisory
๐Ÿ“ง Direct Contact Contact the maintainers directly

๐Ÿ“‹ Include in Your Report

  • ๐Ÿ“ Affected component or path
  • ๐Ÿ”„ Reproduction steps
  • โš ๏ธ Impact assessment
  • ๐Ÿงช Any proof-of-concept material needed to verify the issue

โฑ๏ธ We aim to acknowledge reports within 48 hours and prioritize fixes according to impact.


๐ŸŽฏ Scope

This policy covers the repository's runtime and content surfaces:

Component Path
๐Ÿ–ฅ๏ธ CLI and installer packages/cli/
๐Ÿ“š Shared catalog runtime packages/catalog-core/
๐Ÿ”Œ Install targets packages/install-targets/
โš™๏ธ Build and validation scripts tools/scripts/
๐Ÿ“ฆ Generated catalog artifacts dist/
๐ŸŒ API, MCP, and A2A packages packages/server-api/ ยท packages/server-mcp/ ยท packages/server-a2a/
๐Ÿง  Skill content skills/ โ€” especially shell commands, network access, credential flows, or security-sensitive guidance

๐Ÿ” Current Security Model

The repository relies on the following security controls:

๐Ÿง  Skill-Level Controls

Control Description
๐Ÿท๏ธ Risk field Skill metadata includes a declared risk level
๐Ÿ“Š Scoring Validation computes maturity, best-practices, quality, and security scores
๐Ÿ” Static scanner Inspects SKILL.md, packaged files, and helper scripts, and blocks critical findings from entering the public catalog
๐Ÿฆ  Release malware verification Published releases are verified with both ClamAV and VirusTotal before publication

๐Ÿšซ Hard Content Blocks

The public repository does not accept skills that trip the critical security gate. Current hard blockers include:

  • remote content piped directly into shell execution
  • instructions that attempt to reveal prompts, secrets, or hidden runtime context

When the validator finds one of those patterns, the skill does not enter the public catalog. In external-repository intake, valid siblings may still continue while the blocked skills are excluded and reported separately.

๐Ÿ–ฅ๏ธ Runtime Controls

Control Description
๐Ÿ“ Path safety Install flows use path safety checks
๐Ÿ”’ Allowlist writes Local MCP sidecar writes constrained by an allowlist
๐Ÿ‘๏ธ Dry-run defaults Write-oriented tools default to dry-run unless explicitly disabled
๐Ÿ” Auth & limits Bearer/API-key auth, admin runtime auth, rate limiting, CORS/IP allowlists
๐Ÿ“‹ Audit Audit logging, maintenance mode, and request IDs

๐Ÿ“ฆ Release Controls

Control Description
โœ… Checksum manifests SHA-256 checksums for generated archives
โœ๏ธ Signatures Detached signature verification in CI before publication
๐Ÿฆ  Dual scanner gate ClamAV and VirusTotal both required to complete cleanly for release publication
๐Ÿงช Smoke checks Exercise shipped runtime surfaces before release

๐Ÿ”ฎ What Is Still Open

The main security work remaining is not baseline hardening. The open items are:

Area Status
๐Ÿข Enterprise governance External identity, gateway policy, and WAF integration above current in-process controls
๐Ÿ”Œ MCP client writers Broader writers only when public config contracts are stable enough
๐Ÿ“Š Scanner refinement Continued refinement so exceptional skills stay clearly separated from merely well-structured ones

โš ๏ธ Risk Levels in Skills

Each skill declares one of these risk levels:

Risk Level Meaning
๐ŸŸข safe No destructive operations expected
๐ŸŸก caution May modify files or interact with external systems
๐Ÿ”ด offensive Security-testing or adversarial workflows requiring explicit authorization
โ›” critical High-impact or system-level operations

๐Ÿ“‹ Disclosure Notes

Because Awesome Omni Skills ships executable helpers, filesystem-aware local tooling, and client-specific config writers, these vulnerability classes should be treated as high priority even if they appear "local only":

Category Examples
๐Ÿ“ Path traversal Directory escape via skill install or config paths
๐Ÿ”— Symlink safety Symlink following during install or archive extraction
๐Ÿ–ฅ๏ธ Command execution Arbitrary command injection via skill content or scripts
๐Ÿ“ฆ Archive verification Bypass of checksum or signature verification
๐Ÿ”“ Auth bypass Rate-limiting or authentication bypass on API/MCP
๐Ÿ”Œ Allowlist bypass Local sidecar allowlist circumvention
๐Ÿฆ  Scanner evasion False-negative classes in static or external scanners

There aren't any published security advisories