Vulnerabilities are weaknesses that can be exploited in the attack process. It may be caused by software, hardware, program defects, functional design or improper configuration. Hackers or intruders will study and analyze these vulnerabilities and use them to obtain access and destruction opportunities.