# PRS v1.8.0
Overview
PRS is a CLI-based scanner focused on safe assessment of web targets.
It combines crawling, passive checks, optional active checks, and report export (JSON/HTML).
Core goals:
- Useful findings with clear evidence
- Conservative defaults for safer operation
- Fast workflow for security testing in real environments
Features
- Crawler with scope discovery and form extraction
- Passive and active scan modes
- Security checks across:
- TLS and transport security
- Security headers
- Auth/session and cookie hardening
- Input handling and injection patterns
- API-related checks
- Information leakage and web content exposure
- Interactive mode with built-in tools:
scan
port (simple port scanner with service names)
repeater
fuzz
- Report outputs:
- Console summary
- JSON report
- HTML report
Installation
Requirements
- Go 1.21+ (or version compatible with
go.mod)
- Windows/macOS/Linux terminal
Install with go install
go install github.com/MOYARU/prs@latest
If the prs command is not found, add your Go bin path to PATH.
- Windows (PowerShell):
"$env:USERPROFILE\go\bin"
- macOS/Linux:
"$HOME/go/bin"
Then restart your terminal and run:
prs
Build from source (optional)
git clone https://github.com/MOYARU/prs.git
cd prs
go build -o prs
Makefile (optional)
make deps
make
make run
Quick Start
Basic scan
prs https://example.com
Active scan
prs https://example.com --active
Crawl depth and delay
prs https://example.com --depth 3 --delay 300
JSON report
prs https://example.com --json
CLI Flags
--active Enable active checks
--respect-robots Respect robots.txt disallow rules during crawl
--depth Crawl depth (default: 2)
--json Save JSON report
--delay Delay between requests in milliseconds
Interactive Mode
Run without target:
prs
Available commands:
scan <target_url> [--active] [--respect-robots] [--depth N] [--json] [--delay MS]
port <host> [start-end]
repeater <METHOD> <url> [body]
fuzz <url_with_FUZZ> <wordlist_path>
help
clear / cls
exit / quit
Examples:
port 127.0.0.1
port 127.0.0.1 1-10000
Output and Severity
- Findings include severity, confidence, message, fix guidance, and evidence.
- Final scan output includes elapsed time, for example:
- Some severities are centrally adjusted via:
internal/report/severity_policy.go
Project Structure
cmd/ CLI entrypoint
internal/app/ scan runtime, interactive mode, output
internal/crawler/ URL discovery and parsing
internal/checks/ security checks by category
internal/report/ finding model and severity policy
internal/messages/ localized strings and UI messages
Ethical Use
Use PRS only on systems you own or have explicit permission to test.
Do not scan unauthorized targets.
License
MIT License