summaryrefslogtreecommitdiffstats
path: root/scripts/external_libs/scapy-python3-0.18/scapy/layers/netbios.py
diff options
context:
space:
mode:
authorimarom <imarom@cisco.com>2016-03-21 16:03:47 +0200
committerimarom <imarom@cisco.com>2016-03-21 16:03:47 +0200
commitb89efa188810bf95a9d245e69e2961b5721c3b0f (patch)
tree454273ac6c4ae972ebb8a2c86b893296970b4fa9 /scripts/external_libs/scapy-python3-0.18/scapy/layers/netbios.py
parentf72c6df9d2e9998ae1f3529d729ab7930b35785a (diff)
scapy python 2/3
Diffstat (limited to 'scripts/external_libs/scapy-python3-0.18/scapy/layers/netbios.py')
-rw-r--r--scripts/external_libs/scapy-python3-0.18/scapy/layers/netbios.py222
1 files changed, 0 insertions, 222 deletions
diff --git a/scripts/external_libs/scapy-python3-0.18/scapy/layers/netbios.py b/scripts/external_libs/scapy-python3-0.18/scapy/layers/netbios.py
deleted file mode 100644
index f06e9307..00000000
--- a/scripts/external_libs/scapy-python3-0.18/scapy/layers/netbios.py
+++ /dev/null
@@ -1,222 +0,0 @@
-## This file is part of Scapy
-## See http://www.secdev.org/projects/scapy for more informations
-## Copyright (C) Philippe Biondi <phil@secdev.org>
-## This program is published under a GPLv2 license
-
-"""
-NetBIOS over TCP/IP
-
-[RFC 1001/1002]
-"""
-
-import struct
-from scapy.packet import *
-from scapy.fields import *
-from scapy.layers.inet import UDP,TCP
-from scapy.layers.l2 import SourceMACField
-
-class NetBIOS_DS(Packet):
- name = "NetBIOS datagram service"
- fields_desc = [
- ByteEnumField("type",17, {17:"direct_group"}),
- ByteField("flags",0),
- XShortField("id",0),
- IPField("src","127.0.0.1"),
- ShortField("sport",138),
- ShortField("len",None),
- ShortField("ofs",0),
- NetBIOSNameField("srcname",""),
- NetBIOSNameField("dstname",""),
- ]
- def post_build(self, p, pay):
- p += pay
- if self.len is None:
- l = len(p)-14
- p = p[:10]+struct.pack("!H", l)+p[12:]
- return p
-
-# ShortField("length",0),
-# ShortField("Delimitor",0),
-# ByteField("command",0),
-# ByteField("data1",0),
-# ShortField("data2",0),
-# ShortField("XMIt",0),
-# ShortField("RSPCor",0),
-# StrFixedLenField("dest","",16),
-# StrFixedLenField("source","",16),
-#
-# ]
-#
-
-#NetBIOS
-
-
-# Name Query Request
-# Node Status Request
-class NBNSQueryRequest(Packet):
- name="NBNS query request"
- fields_desc = [ShortField("NAME_TRN_ID",0),
- ShortField("FLAGS", 0x0110),
- ShortField("QDCOUNT",1),
- ShortField("ANCOUNT",0),
- ShortField("NSCOUNT",0),
- ShortField("ARCOUNT",0),
- NetBIOSNameField("QUESTION_NAME","windows"),
- ShortEnumField("SUFFIX",0x4141,{0x4141:"workstation",0x4141+0x03:"messenger service",0x4141+0x200:"file server service",0x4141+0x10b:"domain master browser",0x4141+0x10c:"domain controller", 0x4141+0x10e:"browser election service"}),
- ByteField("NULL",0),
- ShortEnumField("QUESTION_TYPE",0x20, {0x20:"NB",0x21:"NBSTAT"}),
- ShortEnumField("QUESTION_CLASS",1,{1:"INTERNET"})]
-
-# Name Registration Request
-# Name Refresh Request
-# Name Release Request or Demand
-class NBNSRequest(Packet):
- name="NBNS request"
- fields_desc = [ShortField("NAME_TRN_ID",0),
- ShortField("FLAGS", 0x2910),
- ShortField("QDCOUNT",1),
- ShortField("ANCOUNT",0),
- ShortField("NSCOUNT",0),
- ShortField("ARCOUNT",1),
- NetBIOSNameField("QUESTION_NAME","windows"),
- ShortEnumField("SUFFIX",0x4141,{0x4141:"workstation",0x4141+0x03:"messenger service",0x4141+0x200:"file server service",0x4141+0x10b:"domain master browser",0x4141+0x10c:"domain controller", 0x4141+0x10e:"browser election service"}),
- ByteField("NULL",0),
- ShortEnumField("QUESTION_TYPE",0x20, {0x20:"NB",0x21:"NBSTAT"}),
- ShortEnumField("QUESTION_CLASS",1,{1:"INTERNET"}),
- ShortEnumField("RR_NAME",0xC00C,{0xC00C:"Label String Pointer to QUESTION_NAME"}),
- ShortEnumField("RR_TYPE",0x20, {0x20:"NB",0x21:"NBSTAT"}),
- ShortEnumField("RR_CLASS",1,{1:"INTERNET"}),
- IntField("TTL", 0),
- ShortField("RDLENGTH", 6),
- BitEnumField("G",0,1,{0:"Unique name",1:"Group name"}),
- BitEnumField("OWNER_NODE_TYPE",00,2,{0:"B node",1:"P node",2:"M node",3:"H node"}),
- BitEnumField("UNUSED",0,13,{0:"Unused"}),
- IPField("NB_ADDRESS", "127.0.0.1")]
-
-# Name Query Response
-# Name Registration Response
-class NBNSQueryResponse(Packet):
- name="NBNS query response"
- fields_desc = [ShortField("NAME_TRN_ID",0),
- ShortField("FLAGS", 0x8500),
- ShortField("QDCOUNT",0),
- ShortField("ANCOUNT",1),
- ShortField("NSCOUNT",0),
- ShortField("ARCOUNT",0),
- NetBIOSNameField("RR_NAME","windows"),
- ShortEnumField("SUFFIX",0x4141,{0x4141:"workstation",0x4141+0x03:"messenger service",0x4141+0x200:"file server service",0x4141+0x10b:"domain master browser",0x4141+0x10c:"domain controller", 0x4141+0x10e:"browser election service"}),
- ByteField("NULL",0),
- ShortEnumField("QUESTION_TYPE",0x20, {0x20:"NB",0x21:"NBSTAT"}),
- ShortEnumField("QUESTION_CLASS",1,{1:"INTERNET"}),
- IntField("TTL", 0x493e0),
- ShortField("RDLENGTH", 6),
- ShortField("NB_FLAGS", 0),
- IPField("NB_ADDRESS", "127.0.0.1")]
-
-# Name Query Response (negative)
-# Name Release Response
-class NBNSQueryResponseNegative(Packet):
- name="NBNS query response (negative)"
- fields_desc = [ShortField("NAME_TRN_ID",0),
- ShortField("FLAGS", 0x8506),
- ShortField("QDCOUNT",0),
- ShortField("ANCOUNT",1),
- ShortField("NSCOUNT",0),
- ShortField("ARCOUNT",0),
- NetBIOSNameField("RR_NAME","windows"),
- ShortEnumField("SUFFIX",0x4141,{0x4141:"workstation",0x4141+0x03:"messenger service",0x4141+0x200:"file server service",0x4141+0x10b:"domain master browser",0x4141+0x10c:"domain controller", 0x4141+0x10e:"browser election service"}),
- ByteField("NULL",0),
- ShortEnumField("RR_TYPE",0x20, {0x20:"NB",0x21:"NBSTAT"}),
- ShortEnumField("RR_CLASS",1,{1:"INTERNET"}),
- IntField("TTL",0),
- ShortField("RDLENGTH",6),
- BitEnumField("G",0,1,{0:"Unique name",1:"Group name"}),
- BitEnumField("OWNER_NODE_TYPE",00,2,{0:"B node",1:"P node",2:"M node",3:"H node"}),
- BitEnumField("UNUSED",0,13,{0:"Unused"}),
- IPField("NB_ADDRESS", "127.0.0.1")]
-
-# Node Status Response
-class NBNSNodeStatusResponse(Packet):
- name="NBNS Node Status Response"
- fields_desc = [ShortField("NAME_TRN_ID",0),
- ShortField("FLAGS", 0x8500),
- ShortField("QDCOUNT",0),
- ShortField("ANCOUNT",1),
- ShortField("NSCOUNT",0),
- ShortField("ARCOUNT",0),
- NetBIOSNameField("RR_NAME","windows"),
- ShortEnumField("SUFFIX",0x4141,{0x4141:"workstation",0x4141+0x03:"messenger service",0x4141+0x200:"file server service",0x4141+0x10b:"domain master browser",0x4141+0x10c:"domain controller", 0x4141+0x10e:"browser election service"}),
- ByteField("NULL",0),
- ShortEnumField("RR_TYPE",0x21, {0x20:"NB",0x21:"NBSTAT"}),
- ShortEnumField("RR_CLASS",1,{1:"INTERNET"}),
- IntField("TTL",0),
- ShortField("RDLENGTH",83),
- ByteField("NUM_NAMES",1)]
-
-# Service for Node Status Response
-class NBNSNodeStatusResponseService(Packet):
- name="NBNS Node Status Response Service"
- fields_desc = [StrFixedLenField("NETBIOS_NAME","WINDOWS ",15),
- ByteEnumField("SUFFIX",0,{0:"workstation",0x03:"messenger service",0x20:"file server service",0x1b:"domain master browser",0x1c:"domain controller", 0x1e:"browser election service"}),
- ByteField("NAME_FLAGS",0x4),
- ByteEnumField("UNUSED",0,{0:"unused"})]
-
-# End of Node Status Response packet
-class NBNSNodeStatusResponseEnd(Packet):
- name="NBNS Node Status Response"
- fields_desc = [SourceMACField("MAC_ADDRESS"),
- BitField("STATISTICS",0,57*8)]
-
-# Wait for Acknowledgement Response
-class NBNSWackResponse(Packet):
- name="NBNS Wait for Acknowledgement Response"
- fields_desc = [ShortField("NAME_TRN_ID",0),
- ShortField("FLAGS", 0xBC07),
- ShortField("QDCOUNT",0),
- ShortField("ANCOUNT",1),
- ShortField("NSCOUNT",0),
- ShortField("ARCOUNT",0),
- NetBIOSNameField("RR_NAME","windows"),
- ShortEnumField("SUFFIX",0x4141,{0x4141:"workstation",0x4141+0x03:"messenger service",0x4141+0x200:"file server service",0x4141+0x10b:"domain master browser",0x4141+0x10c:"domain controller", 0x4141+0x10e:"browser election service"}),
- ByteField("NULL",0),
- ShortEnumField("RR_TYPE",0x20, {0x20:"NB",0x21:"NBSTAT"}),
- ShortEnumField("RR_CLASS",1,{1:"INTERNET"}),
- IntField("TTL", 2),
- ShortField("RDLENGTH",2),
- BitField("RDATA",10512,16)] #10512=0010100100010000
-
-class NBTDatagram(Packet):
- name="NBT Datagram Packet"
- fields_desc= [ByteField("Type", 0x10),
- ByteField("Flags", 0x02),
- ShortField("ID", 0),
- IPField("SourceIP", "127.0.0.1"),
- ShortField("SourcePort", 138),
- ShortField("Length", 272),
- ShortField("Offset", 0),
- NetBIOSNameField("SourceName",b"windows"),
- ShortEnumField("SUFFIX1",0x4141,{0x4141:"workstation",0x4141+0x03:"messenger service",0x4141+0x200:"file server service",0x4141+0x10b:"domain master browser",0x4141+0x10c:"domain controller", 0x4141+0x10e:"browser election service"}),
- ByteField("NULL",0),
- NetBIOSNameField("DestinationName",b"windows"),
- ShortEnumField("SUFFIX2",0x4141,{0x4141:"workstation",0x4141+0x03:"messenger service",0x4141+0x200:"file server service",0x4141+0x10b:"domain master browser",0x4141+0x10c:"domain controller", 0x4141+0x10e:"browser election service"}),
- ByteField("NULL",0)]
-
-
-class NBTSession(Packet):
- name="NBT Session Packet"
- fields_desc= [ByteEnumField("TYPE",0,{0x00:"Session Message",0x81:"Session Request",0x82:"Positive Session Response",0x83:"Negative Session Response",0x84:"Retarget Session Response",0x85:"Session Keepalive"}),
- BitField("RESERVED",0x00,7),
- BitField("LENGTH",0,17)]
-
-bind_layers( UDP, NBNSQueryRequest, dport=137)
-bind_layers( UDP, NBNSRequest, dport=137)
-bind_layers( UDP, NBNSQueryResponse, sport=137)
-bind_layers( UDP, NBNSQueryResponseNegative, sport=137)
-bind_layers( UDP, NBNSNodeStatusResponse, sport=137)
-bind_layers( NBNSNodeStatusResponse, NBNSNodeStatusResponseService, )
-bind_layers( NBNSNodeStatusResponse, NBNSNodeStatusResponseService, )
-bind_layers( NBNSNodeStatusResponseService, NBNSNodeStatusResponseService, )
-bind_layers( NBNSNodeStatusResponseService, NBNSNodeStatusResponseEnd, )
-bind_layers( UDP, NBNSWackResponse, sport=137)
-bind_layers( UDP, NBTDatagram, dport=138)
-bind_layers( TCP, NBTSession, dport=139)