Network protocols like TCP/IP, DNS, and BGP were designed for functionality over security. This allows for vulnerabilities like eavesdropping, packet injection, route hijacking, and DNS poisoning. While patches have improved security for some issues, core protocols remain vulnerable by design. More secure variants have been proposed, such as using IPsec instead of IP, DNSsec instead of DNS, and SBGP instead of BGP.