Scapy Prepper: SHHC20
NetWars Room
 

In the NetWars roof beside Alabaster Snowball is the Scapy Prepper.

In talking with Alabaster, he suggests giving the Scapy Present Packet Prepper a try.

Scapy Prepper
 

The answers for questions is as follows:

Start by running the task.submit() function passing in a string argument of 'start'.
task.submit('start')

Submit the class object of the scapy module that sends packets at layer 3 of the OSI model.
task.submit(send)

Submit the class object of the scapy module that sniffs network packets and returns those packets in a list.
task.submit(sniff)

Submit the NUMBER only from the choices below that would successfully send a TCP packet and then return the first sniffed response packet to be stored in a variable named "pkt":
1. pkt = sr1(IP(dst="127.0.0.1")/TCP(dport=20))
2. pkt = sniff(IP(dst="127.0.0.1")/TCP(dport=20))
3. pkt = sendp(IP(dst="127.0.0.1")/TCP(dport=20))
task.submit('start')

Submit the class object of the scapy module that can read pcap or pcapng files and return a list of packets.
task.submit(rdpcap)

Scapy Prepper
 

The variable UDP_PACKETS contains a list of UDP packets. Submit the NUMBER only from the choices below that correctly prints a summary of UDP_PACKETS:
1. UDP_PACKETS.print()
2. UDP_PACKETS.show()
3. UDP_PACKETS.list()
task.submit(2)

Submit only the first packet found in UDP_PACKETS.
task.submit(UDP_PACKETS[0])

Submit only the entire TCP layer of the second packet in TCP_PACKETS.
task.submit(TCP_PACKETS[1][TCP])

Change the source IP address of the first packet found in UDP_PACKETS to 127.0.0.1 and then submit this modified packet.
UDP_PACKETS[0][IP].src = "127.0.0.1"
task.submit(UDP_PACKETS[0])

Submit the password "task.submit('elf_password')" of the user alabaster as found in the packet list TCP_PACKETS.
task.submit(TCP_PACKETS[6][Raw].load)

Scapy Prepper
 

The ICMP_PACKETS variable contains a packet list of several icmp echo-request and icmp echo-reply packets. Submit only the ICMP chksum value from the second packet in the ICMP_PACKETS list.
task.submit(ICMP_PACKETS[1][ICMP].chksum)

Submit the number of the choice below that would correctly create a ICMP echo request packet with a destination IP of 127.0.0.1 stored in the variable named "pkt"
1. pkt = Ether(src='127.0.0.1')/ICMP(type="echo-request")
2. pkt = IP(src='127.0.0.1')/ICMP(type="echo-reply")
3. pkt = IP(dst='127.0.0.1')/ICMP(type="echo-request")
task.submit(3)

Create and then submit a UDP packet with a dport of 5000 and a dst IP of 127.127.127.127. (all other packet attributes can be unspecified)
task.submit(IP(dst="127.127.127.127")/UDP(dport=5000))

Create and then submit a UDP packet with a dport of 53, a dst IP of 127.2.3.4, and is a DNS query with a qname of "elveslove.santa". (all other packet attributes can be unspecified)
task.submit(IP(dst="127.2.3.4")/UDP(dport=53)/DNS(qd=DNSQR(qname="elveslove.santa")))

The variable ARP_PACKETS contains an ARP request and response packets. The ARP response (the second packet) has 3 incorrect fields in the ARP layer. Correct the second packet in ARP_PACKETS to be a proper ARP response and then task.submit(ARP_PACKETS) for inspection.
ARP_PACKETS[1].hwsrc = "00:13:46:0b:22:ba"
ARP_PACKETS[1].hwdst = "00:16:ce:6e:8b:24"
ARP_PACKETS[1].op = "is-at"

An overview of all people, places, and events can be learned in the Introduction.

×