本文整理汇总了Python中impacket.ImpactPacket.IP属性的典型用法代码示例。如果您正苦于以下问题:Python ImpactPacket.IP属性的具体用法?Python ImpactPacket.IP怎么用?Python ImpactPacket.IP使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类impacket.ImpactPacket
的用法示例。
在下文中一共展示了ImpactPacket.IP属性的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: buildAnswer
# 需要导入模块: from impacket import ImpactPacket [as 别名]
# 或者: from impacket.ImpactPacket import IP [as 别名]
def buildAnswer(self, in_onion):
eth = ImpactPacket.Ethernet()
arp = ImpactPacket.ARP()
eth.contains(arp)
arp.set_ar_hrd(1) # Hardward type Ethernet
arp.set_ar_pro(0x800) # IP
arp.set_ar_op(2) # REPLY
arp.set_ar_hln(6)
arp.set_ar_pln(4)
arp.set_ar_sha(string2tuple(self.machine.macAddress))
arp.set_ar_spa(string2tuple(self.machine.ipAddress))
arp.set_ar_tha(in_onion[O_ARP].get_ar_sha())
arp.set_ar_tpa(in_onion[O_ARP].get_ar_spa())
eth.set_ether_shost(arp.get_ar_sha())
eth.set_ether_dhost(arp.get_ar_tha())
return [eth, arp]
示例2: decode
# 需要导入模块: from impacket import ImpactPacket [as 别名]
# 或者: from impacket.ImpactPacket import IP [as 别名]
def decode(self, aBuffer):
e = ImpactPacket.LinuxSLL(aBuffer)
self.set_decoded_protocol( e )
off = 16
if e.get_ether_type() == ImpactPacket.IP.ethertype:
self.ip_decoder = IPDecoder()
packet = self.ip_decoder.decode(aBuffer[off:])
elif e.get_ether_type() == ImpactPacket.ARP.ethertype:
self.arp_decoder = ARPDecoder()
packet = self.arp_decoder.decode(aBuffer[off:])
elif e.get_ether_type() == eap.DOT1X_AUTHENTICATION:
self.eapol_decoder = EAPOLDecoder()
packet = self.eapol_decoder.decode(aBuffer[off:])
else:
self.data_decoder = DataDecoder()
packet = self.data_decoder.decode(aBuffer[off:])
e.contains(packet)
return e
示例3: test_06
# 需要导入模块: from impacket import ImpactPacket [as 别名]
# 或者: from impacket.ImpactPacket import IP [as 别名]
def test_06(self):
'Test WEPData body decryption'
dot11_decoder = Dot11Decoder()
dot11_decoder.FCS_at_end(False)
dot11_decoder.set_key_manager(self.km)
dot11_decoder.decode(self.dot11frame)
wep = dot11_decoder.get_protocol(Dot11WEP)
wepdata = dot11_decoder.get_protocol(Dot11WEPData)
decrypted = b'\xaa\xaa\x03\x00\x00\x00\x08\x00\x45\x00\x00\x3c\xa6\x07\x00\x00\x80\x01\xee\x5a\xc0\xa8\x01\x66\x40\xe9\xa3\x67\x08\x00\xc5\x56\x04\x00\x84\x05\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f\x70\x71\x72\x73\x74\x75\x76\x77\x61\x62\x63\x64\x65\x66\x67\x68\x69\xa1\xf9\x39\x85'
self.assertEqual(wepdata.get_packet(), decrypted)
self.assertEqual(wepdata.check_icv(), True)
ip = dot11_decoder.get_protocol(IP)
self.assertEqual(ip.get_ip_src(),'192.168.1.102')
self.assertEqual(ip.get_ip_dst(),'64.233.163.103')
icmp = dot11_decoder.get_protocol(ICMP)
self.assertEqual(icmp.get_icmp_type(),icmp.ICMP_ECHO)
self.assertEqual(icmp.get_icmp_id(),0x0400)
示例4: isMine
# 需要导入模块: from impacket import ImpactPacket [as 别名]
# 或者: from impacket.ImpactPacket import IP [as 别名]
def isMine(self, in_onion):
if len(in_onion) < 2: return False
return (
(in_onion[O_IP].ethertype == ImpactPacket.IP.ethertype) and
(in_onion[O_IP].get_ip_dst() == self.machine.ipAddress) and
self.sameIPFlags(in_onion)
)
示例5: initIPIDGenerator
# 需要导入模块: from impacket import ImpactPacket [as 别名]
# 或者: from impacket.ImpactPacket import IP [as 别名]
def initIPIDGenerator(self):
seq = self.fingerprint.get_tests()['SEQ']
self.ip_ID = 0
try: TI = seq['TI']
except: TI = 'O'
if TI == 'Z': self.ip_ID_delta = 0
elif TI == 'RD': self.ip_ID_delta = 30000
elif TI == 'RI': self.ip_ID_delta = 1234
elif TI == 'BI': self.ip_ID_delta = 1024+256
elif TI == 'I': self.ip_ID_delta = 1
elif TI == 'O': self.ip_ID_delta = 123
else: self.ip_ID_delta = int(TI, 16)
try: ss = seq['SS']
except: ss = 'O'
self.ip_ID_ICMP_delta = None
if ss == 'S': self.ip_ID_ICMP = None
else:
self.ip_ID_ICMP = 0
try: II = seq['II']
except: II = 'O'
if II == 'Z': self.ip_ID_ICMP_delta = 0
elif II == 'RD': self.ip_ID_ICMP_delta = 30000
elif II == 'RI': self.ip_ID_ICMP_delta = 1234
elif II == 'BI': self.ip_ID_ICMP_delta = 1024+256
elif II == 'I': self.ip_ID_ICMP_delta = 1
elif II == 'O': self.ip_ID_ICMP_delta = 123
else: self.ip_ID_ICMP_delta = int(II, 16)
# generate a few, so we don't start with 0 when we don't have to
for i in range(10):
self.getIPID()
self.getIPID_ICMP()
print("IP ID Delta: %d" % self.ip_ID_delta)
print("IP ID ICMP Delta: %s" % self.ip_ID_ICMP_delta)
示例6: getIPID
# 需要导入模块: from impacket import ImpactPacket [as 别名]
# 或者: from impacket.ImpactPacket import IP [as 别名]
def getIPID(self):
answer = self.ip_ID
self.ip_ID += self.ip_ID_delta
self.ip_ID %= 0x10000
# print("IP ID: %x" % answer)
return answer
示例7: initIPIDGenerator
# 需要导入模块: from impacket import ImpactPacket [as 别名]
# 或者: from impacket.ImpactPacket import IP [as 别名]
def initIPIDGenerator(self):
seq = self.fingerprint.get_tests()['SEQ']
self.ip_ID = 0
try: TI = seq['TI']
except: TI = 'O'
if TI == 'Z': self.ip_ID_delta = 0
elif TI == 'RD': self.ip_ID_delta = 30000
elif TI == 'RI': self.ip_ID_delta = 1234
elif TI == 'BI': self.ip_ID_delta = 1024+256
elif TI == 'I': self.ip_ID_delta = 1
elif TI == 'O': self.ip_ID_delta = 123
else: self.ip_ID_delta = int(TI, 16)
try: ss = seq['SS']
except: ss = 'O'
self.ip_ID_ICMP_delta = None
if ss == 'S': self.ip_ID_ICMP = None
else:
self.ip_ID_ICMP = 0
try: II = seq['II']
except: II = 'O'
if II == 'Z': self.ip_ID_ICMP_delta = 0
elif II == 'RD': self.ip_ID_ICMP_delta = 30000
elif II == 'RI': self.ip_ID_ICMP_delta = 1234
elif II == 'BI': self.ip_ID_ICMP_delta = 1024+256
elif II == 'I': self.ip_ID_ICMP_delta = 1
elif II == 'O': self.ip_ID_ICMP_delta = 123
else: self.ip_ID_ICMP_delta = int(II, 16)
# generate a few, so we don't start with 0 when we don't have to
for i in range(10):
self.getIPID()
self.getIPID_ICMP()
print "IP ID Delta: %d" % self.ip_ID_delta
print "IP ID ICMP Delta: %s" % self.ip_ID_ICMP_delta
示例8: getIPID
# 需要导入模块: from impacket import ImpactPacket [as 别名]
# 或者: from impacket.ImpactPacket import IP [as 别名]
def getIPID(self):
answer = self.ip_ID
self.ip_ID += self.ip_ID_delta
self.ip_ID %= 0x10000L
# print "IP ID: %x" % answer
return answer