scapy.contrib.wireguard
WireGuard Module Implements the WireGuard network tunnel protocol. Based on the whitepaper: https://www.wireguard.com/papers/wireguard.pdf
- class scapy.contrib.wireguard.Wireguard(_pkt, /, *, message_type=1, reserved_zero=0)[source]
Bases:
PacketWrapper that only contains the message type.
- aliastypes = [<class 'scapy.contrib.wireguard.Wireguard'>, <class 'scapy.packet.Packet'>]
- fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<ByteEnumField (Wireguard).message_type>, <ThreeBytesField (Wireguard).reserved_zero>]
- payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({'message_type': 1}, <class 'scapy.contrib.wireguard.WireguardInitiation'>), ({'message_type': 2}, <class 'scapy.contrib.wireguard.WireguardResponse'>), ({'message_type': 3}, <class 'scapy.contrib.wireguard.WireguardCookieReply'>), ({'message_type': 4}, <class 'scapy.contrib.wireguard.WireguardTransport'>)]
- class scapy.contrib.wireguard.WireguardCookieReply(_pkt, /, *, receiver_index=0, nonce=0, encrypted_cookie=0)[source]
Bases:
Packet- aliastypes = [<class 'scapy.contrib.wireguard.WireguardCookieReply'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.wireguard.WireguardInitiation(_pkt, /, *, sender_index=0, unencrypted_ephemeral=0, encrypted_static=0, encrypted_timestamp=0, mac1=0, mac2=0)[source]
Bases:
Packet- aliastypes = [<class 'scapy.contrib.wireguard.WireguardInitiation'>, <class 'scapy.packet.Packet'>]
- fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XLEIntField (WireguardInitiation).sender_index>, <XStrFixedLenField (WireguardInitiation).unencrypted_ephemeral>, <XStrFixedLenField (WireguardInitiation).encrypted_static>, <XStrFixedLenField (WireguardInitiation).encrypted_timestamp>, <XStrFixedLenField (WireguardInitiation).mac1>, <XStrFixedLenField (WireguardInitiation).mac2>]
- class scapy.contrib.wireguard.WireguardResponse(_pkt, /, *, sender_index=0, receiver_index=0, unencrypted_ephemeral=0, encrypted_nothing=0, mac1=0, mac2=0)[source]
Bases:
Packet- aliastypes = [<class 'scapy.contrib.wireguard.WireguardResponse'>, <class 'scapy.packet.Packet'>]
- fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<XLEIntField (WireguardResponse).sender_index>, <XLEIntField (WireguardResponse).receiver_index>, <XStrFixedLenField (WireguardResponse).unencrypted_ephemeral>, <XStrFixedLenField (WireguardResponse).encrypted_nothing>, <XStrFixedLenField (WireguardResponse).mac1>, <XStrFixedLenField (WireguardResponse).mac2>]