Vercel configuration hardening security checks
Vendor-recommended secure defaults, patch levels and housekeeping settings that drift as tenants grow and admins change.
On Vercel, Black Cat runs 9 checks in this area on every scan. Each one below lists its severity, how to fix it, and the compliance controls it satisfies where a control applies. See what access the Vercel connector needs.
Checks (9)
severity: high Deployment Protection Disabled fix difficulty: medium #
Enable deployment protection to restrict access to preview deployments
- Navigate to https://vercel.com/<team>/settings/security
- Locate the "Deployment Protection" section
- Enable either "SSO Protection" to require SSO authentication or "Password Protection" to set a shared password
- Configure the protection method with the required credentials or IdP settings
- Save the configuration and verify preview deployments prompt for authentication
Satisfies: ISO 27001:2022 A.8.9 SOC 2 Type II CC6.1 CIS Controls v8 CIS-04.1 NIST CSF 2.0 PR.IP GDPR (SaaS Security) GDPR-25.1 HIPAA (SaaS Security) HIPAA-308.a1 NIS2 Directive NIS2-21.e.4 DORA (SaaS Security) DORA-9.10
severity: medium Strict Deployment Protection Disabled fix difficulty: easy #
Enable strict deployment protection to cover all deployment types
- Navigate to https://vercel.com/<team>/settings/security
- Locate the "Deployment Protection" section
- Enable "Strict Deployment Protection" to apply protection to all deployment types including preview and branch deployments
- Save the configuration
- Verify that all deployment URLs prompt for authentication
Satisfies: ISO 27001:2022 A.8.9 SOC 2 Type II CC6.1 CIS Controls v8 CIS-04.1 NIST CSF 2.0 PR.IP GDPR (SaaS Security) GDPR-25.1 HIPAA (SaaS Security) HIPAA-308.a1 NIS2 Directive NIS2-21.e.4 DORA (SaaS Security) DORA-9.10
severity: medium Fork Protection Disabled fix difficulty: easy #
Enable git fork protection to prevent unauthorized deployments from forks
- Navigate to https://vercel.com/<team>/<project>/settings/git
- Locate the "Fork Protection" section
- Enable the "Protect from fork deployments" toggle
- Save the settings
- Verify that pull requests from forked repositories no longer trigger automatic deployments
Satisfies: ISO 27001:2022 A.8.9 SOC 2 Type II CC6.1 CIS Controls v8 CIS-04.1 NIST CSF 2.0 PR.IP GDPR (SaaS Security) GDPR-25.1 HIPAA (SaaS Security) HIPAA-308.a1 NIS2 Directive NIS2-21.e.4 DORA (SaaS Security) DORA-9.10
severity: low No Target Restriction fix difficulty: easy #
Restrict environment variables to only the environments where they are needed
- Navigate to https://vercel.com/<team>/<project>/settings/environment-variables
- Locate the environment variable targeting all environments (production, preview, development)
- Edit the variable and deselect any environments where it is not required
- For production secrets, select only "Production" as the target environment
- Save the changes and redeploy to apply the updated scope
Satisfies: ISO 27001:2022 A.8.9 SOC 2 Type II CC6.1 CIS Controls v8 CIS-04.1 NIST CSF 2.0 PR.IP GDPR (SaaS Security) GDPR-25.1 HIPAA (SaaS Security) HIPAA-308.a1 NIS2 Directive NIS2-21.e.4 DORA (SaaS Security) DORA-9.10
severity: high SSL Not Verified fix difficulty: medium #
Verify domain ownership so Vercel can issue a valid SSL certificate
- Navigate to https://vercel.com/<team>/settings/domains
- Locate the domain showing an unverified or SSL error status
- Follow the DNS configuration instructions shown by Vercel (CNAME or A record)
- Update the records at your domain registrar or DNS provider
- Wait for DNS propagation (up to 48 hours) and return to verify the domain status
- Confirm the SSL certificate is issued and the domain shows as verified
Satisfies: ISO 27001:2022 A.8.9 SOC 2 Type II CC6.1 CIS Controls v8 CIS-04.1 NIST CSF 2.0 PR.IP GDPR (SaaS Security) GDPR-5.1f.i HIPAA (SaaS Security) HIPAA-312.e NIS2 Directive NIS2-21.e.4 DORA (SaaS Security) DORA-9.10
severity: medium Domain Expiring Soon fix difficulty: easy #
Renew the expiring domain to prevent service disruption
- Navigate to https://vercel.com/<team>/settings/domains
- Identify the domain flagged as expiring soon
- If the domain is managed by Vercel, click "Renew" in the domain settings
- If the domain is managed externally, log in to your domain registrar and initiate renewal
- Enable auto-renewal at your registrar to prevent future expirations
- Confirm the expiration date has been extended after renewal completes
Satisfies: ISO 27001:2022 A.8.9 SOC 2 Type II CC6.1 CIS Controls v8 CIS-04.1 NIST CSF 2.0 PR.IP GDPR (SaaS Security) GDPR-25.1 HIPAA (SaaS Security) HIPAA-308.a1 NIS2 Directive NIS2-21.e.4 DORA (SaaS Security) DORA-9.10
severity: medium Stale Integration fix difficulty: easy #
Review and remove or update integrations that have not been updated recently
- Navigate to https://vercel.com/<team>/~/integrations
- Review installed integrations and identify those that have not been updated or used recently
- For integrations still in use, check the integration vendor for updates and reconfigure if needed
- For integrations no longer required, click "Remove" or "Uninstall" to revoke the integration
- Confirm removal and review any projects that were connected to the removed integration
Satisfies: ISO 27001:2022 A.8.9 SOC 2 Type II CC6.1 CIS Controls v8 CIS-04.1 NIST CSF 2.0 PR.IP GDPR (SaaS Security) GDPR-28.1 HIPAA (SaaS Security) HIPAA-308.a1 NIS2 Directive NIS2-21.e.4 DORA (SaaS Security) DORA-9.10
severity: medium Insecure Log Drain fix difficulty: easy #
Update log drain endpoints to use HTTPS to encrypt log data in transit
- Navigate to https://vercel.com/<team>/settings/log-drains
- Locate the log drain using an HTTP (non-HTTPS) destination URL
- Click the log drain to edit it
- Update the destination URL to use the HTTPS scheme (e.g., change http:// to https://)
- Ensure the destination server has a valid SSL certificate
- Save the configuration and verify logs are being received over the secure connection
Satisfies: ISO 27001:2022 A.8.9 SOC 2 Type II CC6.1 CIS Controls v8 CIS-04.1 NIST CSF 2.0 PR.IP GDPR (SaaS Security) GDPR-5.2 HIPAA (SaaS Security) HIPAA-308.a1 NIS2 Directive NIS2-21.e.4 DORA (SaaS Security) DORA-9.10
severity: medium Auto Expose System Environment Variables fix difficulty: easy #
Disable automatic exposure of system environment variables to reduce information leakage
- Navigate to https://vercel.com/<team>/<project>/settings
- Scroll to the Environment Variables section
- Disable the "Automatically expose System Environment Variables" toggle
- Manually add only the system variables your build process requires
- Redeploy the project to apply the change
Satisfies: ISO 27001:2022 A.8.12 SOC 2 Type II CC6.7 CIS Controls v8 CIS-03.1 NIST CSF 2.0 PR.DS-01 GDPR (SaaS Security) GDPR-5.1f.iii HIPAA (SaaS Security) HIPAA-308.a4 NIS2 Directive NIS2-21.e.4 DORA (SaaS Security) DORA-9.10