Penetration testing also called "pentesting" is a granted attack on computer systems, network or Web application to find vulnerabilities that a hacker could exploit.
Pentests can be done automatically with the help of some software applications or manually. Pre-attack phase consist gathering some information regarding target, identifying possible entry points, attempting to compromise and break in and lastly report back the findings.
The highest objective of penetration testing is to determine weaknesses in the security. A penetration test can also be effective to an organization’s security policy, its employee’s security awareness and the ability to identify threats and respond quickly.