sshmitm.plugins.tunnel.socks5 module

class sshmitm.plugins.tunnel.socks5.Socks5AddressType(value)

Bases: Socks5Types

Addresstypen für den Socks Proxy

DOMAIN = b'\x03'
IPv4 = b'\x01'
IPv6 = b'\x04'
class sshmitm.plugins.tunnel.socks5.Socks5AuthenticationType(value)

Bases: Socks5Types

Authentifizierungstypen für den Socks Proxy

NONE = b'\x00'
PASSWORD = b'\x02'
class sshmitm.plugins.tunnel.socks5.Socks5Command(value)

Bases: Socks5Types

Kommandos für den Socks Proxy

BIND = b'\x02'
CONNECT = b'\x01'
UDP = b'\x03'
class sshmitm.plugins.tunnel.socks5.Socks5CommandReply(value)

Bases: Socks5Types

Bestättigungen für den Socks Proxy

ADDR_TYPE_NOT_SUPPORTED = b'\x00'
COMMAND_NOT_SUPPORTED = b'\x07'
CONNECTION_NOT_ALLOWED = b'\x02'
CONNECTION_REFUSED = b'\x05'
GENERAL_FAILURE = b'\x01'
HOST_UNREACHABLE = b'\x04'
NETWORK_UNREACHABLE = b'\x03'
SUCCESS = b'\x00'
TTL_EXPIRED = b'\x06'
exception sshmitm.plugins.tunnel.socks5.Socks5Error

Bases: Exception

class sshmitm.plugins.tunnel.socks5.Socks5Server(listenaddress, username=None, password=None)

Bases: object

Socks5 kompatibler Forwarder Dieser Socks5 Forwarder unterstützt Authentifizierung.

Parameters:
  • listenaddress (Tuple[str, int])

  • username (Optional[str], default: None)

  • password (Optional[str], default: None)

AUTH_PASSWORD_VERSION = b'\x01'
SOCKSVERSION = b'\x05'
check_credentials(username, password)

Prüft Benutzername und Passwort

Parameters:
  • username (str)

  • password (str)

Return type:

bool

get_address(clientsock, ignore_version=False)
Parameters:
  • clientsock (Union[socket, Channel])

  • ignore_version (bool, default: False)

Return type:

Optional[Tuple[str, int]]

property server_ip: bytes

Liefert die IP Adresse des Socks Proxy zurück

property server_port: bytes

Liefert den Port den Socks Proxy zurück

class sshmitm.plugins.tunnel.socks5.Socks5Types(value)

Bases: Enum

Basisklasse für Socks5 Daten