gossan-core 0.2.0

Core types, traits, and shared networking utilities for the gossan attack-surface scanner
Documentation
gossan-core-0.2.0 has been yanked.

gossan

Fast, modular attack surface discovery. Subdomains, ports, tech stack, hidden paths, cloud assets, DNS security, origin IP — all in one scan.

CI License: MIT

Install

cargo install gossan

Usage

# Full recon scan
gossan scan example.com

# Specific modules
gossan scan example.com --modules subdomain,portscan,hidden

# Custom ports
gossan scan example.com --ports 80,443,8080,8443

# JSON output
gossan scan example.com --format json -o results.json

Architecture

Gossan is a workspace of independent, reusable crates. Each crate is a standalone scanner that can be used independently or composed through the gossan CLI.

Crate Description
gossan-core Core types, traits, config, rate limiting
gossan-subdomain Subdomain enumeration (CT logs, Wayback, DNS brute)
gossan-portscan TCP port scanning with TLS inspection and banner grabbing
gossan-techstack Technology fingerprinting (headers, cookies, HTML patterns)
gossan-dns DNS security auditing (SPF, DMARC, DKIM, CAA, zone transfer)
gossan-hidden Hidden endpoint discovery (dirbusting, sitemap, robots.txt, swagger)
gossan-cloud Cloud asset discovery (S3, GCS, Azure blobs)
gossan-js JavaScript analysis (secrets, API endpoints, WASM)
gossan-origin Origin IP discovery (bypass CDN/WAF)
gossan-crawl Authenticated web crawler with form/parameter extraction
gossan-correlation Cross-module finding correlation
gossan-checkpoint Scan checkpoint and resume
gossan-synscan Raw socket SYN scanning (requires root)
gossan-headless Headless browser integration

As a Library

use gossan_portscan::PortScanner;
use gossan_core::{Config, Scanner, ScanInput, Target};

let scanner = PortScanner;
let config = Config::default();
let input = ScanInput { targets: vec![/* ... */] };
let output = scanner.run(input, &config).await?;

License

MIT — Santh Security