  Phishing is one of the most severe cyber-attacks where researchers are
interested to find a solution. In phishing, attackers lure end-users and steal
their personal in-formation. To minimize the damage caused by phishing must be
detected as early as possible. There are various phishing attacks like spear
phishing, whaling, vishing, smishing, pharming and so on. There are various
phishing detection techniques based on white-list, black-list, content-based,
URL-based, visual-similarity and machine-learning. In this paper, we discuss
various kinds of phishing attacks, attack vectors and detection techniques for
detecting the phishing sites. Performance comparison of 18 different models
along with nine different sources of datasets are given. Challenges in phishing
detection techniques are also given.
