Vulnerability Scanning
Scan for Misconfigured Software
Scan URLs for web misconfigurations: exposed APIs, debug surfaces, default-state takeover. Response-validated. Not CVE matching, not config files.
What Scan for Misconfigured Software does
Web misconfiguration scanning asks whether an instance is still in a default or unsafe setup state: an API left public, a debug surface left on, an uninitialized app a visitor can finish installing and take over. This module probes a URL list for those setup issues and validates responses to cut false positives. It is not CVE matching and not leftover config file hunting.
You feed a URL list. This module probes live URLs for web misconfigurations: setup disclosure, exposed APIs, debug surfaces, and default-state takeover such as an uninitialized GitLab or a public Swagger API. It validates responses to cut false positives. The question is whether setup is still default, not whether a CVE matcher fired.
Where it fits in the pipeline
Pipeline guidance
- Upstream: live URLs from Probe for Web Servers. Nested path seeds from Discover Paths via Crawling, Discover Paths via Directory Brute Force, or Discover Paths via OSINT Sources.
- Downstream:
findingsinto Generate Scan Report. - Parallel: the other five URL-list scanners on the same
urlsface. Same contract, different artifact class, unswappable H1s.
This family sits on the web tail after probe (hosts -> probe-web -> this family). It does not sit on hosts -> open-ports -> network FP -> (misconfig | weak-creds). Do not cross-wire to Scan Network Services for Misconfigurations; that takes port-details, not a URL list.
When to use this
Nest this after you have live web URLs and you want to know whether setup is still default: is the API public, is debug left on, can a visitor finish setup and take the box. A root-only URL list misses nested misconfigs; seed deeper paths from crawling or directory brute force when you care about paths under /app.
Inputs and outputs
- Required
urls(FILE): live web server URLs, one per line. Example:https://foo.example.com,https://bar.example.com/app.
- Optional
header(STRING): header(s) to include in HTTP requests.header-file(FILE): file of header(s) to include.rate-limit(STRING): max requests per second per machine. Default 300.findings: JSONLines rows. Published fields: finding, location, severity, hostname, domain_name, ip_address, method, description, and the triggeringrequest. Example rows: Uninitialized GitLab instances (high), Public Swagger API (info). v1.0.1 added Basic Auth at info.
Data
The tables this module produces. Sample rows are illustrative.
Web misconfiguration findings: exposed APIs, debug surfaces, and default-state takeover.
findingtext | locationurl | severitytext | matchestext | descriptiontext | hostnametext | domain_nametext | ip_addresstext | methodtext | fieldtext | |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Uninitialized GitLab Instance | https://git.example.com/ | high | default-state | GitLab instance is uninitialized and can be taken over by completing setup. | git.example.com | example.com | 203.0.113.30 | GET | |
| 2 | Public Swagger API | https://api.example.com/swagger.json | info | swagger-ui | Swagger API documentation is publicly accessible. | api.example.com | example.com | 198.51.100.40 | GET | |
| 3 | Debug Surface Exposed | https://app.example.com/debug | high | debug-endpoint | Debug endpoint is reachable without authentication. | app.example.com | example.com | 203.0.113.20 | GET |
How it differs from similar modules
Scan for Misconfigured Software
Artifact class it owns
Insecure setup: APIs, debug, default-state takeover
Upstream it needs
live urls
Artifact class it owns
Login UI, then default creds on a subset
Upstream it needs
live urls
Artifact class it owns
Token patterns in the live HTTP response
Upstream it needs
live urls
Do not 301 any of these six onto each other. Do not collapse this page into the network-services misconfig module (different tail, different input).
questions
Scan for Misconfigured Software questions
Related modules
Scan for Outdated Software
Scan for Sensitive Files
Scan for Exposed Admin Panels
Scan for Exposed Backups
Scan for Exposed Secrets
Probe for Web Servers
Discover Paths via Crawling
Discover Paths via Directory Brute Force
Discover Paths via OSINT Sources
Scan Network Services for Misconfigurations
network twin; `port-details`, not this job
Generate Scan Report
/tools/nikto
fixed checklist; distinction, not the engine this module wraps
Nest Scan for Misconfigured Software in a workflow
Drop this module into a Trickest workflow and connect it to your upstream and downstream nodes. The face contract above is the wiring.
Get a personalized demo
See Trickest in Action
A 30-minute walkthrough. We map the platform to your stack and answer pricing and deployment questions for your environment.