What a penetration test actually involves
A penetration test is a time-boxed, authorized attack. We agree the scope first: which applications, which environments, which accounts, and which techniques are off limits. That agreement, the rules of engagement, is signed before any traffic is sent. It protects you and us, and it is the reason we can test production safely when that is what you need.
Testing then runs in phases. We map the attack surface, test authentication and access control, probe for injection and logic flaws, and try to chain small issues into a larger one. Tools find the routine problems quickly. The time that matters is spent by a person reading how your application behaves and asking what it should not allow, such as one customer reading another customer's invoice by changing a number in a request.
Most web and API tests take one to three weeks of testing depending on the size of the application and the number of user roles. We prefer a staging copy with realistic data, plus one short production check for configuration. You choose between black box (no inside information), grey box (test accounts for each role) and white box (source access). Grey box usually finds the most for the time spent.
