Skip to content

Scanning Engine v2 - Module - WebSocket

Overview

WebSocket (https://en.wikipedia.org/wiki/WebSocket) is a protocol providing full-duplex communication channels over a single TCP connection, commonly used for real-time web applications such as chat, live updates, and collaborative tools. It enables interactive communication between a client and server with lower overhead than traditional HTTP polling.

This module connects to a WebSocket service, performs the handshake, and attempts to exchange messages to verify protocol compliance and gather service metadata.

Targeting

This module targets TCP ports by IP address or hostname.

Schemas

The schema for the body object of all results generated with .task.module_name equal to websocket can be found here. The schema for results is available both in standalone and bundled form.

Examples

These are examples of the .body object for results with .task.module_name equal to websocket.

WebSocket.org's Echo Service

This example was generated with WebSocket.org's Echo service.

{
  "banner": "Request served by d56832234ce08e",
  "url": "wss://echo.websocket.org/"
}

Live Host

This example was generated with a live host on the internet.

{
  "banner": "{\"Action\":\"authChallenge\",\"Challenge\":\"7251e44089523c9fdd1c6de9d2fe8a224e5311bcbc90a10688b8b3b54ddf966e\",\"Desc\":\"SUCCESS\",\"Error\":0,\"Result\":\"\",\"Version\":1}",
  "url": "ws://[REDACTED]:30002/"
}

Changelog

v2.0.0 (2025-08-01)

  • Complete rewrite from Python to Go for improved performance and maintainability.
  • Improved error handling and result processing with better logging and validation.

v1.0.0 (2025-07-08)

  • Initial release of versioning for each module. All modules are being tagged with version number 1.0.0. Going forward:
  • Major version should be changed when there are changes that impact consumers or clients of the modules.
  • Minor version should be changed when there are additions which enrich or enhance the module but shouldn't affect consumers or clients.
  • Patch version should be changed when there are bugfixes.