1 SCTP Support
nsportsman edited this page 2026-01-29 20:12:34 -06:00

SCTP Support

Nerva supports SCTP (Stream Control Transmission Protocol) for fingerprinting telecom services like Diameter.

Overview

SCTP is a transport layer protocol used primarily in telecom networks (3GPP/LTE/5G) for signaling. Nerva's SCTP support enables fingerprinting of:

  • Diameter — AAA protocol for LTE/5G networks
  • MME (Mobility Management Entity)
  • HSS (Home Subscriber Server)
  • PCRF (Policy and Charging Rules Function)

Requirements

SCTP is only supported on Linux due to kernel-level protocol requirements.

# Check if SCTP is available
lsmod | grep sctp

# Load SCTP module if needed
sudo modprobe sctp

Usage

Command Line

# Enable SCTP plugins
nerva -t mme.telecom.local:3868 -S

# With JSON output
nerva -t diameter-server:3868 -S --json

Library

config := scan.Config{
    DefaultTimeout: 2 * time.Second,
    SCTP:           true,  // Enable SCTP
}

Supported SCTP Protocols

Protocol Port Description
Diameter-SCTP 3868 3GPP AAA over SCTP

Example Output

{
  "host": "mme.telecom.local",
  "ip": "10.0.0.50",
  "port": 3868,
  "protocol": "diameter",
  "transport": "sctp",
  "metadata": {
    "applicationId": 16777251,
    "vendorId": 10415,
    "productName": "MME"
  }
}

Docker Usage

For non-Linux systems, use Docker to run SCTP scans:

docker run --rm nerva -t telecom-server:3868 -S --json

Troubleshooting

SCTP not available

Error: SCTP not supported on this platform

Solution: Run on Linux or use Docker.

Permission denied

Error: permission denied creating SCTP socket

Solution: SCTP may require elevated privileges:

sudo nerva -t target:3868 -S

Module not loaded

Error: SCTP module not loaded

Solution: Load the kernel module:

sudo modprobe sctp

See Also