Gateways to Infection: Exploiting Software Vulnerabilities