Types of Phishing Attacks and How to Avoid Them