wstg-input-validation

Tests web applications for injection and input validation flaws using OWASP WSTG methodology.

Updated Jul 29, 2026
One-click install
npx skills add https://github.com/MaiconGambini/opencode-harness-guide --skill wstg-input-validation-maicongambini
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: wstg-input-validation
Source: https://github.com/MaiconGambini/opencode-harness-guide/tree/main/skills/wstg-input-validation
Command: npx skills add https://github.com/MaiconGambini/opencode-harness-guide --skill wstg-input-validation-maicongambini

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Penetration testers and security assessors need a structured, comprehensive methodology to systematically test web applications for the full range of input validation vulnerabilities, from XSS and SQL injection to SSRF and template injection, without missing test cases or relying on ad-hoc approaches. ## Core Features & Use Cases - 19 Structured Test Cases: Covers WSTG-INPV-01 through WSTG-INPV-19 from OWASP WSTG v4.2, including reflected/stored XSS, SQL injection across 8 DBMS variants, LDAP, XML/XXE, XPath, command injection, SSTI, and SSRF. - DBMS-Specific SQL Injection Guidance: Provides tailored techniques for Oracle, MySQL, SQL Server, PostgreSQL, MS Access, NoSQL, ORM layers, and client-side SQL. - Remediation Guidance: Each test case includes concrete remediation steps such as parameterized queries, output encoding, and allow-list validation. - Use Case: During a web application penetration test, use this Skill to methodically work through each input vector—query strings, POST bodies, headers, cookies, and file uploads—applying the appropriate injection payloads and documenting findings per WSTG test ID. ## Quick Start Use the wstg-input-validation skill to test this web application's login form and search endpoint for SQL injection and XSS vulnerabilities.

Frequently Asked Questions about wstg-input-validation

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I test a web application for SQL injection vulnerabilities?

Test all input fields, hidden POST fields, cookies, and HTTP headers with single quotes, semicolons, and comment delimiters. Observe error messages for database fingerprinting, then apply Union-based, boolean-based blind, error-based, out-of-band, or time-delay techniques depending on the application's behavior.

What is the OWASP WSTG input validation testing methodology?

It is a structured set of 19 test cases (WSTG-INPV-01 to 19) covering reflected and stored XSS, SQL injection across 8 DBMS variants, LDAP, XML/XXE, XPath, IMAP/SMTP, code, command, and format string injection, plus HTTP splitting, host header injection, SSTI, and SSRF.

How do I detect server-side template injection (SSTI)?

Inject common template expressions like {{7*7}}, ${7*7}, or <%= 7*7 %> into user-controlled fields. If the response evaluates to 49, SSTI is confirmed. Then identify the specific engine (Jinja2, Twig, FreeMarker) using engine-specific syntax to build further exploits.

Does this methodology cover blind SQL injection techniques?

Yes. It covers boolean-based blind injection, time-based techniques using SLEEP(), BENCHMARK(), pg_sleep(), or WAITFOR DELAY depending on the DBMS, and out-of-band methods such as INTO OUTFILE or DNS exfiltration when responses are suppressed.

What are the limitations of deny-list input validation?

Deny-lists miss novel encodings and obfuscations, and single-pass sanitization can be bypassed by nesting malicious payloads within stripped tokens. The methodology recommends allow-list validation and parameterized queries as the reliable defenses.