There are two basic perspectives from which a security tester can begin: Either by looking at a company from the “outside” – testing its external, internet-facing perimeter – or from the “inside” – testing the controls a company has in place within its security perimeter. Internal testing is typically conducted by the client giving access to a virtual machine within their security perimeter, from which the tester can begin to verify internal security controls.
While the motivation for an external security assessment or pentest is clear – determining what security vulnerabilities or weaknesses would potentially be visible to a threat outside the company – the motivation for an internal test may be less so.
An internal test is useful in a two-fold manner: Testing the internal security controls against a potential insider threat, as well as against an external threat actor who has succeeding in bypassing an organization’s internet-facing perimeter and defenses. In either of these situations it is critical to ensure that the damage such a threat actor can inflict is minimized – through network segmentation, access-controls based on the principle of least privilege, and other critical security mechanisms and policies.