ICMPv4¶
ICMP (Internet Control Message Protocol) Ağın sağlıklı bir şekilde çalıştığı, ulaşılabilirliği, hız testi veya kontrol amaçlı kullanılan protokoldür. Kendi içerisinde bulunnan Type-Code
olmak üzere değiştirilebilen variyantları bulunmaktadır. Örnek olarak echo-reply 0-0
veya echo-request 8-0
verilebilir.
Daha fazla parametre için
ICMP type-code hakkında daha fazla örnek için;
Warning
OSI katmanı teorik olduğu ve kurulumu tam olarak yapılamayacağı için TCP/IP modeli kullanılır
Scapy¶
Scapy içerisinde paket oluşturmak için kullanılan bir kütüphanedir.
icmpbaslik = ICMP(type=14,code=0)
ipbaslik = IP(src="192.168.42.82",dst="192.168.42.57")
paket = ipbaslik/icmpbaslik
send(paket)
Warning
Wireshark açıp ilgili network kartını dinleyerek gönderilen paketin yanıtını görebiliriz.
ICMP Exfiltration¶
from scapy.all import *
import yenc
pkts = rdpcap("./echo_request.pcap")
fichier = open("./donnees","w")
for i in range(0,len(pkts)):
fichier.write(pkts[i].load)
print yenc.decode("./donnees","./résultat")
ICMP Exfiltration 2¶
from scapy.all import *
pcap_file = "challenge.pcapng"
data = rdpcap(pcap_file)
output = ""
for i in range(0, len(data)):
if data[i].getlayer(IP).dst == "192.168.1.33":
payload = data[i].load.decode("utf-8")
print(payload)
output += payload
output_file = open("result.b64", "w")
output_file.write(output)
output_file.close()
Son Güncelleme: July 14, 2020