I. Introduction
A social engineering attack known as ‘‘phishing’’ attempts to exploit vulnerabilities in system operations caused by system users. For instance, even though a system is technically safe enough to prevent credential theft, uneducated end users may provide their credentials if an attacker requests that they do so via a particular Hypertext Transfer Protocol (HTTP) connection, putting the security of the system at risk. Furthermore, intruders could create considerably more convincing socially engineered communications by exploiting technical flaws (such as DNS cache poisoning), which allows them to leverage real but faked domain names rather than alternative ones. Due to this, phishing attempts are a multi-layered problem that would require technical solutions in order to effectively mitigate.