mirror of
https://github.com/projectdiscovery/nuclei.git
synced 2025-12-27 05:15:30 +00:00
* fuzz: rename 'filters' -> 'pre-condition' * code proto: pre-condition + integration test * feat: dsl document generator * update dsl page header * fix lint error * add js defined helper funcs in docs * remove panic recovery unless its for third party(go-rod,goja) * handle dynamic values flattening edgecase in flow+multiprotocol * fix order of kv in form-data (failing test) * fix template loading counters * Revert "handle dynamic values flattening edgecase in flow+multiprotocol" This reverts commit 58fdd4faf7df5d654b46a9585011f614d5c98aa4. * fix flow iteration using 'iterate'
42 lines
1.1 KiB
YAML
42 lines
1.1 KiB
YAML
id: path-based-sqli
|
|
|
|
info:
|
|
name: Path Based SQLi
|
|
author: pdteam
|
|
severity: info
|
|
description: |
|
|
This template attempts to find SQL injection vulnerabilities on path based sqli and replacing numerical values with fuzzing payloads.
|
|
ex: /admin/user/55/profile , /user/15/action/update, /posts/15, /blog/100/data, /page/51/ etc these types of paths are filtered and
|
|
replaced with sqli path payloads.
|
|
Note: this is example template, and payloads/matchers need to be modified appropriately.
|
|
|
|
http:
|
|
- pre-condition:
|
|
- type: dsl
|
|
dsl:
|
|
- 'method == "GET"'
|
|
- regex("/(.*?/)([0-9]+)(/.*)?",path)
|
|
condition: and
|
|
|
|
payloads:
|
|
pathsqli:
|
|
- "'OR1=1"
|
|
- '%20OR%20True'
|
|
|
|
fuzzing:
|
|
- part: path
|
|
type: replace-regex
|
|
mode: single
|
|
replace-regex: '/(.*?/)([0-9]+)(/.*)?'
|
|
fuzz:
|
|
- '/${1}${2}{{pathsqli}}${3}'
|
|
|
|
matchers:
|
|
- type: status
|
|
status:
|
|
- 200
|
|
|
|
- type: word
|
|
words:
|
|
- "admin"
|
|
matchers-condition: and |