System Architecture

System Architecture

WSHawk decouples its execution context between a local background daemon (Python) and a frontend dashboard (Electron or Flask). This allows long-running asynchronous scans to persist state regardless of the user interface.

Detailed Data Flow

graph TD
    A[User Interface: Electron Desktop / CLI] -->|REST/WS| B(Python Daemon Bridge)
    B --> C{Operation Mode}
    C -->|Automated Scan| D[Scanner Engine v2]
    C -->|Manual Intercept| E[MitM Proxy Port]
    
    D --> F[Smart Payload Evolver]
    D --> G[Playwright DOM Verifier]
    D --> L[OAST Provider]
    
    F --> H[AsyncIO Websocket Client]
    L -.-> H
    G -.-> H
    
    E --> H
    
    H -->|TLS / TCP| I[Target WSS Endpoint]
    I -->|Masked/Unmasked Frames| H
    
    H --> J[SQLite WAL Store & Evidence Collector]
    J --> K[SARIF / HTML / JSON Exporter]
    K --> M[CI/CD Pipeline Integration]