A penetration test, aka a pen test, is an authorized simulated cyberattack on an information system, designed to elicit security vulnerabilities. In this chapter, we will be covering a wide selection of machine learning-technologies for penetration testing and security countermeasures. We'll begin by cracking a simple CAPTCHA system. We'll cover the automatic discovery of software vulnerabilities using deep learning, using fuzzing and code gadgets. We'll demonstrate enhancements to Metasploit, as well as covering how to assess the robustness of machine learning systems to adversarial attacks. Finally, we'll cover more specialized topics, such as deanonymizing Tor traffic, recognizing unauthorized access via keystroke dynamics, and detecting malicious URLs.
This chapter covers the following recipes:
- CAPTCHA breaker...