CIS Controls v8·Control 16.13·medium·Component: Protect

What this control requires

Conduct application penetration testing. For critical applications, authenticated penetration testing is better suited to finding business logic vulnerabilities than code scanning and automated security testing. Penetration testing relies on the skill of the tester to manually manipulate an application as an authenticated and unauthenticated user.
— CIS Controls v8, Control 16.13

In plain English

Conduct application penetration testing. In practice, this means you can prove you protect applications-level controls on a defined cadence.

Why it matters

The CIS Controls are an industry-vetted, prioritised defence: skipping a safeguard widens the attack surface that the safeguards above and below it assume is closed. Audit frameworks (FedRAMP, PCI DSS, HIPAA) all cite CIS as evidence of due care.

What an auditor looks for

A CIS-aligned reviewer wants to see (a) which Implementation Group you are targeting, (b) a documented owner for the safeguard, and (c) a tooling or process artefact (config, scan output, ticket) that proves the safeguard runs on the cadence the control demands.

Within Protect, the assessor will trace your implementation back to the catalogue reference (Control 16.13) and look for objective evidence on the latest two assessment cycles.

How to implement

Code Review Testing

Pipeline. Require at least one human reviewer plus passing CI (lint, type, unit, security scan) before merge — protected branches enforce this.

Secure Development

Pipeline. Require code review, SAST (Semgrep / Snyk Code), SCA (Dependabot / Renovate), secret-scanning and IaC scanning in the merge pipeline.

Branch protection. Protected branches enforce reviews, signed commits and passing CI before merge; document the protection rules as the control evidence.

Vulnerability Management

Scanners. Pair an unauthenticated scanner (Nessus / Qualys / Tenable.io) for external surface with an authenticated agent for OS/library CVEs on every host.

SLA. Document remediation SLAs by CVSS / EPSS: critical 7 days, high 30 days, medium 90 days; report monthly trend to leadership.

Containers. Scan images in CI (Trivy / Grype / Snyk Container) AND at runtime; block deploys on critical findings without exception.

Operational checklist

  • Protect. Document the trigger, the owner and the cadence.
  • Conduct. Document the trigger, the owner and the cadence.
  • Scope: applications, user, vulnerability.

Evidence to collect

  • Code Repo Scan. Source-control evidence — branch protection, required reviewers, CI status, SCA / SAST reports.

Source control pipelines (GitHub, GitLab) enforce SDLC guardrails. Focus: Conduct Application Penetration Testing.

Common pitfalls

  • CI security checks set to warn-only; the merge button is faster than the security feedback.
  • Scans that hit only the perimeter; missing authenticated scans of OS, runtime libs and base images so most CVEs are invisible.

How it maps to other frameworks

Computed from shared tags, control component and key-operation subjects — handy when you are reconciling controls across an audit.

Related controls in CIS Controls v8

References

Topics: application securitysecure developmentcode review testingdevsecopsvulnerability management