types of exploits in computer security