Skip to main content

Professional WebSocket security scanner with real vulnerability verification, session hijacking tests, and CVSS scoring

Project description

WSHawk v2.0 - Professional WebSocket Security Scanner

SECURITY WARNING: FAKE VERSIONS CIRCULATING

PLEASE READ CAREFULLY:
Fake versions of WSHawk are being distributed on third-party download sites and linked in social media posts (e.g., LinkedIn). These versions may contain MALWARE.

OFFICIAL SOURCES ONLY:

DO NOT DOWNLOAD from any other website. If you see "WSHawk" on a "software download" site, it is likely fake/malicious.

Python 3.8+ PyPI version License: MIT Playwright Status: Production

WSHawk v2.0 is a production-grade WebSocket security scanner with advanced features including real vulnerability verification, dynamic mutation, and comprehensive session security testing.

Why WSHawk?

WSHawk is the only open-source WebSocket scanner that provides:

  • Real browser XSS verification (Playwright) - Not just pattern matching
  • Blind vulnerability detection via OAST - Finds XXE, SSRF that others miss
  • Session hijacking analysis - 6 advanced session security tests
  • WAF-aware payload mutation - Dynamic evasion techniques
  • CVSS-based professional reporting - Industry-standard risk assessment

Features

  • 22,000+ Attack Payloads - Comprehensive vulnerability coverage
  • Real Vulnerability Verification - Confirms exploitability, not just reflection
  • Playwright XSS Verification - Actual browser-based script execution testing
  • OAST Integration - Detects blind vulnerabilities (XXE, SSRF)
  • Session Hijacking Tests - Token reuse, impersonation, privilege escalation
  • Advanced Mutation Engine - WAF bypass with 8+ evasion strategies
  • CVSS v3.1 Scoring - Automatic vulnerability risk assessment
  • Professional HTML Reports - Screenshots, replay sequences, traffic logs
  • Adaptive Rate Limiting - Server-friendly scanning

Vulnerability Detection

SQL Injection • XSS • Command Injection • XXE • SSRF • NoSQL Injection • Path Traversal • LDAP Injection • SSTI • Open Redirect • Session Security Issues

Installation

Option 1: pip (Recommended)

pip install wshawk

# Optional: For browser-based XSS verification
playwright install chromium

Option 2: Docker

# From Docker Hub
docker pull rothackers/wshawk:latest

# Or from GitHub Container Registry
docker pull ghcr.io/noobforanonymous/wshawk:latest

# Run WSHawk
docker run --rm rothackers/wshawk ws://target.com

# Defensive validation
docker run --rm rothackers/wshawk wshawk-defensive ws://target.com

See Docker Guide for detailed usage.

Quick Start

WSHawk provides 3 easy ways to scan WebSocket applications:

Method 1: Quick Scan (Fastest)

wshawk ws://target.com

Perfect for CI/CD pipelines and quick security assessments.

Method 2: Interactive Menu (User-Friendly)

wshawk-interactive

Shows interactive menu to select specific tests. Best for learning and manual testing.

Method 3: Advanced CLI (Full Control)

# Basic scan
wshawk-advanced ws://target.com

# With Playwright XSS verification
wshawk-advanced ws://target.com --playwright

# Custom rate limiting
wshawk-advanced ws://target.com --rate 5

# All features enabled
wshawk-advanced ws://target.com --full

Command Comparison

Feature wshawk wshawk-interactive wshawk-advanced
Ease of Use High High Medium
Flexibility Low Medium High
All Features Yes Yes Yes
Menu Selection No Yes No
CLI Options No No Yes
Best For Automation Learning Advanced Users

What You Get

All methods include:

  • Real vulnerability verification (not just pattern matching)
  • 22,000+ attack payloads
  • Advanced mutation engine with WAF bypass
  • CVSS v3.1 scoring for all findings
  • Session hijacking tests (6 security tests)
  • Professional HTML reports
  • Adaptive rate limiting
  • OAST integration for blind vulnerabilities
  • Optional Playwright for browser-based XSS verification

Output

WSHawk generates comprehensive HTML reports with:

  • CVSS v3.1 scores for all vulnerabilities
  • Screenshots (for XSS browser verification)
  • Message replay sequences
  • Raw WebSocket traffic logs
  • Server fingerprints
  • Actionable remediation recommendations

Reports saved as: wshawk_report_YYYYMMDD_HHMMSS.html

Advanced Options

