Fundamentals of Threat Surface Management and Ethical Hacking