from scapy.all import *
packet = rdpcap("/home/sss/桌面/wannacry.pcap",2000)
# print(type(packet))
# for a in range(0,3000):
# packet[a][1].src = "172.16.3.33"
# p = packet[a][1].src
# print("yuan IP :"+p)
New_Packet = []
for pkt in packet:
ch = pkt[IP].chksum
print("jiaoyuanhe:"+str(ch))
if pkt[IP].src=="192.168.14.111":
pkt[IP].src="172.16.3.226"
pkt[IP].dst="172.16.3.126"
pkt[Ether].src = "58:8a:5a:26:1c:64"
pkt[Ether].dst = "00:E2:69:04:8A:82"
else:
pkt[IP].dst="172.16.3.226"
pkt[IP].src="172.16.3.126"
pkt[Ether].src = "00:E2:69:04:8A:82"
pkt[Ether].dst = "58:8a:5a:26:1c:64"
ch1 = pkt[IP].chksum
print("new chksum:"+str(ch1))
# p = pkt[IP].src
# m = pkt[Ether].dst
New_Packet.append(pkt)
# sendpfast(pkt,verbose=False)
# print("yuan mac:"+m)
wrpcap("/home/sss/桌面/wannacry1.pcap",New_Packet)
NewPcap = "wannacry1.pcap"
#强制计算校验和
def checksum(NewPcap):
cmd = "tcprewrite --fixcsum -i {0} -o {1}".format(NewPcap,NewPcap)
print(cmd)
os.system(cmd)
checksum(new_pcap_path)