input-validation
SKILL.md
Input Validation Skill
Purpose
Defines input validation and sanitization patterns for preventing security vulnerabilities and ensuring data integrity.
Core Principles
- Validate all input — Never trust user-supplied data
- Allowlist over denylist — Define what IS allowed
- Validate on server-side — Client-side validation is UX only
- Encode output — Context-appropriate encoding
- Fail securely — Reject invalid input with safe defaults
HTML/Static Site Validation
- Sanitize any user-generated content before rendering
- Use
textContentinstead ofinnerHTMLwhen possible - Escape HTML entities (
&,<,>,",') - Validate URL inputs (protocol allowlist: https only)
- Use Content Security Policy (CSP) headers
XSS Prevention
// Use DOMPurify or built-in escaping
function escapeHtml(text) {
const div = document.createElement('div');
div.textContent = text;
return div.innerHTML;
}
JSON Schema Validation
- Validate API response data against schemas
- Use AJV for JSON Schema validation
- Define strict schemas for all data structures
URL Validation
- Allowlist protocols (https only)
- Validate domain against known sources
- Sanitize query parameters
- Prevent open redirect vulnerabilities
ISO 27001 Mapping
- A.8.26 — Application security requirements
- A.8.28 — Secure coding
Related Policies
Weekly Installs
2
Repository
hack23/riksdagsmonitorGitHub Stars
2
First Seen
11 days ago
Security Audits
Installed on
amp2
cline2
opencode2
cursor2
kimi-cli2
codex2