Skip to content
AICPA TSC · CC4.1 · CC7.1

SOC 2 penetration testing: what auditors look for

No SOC 2 criterion tells you to run a penetration test. Many auditors ask for one anyway, since a pentest is a common way to evidence two criteria: one on monitoring, one on finding vulnerabilities. Here is what the criteria say, how a continuous pentest maps to them, and which calls stay with your auditor.

the criteriaAICPA TSC 2017 · points of focus 2022

What the Trust Services Criteria ask for

A SOC 2 report is an examination of your controls by an independent CPA firm, measured against the AICPA's Trust Services Criteria (2017, with the points of focus revised in 2022). Security is the category every SOC 2 report covers. Its common criteria state what your controls must achieve and leave the method to you, and none of them makes a penetration test a requirement.

Two criteria are where a pentest usually lands. In our words:

In our words2 clauses
CC4.1Monitoring activities
You select, develop and perform ongoing or separate evaluations to check that your internal controls are present and functioning. One point of focus lists the kinds of evaluation management can use. Penetration testing is on that list, next to internal audit and independent assessment against a standard such as ISO 27001.
CC7.1System operations
You use detection and monitoring procedures to find configuration changes that introduce new vulnerabilities, and to find where you are exposed to newly discovered ones. A point of focus describes vulnerability scans run periodically and after significant changes, with what they find fixed in good time.

Points of focus are guidance. The AICPA offers them as characteristics to consider, and an entity does not have to address every one. So SOC 2 does not require a pentest by name, and a pentest remains common evidence for CC4.1 and CC7.1.

the mappingtype 2 · audit period

How a continuous pentest maps to CC4.1 and CC7.1

A Type 2 report covers how your controls operated over an audit period, so the auditor reads dates. A single pentest in month one shows how the application looked in month one. Two other points of focus under CC4.1 deal with exactly this: weighing the rate of change in the business, and setting the scope and frequency of evaluations by risk. If you ship every week, a yearly test is a weak answer to both.

Rheono runs the test as a standing hunt on the web app and API inside your written scope. On the continuous plans it hunts hard after each release and keeps a quieter watch in between. Starter is one deep hunt a month. Every run is timestamped in your portal, so the evidence spreads across the audit period.

For CC7.1 the useful evidence is the whole loop: the finding, the ticket, the fix, and a retest that shows it closed. Once you connect GitHub, Jira or Linear, Rheono files each finding there as a ticket. It retests the finding after your fix and puts the result in the next signed report. A vulnerability scanner covers part of CC7.1 as well. The pentest adds a working exploit for each finding and a retest that shows the fix holds.

the reportper cycle, signed

What the report gives your auditor

  • Scope: the hosts and APIs tested, the test window and the exclusions, as you authorized them in writing
  • Method: how the hunt ran, and the verification bar every finding cleared before it shipped
  • Findings: each with a CVSS score, a CWE, a working proof of concept, a remediation and its control references
  • Retests: a dated result for every finding you fixed
  • Signature: Advanced electronic signature (eIDAS, PAdES-B-T) + RFC 3161 timestamp, so anyone can check who issued the report and that it has not changed
  • Evidence pack: the signed reports, a findings register and a SHA-256 manifest, exported from your portal

The sample report shows the format with made-up data. Send it to your auditor before the first run and ask whether it meets their bar.

the limits

What your auditor still decides

The report is evidence. The opinion belongs to the CPA firm that signs your SOC 2 report, and these questions are theirs:

  • whether the tested scope covers the systems inside your audit boundary
  • whether the test dates and the retests fall inside the audit period
  • whether the way you handled the findings shows the control operating
  • what other testing they expect, such as internal networks or cloud configuration, which a web app and API pentest does not cover

Rheono does not audit you and does not write any part of the SOC 2 report.

the partnercSquare GRC

Where cSquare GRC fits

A pentest report helps the audit once someone maps it to the controls in your program and follows each fix to the end. That is the work of cSquare GRC, our GRC partner. cSquare GRC runs your SOC 2 program, maps the signed report to CC4.1, CC7.1 and the other criteria you carry, tracks remediation until the retest closes it, and gives your auditor a read-only workspace.

Rheono tests and signs. Your auditor decides. The pentest-to-audit page walks through the loop step by step, with a joint scoping call if you want both of us on it.

questions5 answers

SOC 2 pentest questions

Is a penetration test required for SOC 2?
No criterion requires one by name. The points of focus under CC4.1 list penetration testing as one kind of separate evaluation, and CC7.1 asks for procedures that find vulnerabilities. Ask your auditor early whether they expect one.
How often should we run a pentest for SOC 2?
The criteria set no interval. CC4.1 asks you to weigh the rate of change and to set the scope and frequency of evaluations by risk, so the answer depends on how often you ship. A test after each release leaves dated evidence across the whole audit period.
What changes between a Type 1 and a Type 2 report?
A Type 1 report looks at the design of your controls on one date. A Type 2 report covers a period, and the auditor tests whether the controls operated through it. Dated runs and retests across that period are what a Type 2 auditor reads.
Will my auditor accept the report?
Your auditor decides. You get a signed report with scope, method and CVSS-scored findings, each with a working proof of concept. cSquare GRC, our GRC partner, maps it to your controls. Neither of us certifies you. Send your auditor the sample report before the first run, so they can say whether the scope, the dates and the format meet their bar.
Who signs the report?
Rheono signs it. Signature: Advanced electronic signature (eIDAS, PAdES-B-T) + RFC 3161 timestamp. Samir Abis is the person named in your contract and accountable for it. The signature proves who issued the report and that it has not changed. It is not an audit opinion.
Free checkread-only

See what a hunt finds on your own app first.

The free check is read-only and takes about 20 minutes. A researcher confirms before it starts, and the report arrives by email.

PostHog analytics (EU), only if you agree. Privacy