Skip to content

Rule Reference

SEC429lintai-ai-securitystablemarkdownwarn

AI markdown: unsafe Write path grant

AI-native markdown frontmatter grants `Write(...)` over an unsafe repo-external path

Provider
lintai-ai-security
Surface
markdown
Scope
per_file
Tier
stable
Severity
warn
Confidence
high
Detection
structural
Remediation
message_only

Activation Model

Preset Membership

This rule is part of the builtin activation graph through these preset memberships.

Lifecycle

Stable Lifecycle Contract

State

stable_gated

Graduation rationale

Checks AI-native frontmatter for `Write(...)` grants scoped to absolute, home-relative, drive-letter, or parent-traversing paths outside the repository boundary.

Deterministic signal basis

MarkdownSignals exact frontmatter token analysis for `Write(...)` scopes with absolute, home-relative, drive-letter, or parent-traversing path markers.

Malicious corpus
skill-write-unsafe-path-allowed-tools
Benign corpus
skill-write-unsafe-path-allowed-tools-specific-safe
structured evidence required remediation reviewed
Canonical note

Structural stable rule intended as a high-precision check with deterministic evidence.

Nearby Signals

Related Rules

SEC429 / MD-WRITE-UNSAFE-PATH

SEC429 flags AI-native markdown frontmatter when allowed-tools or allowed_tools grants Write(...) over an absolute path, home-relative path, Windows drive path, or parent-traversing path.

Why It Matters

Shared instruction frontmatter should keep file-write authority tightly scoped. Repo-external or parent-traversing Write(...) grants can turn routine skills into policy that writes outside the intended workspace.

Trigger Shape

  • AI-native markdown surface with parsed frontmatter
  • path is not fixture-like
  • allowed-tools or allowed_tools contains Write(...)
  • the inner path starts with /, ~/, ~\\, a Windows drive prefix, or contains ../ or ..\\

Clean Cases

  • repo-local scopes such as Write(./artifacts/**)
  • frontmatter without Write(...)
  • fixture-like examples under test or fixture paths

Example Trigger

md
---
allowed-tools: Write(../shared/**), Read(./docs/**)
---

Safer Example

md
---
allowed-tools: Write(./artifacts/**), Read(./docs/**)
---

How To Fix

Replace repo-external Write(...) grants with narrower repo-local scopes, or remove shared write authority outside the project boundary.