Install
openclaw skills install inputshieldInput validation & sanitization scanner -- catches missing validation, unsafe deserialization, ReDoS, path traversal, command injection, and XSS patterns
openclaw skills install inputshieldInputShield scans codebases for missing input validation, unsafe deserialization, ReDoS (Regular Expression Denial of Service), path traversal, command injection, XSS via unsanitized output, and other input handling vulnerabilities. It uses regex-based pattern matching against 90 vulnerability patterns across 6 detection categories, produces markdown reports with actionable remediation recommendations, and integrates with git hooks via lefthook. 100% local. Zero telemetry.
inputshield scan [file|directory]One-shot input validation scan of files or directories.
How to execute:
bash "<SKILL_DIR>/scripts/dispatcher.sh" --path [target]
What it does:
Example usage scenarios:
inputshield scan .inputshield scan src/inputshield scan .inputshield scan .inputshield scan .inputshield scan src/inputshield scan --tier pro [file|directory]Full scan with 60 patterns (10 per category).
How to execute:
bash "<SKILL_DIR>/scripts/dispatcher.sh" --path [target] --tier pro --license-key "$INPUTSHIELD_LICENSE_KEY"
What it does:
inputshield hooks installInstall git pre-commit hooks that scan staged files for input validation issues before every commit.
How to execute:
bash "<SKILL_DIR>/scripts/dispatcher.sh" hooks install
What it does:
inputshield hooks uninstallRemove InputShield git hooks.
bash "<SKILL_DIR>/scripts/dispatcher.sh" hooks uninstall
inputshield report [directory]Generate a markdown input validation report with findings, severity breakdown, and remediation steps.
bash "<SKILL_DIR>/scripts/dispatcher.sh" report --path [directory]
What it does:
inputshield scan --tier team [file|directory]Complete scan with all 90 patterns (15 per category).
bash "<SKILL_DIR>/scripts/dispatcher.sh" --path [target] --tier team --license-key "$INPUTSHIELD_LICENSE_KEY"
inputshield audit [directory]Deep input validation audit with all 90 patterns and verbose output.
bash "<SKILL_DIR>/scripts/dispatcher.sh" audit --path [directory] --verbose
What it does:
inputshield scan --category [IV|DS|RD|PT|CI|XS]Category-specific scan to focus on a single vulnerability class.
bash "<SKILL_DIR>/scripts/dispatcher.sh" --path [target] --category CI
inputshield statusShow license and configuration information.
bash "<SKILL_DIR>/scripts/dispatcher.sh" status
InputShield detects 90 vulnerability patterns across 6 categories (15 patterns each):
| Category | Code | Examples | Severities |
|---|---|---|---|
| Input Validation | IV | Missing length checks, no type validation, raw user input acceptance, missing allowlist, no boundary checks, unvalidated numeric input, missing null checks, regex-less format validation | Critical/High/Medium/Low |
| Deserialization | DS | Unsafe JSON.parse, pickle.loads, yaml.load without SafeLoader, Java ObjectInputStream, unvalidated unmarshaling, PHP unserialize, Ruby Marshal.load, .NET BinaryFormatter | Critical/High/Medium |
| ReDoS | RD | Catastrophic backtracking, nested quantifiers, overlapping alternations, exponential patterns, unbounded repetition on complex groups, evil regex constructs | High/Medium/Low |
| Path Traversal | PT | Directory traversal (../), unsanitized file paths, user-controlled file access, symlink following, path joining with user input, open() with variables, file inclusion | Critical/High/Medium |
| Command Injection | CI | Shell exec with user input, eval(), exec(), system() with variables, subprocess with shell=True, os.popen, template injection, child_process.exec | Critical/High/Medium |
| XSS/Output | XS | innerHTML with user data, dangerouslySetInnerHTML, document.write, unsanitized template interpolation, missing output encoding, v-html directive, raw HTML rendering | Critical/High/Medium/Low |
| Level | Meaning | Score Weight | Action Required |
|---|---|---|---|
| Critical | Directly exploitable vulnerabilities (RCE, injection) | -25 points | Fix immediately -- blocks deployment |
| High | Serious security risks requiring prompt attention | -15 points | Fix in current sprint |
| Medium | Potential vulnerabilities that need review | -8 points | Review and remediate |
| Low | Informational, possible false positives, style issues | -3 points | Investigate when convenient |
InputShield calculates an Input Safety Score from 0 to 100:
| Grade | Score Range | Meaning |
|---|---|---|
| A | 90-100 | Excellent -- minimal or no input validation issues |
| B | 80-89 | Good -- minor issues that should be addressed |
| C | 70-79 | Acceptable -- passing threshold, issues need attention |
| D | 60-69 | Poor -- below threshold, significant issues found |
| F | 0-59 | Failing -- critical input validation vulnerabilities detected |
| Tier | Patterns Available | Per Category | Price |
|---|---|---|---|
| Free | 30 patterns | 5 per category | $0 |
| Pro | 60 patterns | 10 per category | $19/user/month |
| Team | 90 patterns (all) | 15 per category | $39/user/month |
| Enterprise | 90 patterns (all) | 15 per category | Custom pricing |
Users can configure InputShield in ~/.openclaw/openclaw.json:
{
"skills": {
"entries": {
"inputshield": {
"enabled": true,
"apiKey": "YOUR_LICENSE_KEY_HERE",
"config": {
"severityThreshold": "high",
"ignorePatterns": ["**/test/**", "**/fixtures/**", "**/*.test.*"],
"ignoreChecks": [],
"reportFormat": "markdown",
"categories": ["IV", "DS", "RD", "PT", "CI", "XS"]
}
}
}
}
}
InputShield supports three output formats via --format:
grep -Ehooks install, prompt to install itThe user might say things like: