The following repo contains code for experiments with various elements of network security. These codes aim to understand networks, the way they work and demonstrate vulnerabilities in these networking protocols.
Language: Python
The following concepts of computer networking were explored:
- ARP (Address Resolution Protocol) - Folder: MITM
- DHCP (Dynamic Host Configuration Protocol) - Folder: DHCP_Starvation
- DHCP allows devices on the network to be uniquely identified through an IP address without the need for static configuration
- The RFC is available here here.
- DHCP is vulnerable to exhaustion attacks through spoofed MAC adddresses. This can lead to exhaustion of IP addresses in a subnet resulting in a DOS attack. A proof-of-concept using Python has been developed to demonstrate this vulnerability.