2026-08-13

Vulnerability Scanning

Scan for Sensitive Files

Probe known paths for .env, .git/config, logs, and dev artifacts, and validate the body looks like a real file. Cuts soft-404s across a URL fleet.

Agent

What Scan for Sensitive Files does

Sensitive files exposed on the web root are configs, logs, .git metadata, and .env files that hand credentials and source to anyone who knows the path. This module probes known paths for those files and validates the response body so a soft-404 does not become a finding. It runs across thousands of web servers in one pass.

You feed a live URL list. The module probes known paths for configs, logs, .git, .env, .aws/credentials, and other development artifacts, then validates the response body so a status code alone is not a finding. It does not hunt hostname-named backup archives, and it does not run a body-wide secret regex across HTML. Flags live on tool pages; the hard problem here is telling a real config from a soft-404.

Where it fits in the pipeline

Illustrative excerpt. Each node is a Trickest module.

Upstream

Live URLs from Probe for Web Servers. Nested .env and .git/config need path seeds from Discover Paths via Crawling or Discover Paths via Directory Brute Force.

Downstream

findings into Generate Scan Report.

Parallel

The other exposed-artifact modules on the same URL list: Scan for Exposed Admin Panels, Scan for Exposed Backups, and Scan for Exposed Secrets. Each owns a different artifact class. Do not share one H1.

When to use this

Nest this after you have live web URLs and you want to know which known sensitive-file paths serve real content. A root-only URL list misses nested .env and .git/config; nest after path discovery for that coverage.

Inputs and outputs

Required
  • urls (FILE): live HTTP 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 of finding details. Published fields: finding, location, severity, hostname, domain_name, ip_address, method, description, and (v1.2.1) the HTTP request that triggered the row. README examples: Git Configuration at /.git/config (medium) and AWS Credentials at /.aws/credentials (high).

Data

The tables this module produces. Sample rows are illustrative.

findings9 columns · 3 sample rows

Sensitive files at known paths whose response body validated as a real file.

findingtext
locationurl
severitytext
hostnametext
domain_nametext
ip_addresstext
methodtext
descriptiontext
requesttext
1Git Configurationhttps://app.example.com/.git/configmediumapp.example.comexample.com203.0.113.10GETRepository config exposed at /.git/config.GET /.git/config HTTP/1.1
2AWS Credentialshttps://app.example.com/.aws/credentialshighapp.example.comexample.com203.0.113.10GETCloud credential file exposed at /.aws/credentials.GET /.aws/credentials HTTP/1.1
3Environment Filehttps://api.example.com/.envhighapi.example.comexample.com198.51.100.42GETApplication .env file served from the web root.GET /.env HTTP/1.1

How it differs from similar modules

Artifact class it owns

Management / login UI; default creds on a subset

Upstream it needs

live urls

Artifact class it owns

Hostname-named .bak/.sql/zip/tarball

Upstream it needs

live urls

Artifact class it owns

Patterns in the response you fetched

Upstream it needs

live urls

Scan for Sensitive Files

Artifact class it owns

.env, .git/config, logs, dev artifacts

Upstream it needs

live urls

questions

Scan for Sensitive Files questions

No. [Scan for Exposed Backups](/library/modules/scan-for-exposed-backups) hunts hostname-named `.bak`, `.sql`, zip, and tarball dumps. This module hunts live configs, logs, `.git`, `.env`, and `.aws/credentials`. A dump archive is the backups sibling. A live `.env` is this page. These stay separate URLs.

Nest Scan for Sensitive Files 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.