wshawk-advanced --help

Options:
  --playwright     Enable browser-based XSS verification
  --rate N         Set max requests per second (default: 10)
  --full           Enable ALL features
  --no-oast        Disable OAST testing

Defensive Validation (NEW in v2.0.4)

WSHawk now includes a Defensive Validation Module designed for blue teams to validate their security controls.

# Run defensive validation tests
wshawk-defensive ws://your-server.com

What It Tests

1. DNS Exfiltration Prevention

  • Validates if DNS-based data exfiltration is blocked
  • Tests egress filtering effectiveness
  • Detects potential APT-style attack vectors

2. Bot Detection Effectiveness

  • Tests if anti-bot measures detect headless browsers
  • Validates resistance to evasion techniques
  • Identifies gaps in bot protection

3. CSWSH (Cross-Site WebSocket Hijacking)

  • Tests Origin header validation (216+ malicious origins)
  • Validates CSRF token requirements
  • Critical for preventing session hijacking

4. WSS Protocol Security Validation

  • TLS version validation (detects deprecated SSLv2/v3, TLS 1.0/1.1)
  • Weak cipher suite detection (RC4, DES, 3DES)
  • Certificate validation (expiration, self-signed, chain integrity)
  • Forward secrecy verification (ECDHE, DHE)
  • Prevents MITM and protocol downgrade attacks

Use Cases

  • Validate security controls before production deployment
  • Regular security posture assessment
  • Compliance and audit requirements
  • Blue team defensive capability testing

See Defensive Validation Documentation for detailed usage and remediation guidance.

Documentation

Python API

For integration into custom scripts:

import asyncio
from wshawk.scanner_v2 import WSHawkV2

scanner = WSHawkV2("ws://target.com")
scanner.use_headless_browser = True
scanner.use_oast = True
asyncio.run(scanner.run_heuristic_scan())

See Advanced Usage for more examples.

Responsible Disclosure

WSHawk is designed for:

  • Authorized penetration testing
  • Bug bounty programs
  • Security research
  • Educational purposes

Always obtain proper authorization before testing.

License

MIT License - see LICENSE file

Author

Regaan (@noobforanonymous)

Contributing

Contributions welcome! See CONTRIBUTING.md

Legal Disclaimer

WSHawk is designed for security professionals, researchers, and developers for authorized testing only.

  • Usage: You must have explicit permission from the system owner before scanning.
  • Liability: The author (Regaan) is NOT responsible for any damage caused by the misuse of this tool.
  • Malware: WSHawk is a security scanner, NOT malware. Any repackaged version found on third-party sites containing malicious code is NOT associated with this project.

By using WSHawk, you agree to these terms and use it at your own risk.

Support


WSHawk v2.0 - Professional WebSocket Security Scanner

Built for the security community

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wshawk-2.0.6.tar.gz (254.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wshawk-2.0.6-py3-none-any.whl (274.0 kB view details)

Uploaded Python 3

File details

Details for the file wshawk-2.0.6.tar.gz.

File metadata

  • Download URL: wshawk-2.0.6.tar.gz
  • Upload date:
  • Size: 254.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for wshawk-2.0.6.tar.gz
Algorithm Hash digest
SHA256 b562e24e25ff17e85c14229bbec6c7b0d19497f5a2b47c18b7a4b7ec916e038c
MD5 d2e031cdf9694842fccf7d9776eec6d1
BLAKE2b-256 f3f0e736be8e6e8ee2c1a953b34cc7e528aad7b67067499d7f730e14d5b15e85

See more details on using hashes here.

Provenance

The following attestation bundles were made for wshawk-2.0.6.tar.gz:

Publisher: python-publish.yml on noobforanonymous/wshawk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file wshawk-2.0.6-py3-none-any.whl.

File metadata

  • Download URL: wshawk-2.0.6-py3-none-any.whl
  • Upload date:
  • Size: 274.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for wshawk-2.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 c6adc0afc8330374d0b3ae92b1c71db015772f56b9fcd577baaeb2e7a223a1b1
MD5 f3c6549d3d78014256b42e952b956395
BLAKE2b-256 c862024bcb730f05c5e3a089a7495791faaa240232a336582773d5bedf3be95b

See more details on using hashes here.

Provenance

The following attestation bundles were made for wshawk-2.0.6-py3-none-any.whl:

Publisher: python-publish.yml on noobforanonymous/wshawk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page