How to read the security section of a release report and act on it
This guide is for customers who receive release reports from a software agency and need to understand the security section without being a security engineer. You will learn what each common item means, how to tell whether it needs action from you, and how to verify the reported status in your dashboard or browser.
TL;DR — The security section of a release report usually tells you four things: what was fixed, what still needs your decision, what was checked, and whether any customer-owned settings still need attention. Read it in that order, and focus first on items labeled high or critical severity (how bad the issue is) and on any line that says action required, customer action, or pending remediation. Reading time: ~5 min
Goal
When you finish, you will be able to open a release report, identify which security items are already handled by the agency, which items need your approval or action, and confirm the current status using your application dashboard, hosting control panel, or browser.
Prerequisites
- Access to the latest release report as a PDF, ticket attachment, shared document, or email
- Access to your project tracker or client portal where release notes are posted
- Access to your hosting or cloud dashboard if the report mentions customer-owned settings (for example: DNS, SSL/TLS, firewall, secrets, or user access)
- Access level that lets you view settings and audit logs; admin access is helpful if you need to change anything
- Your production site URL and, if different, your staging URL
- A modern browser such as Chrome, Edge, Firefox, or Safari updated in 2026
- Optional: terminal access if you prefer command-line checks; if you have it,
curlavailable — check with:
curl --version
Steps
Step 1: Find the four parts of the security section
Open the release report in your portal or document viewer, then use Find and search for these exact words one by one:
Security
Severity
Action required
Resolved
What you should see when this succeeds: a section that lists security items with statuses such as Resolved, Mitigated (reduced risk), Monitoring, Accepted risk, or Action required.
Step 2: Read the status before you read the technical detail
In the security section, scan each line item and sort it into this table as you read.
| Report wording | What it means | What you do now |
|---|---|---|
| Resolved | The fix is already in this release | No action unless a verification step is listed |
| Mitigated | Risk was reduced but not fully removed | Read the note and check whether follow-up is scheduled |
| Monitoring | No immediate fix was applied; logs or alerts were added | Confirm who is watching it and when it will be reviewed |
| Accepted risk | A conscious decision was made to live with the risk | Confirm who approved it and until what date |
| Action required / Customer action | Your team must change a setting or approve a change | Do that item first |
What you should see when this succeeds: you can point to each item and say whether it is done by the agency, waiting on your team, or just informational.
Step 3: Interpret severity correctly
Look for the severity label beside each item. If the report uses words, read them in this order:
Critical
High
Medium
Low
Informational
If the report uses CVSS (Common Vulnerability Scoring System), interpret it like this:
9.0-10.0 = Critical
7.0-8.9 = High
4.0-6.9 = Medium
0.1-3.9 = Low
0.0 = None/Informational
What you should see when this succeeds: you know which items deserve immediate attention first: Critical and High, especially if they are also internet-facing or marked customer action.
Step 4: Identify whether the item affects code, infrastructure, or access
For each security item, look for keywords and classify it using these exact cues:
Code/app issue: XSS, CSRF, SQL injection, dependency, package, library, validation, auth bypass
Infrastructure issue: TLS, SSL certificate, DNS, WAF, firewall, headers, storage bucket, backup, server patching
Access issue: MFA, SSO, admin role, API key, secret rotation, IAM, user permissions, audit log
What you should see when this succeeds: you know where to verify the claim — in the app, in the hosting/cloud dashboard, or in your user/admin settings.
Step 5: Check whether the report needs action from you
Search the report for these exact phrases:
Action required
Customer action
Pending customer approval
Needs maintenance window
Requires credential rotation
Requires DNS change
Then open the related system using the matching path:
- For DNS or certificate items: your DNS/hosting provider dashboard (for example, your provider's dashboard → DNS/Domain settings or SSL/TLS settings)
- For user access items: your application admin area → Users/Roles/Security settings
- For secret or key rotation items: your cloud or hosting dashboard → Environment variables / Secrets
What you should see when this succeeds: a short list of only the items your team must do, approve, or schedule.
Step 6: Verify common security claims in the UI first
Use the report wording to choose the exact check below.
If the report says "TLS updated", "certificate renewed", or "HTTPS enforced":
- In your browser, open:
https://your-domain.example
- Click the padlock icon next to the address bar, then open the certificate details.
What you should see when this succeeds: the page loads over
https://, the browser shows a padlock, and the certificate is valid and not expired.
If the report says "security headers added":
- In your browser, open Developer Tools → Network → reload the page → click the main document request → Response Headers.
What you should see when this succeeds: headers such as
strict-transport-security,content-security-policy,x-content-type-options, orreferrer-policyappear if the report said they were added.
If the report says "MFA enforced" or "admin access reduced":
- Open your application admin area → Users or Team → select an admin user. What you should see when this succeeds: MFA is listed as enabled for required users, and only expected people still have admin roles.
Step 7: Verify with command line if you have terminal access
If you have shell access, replace your-domain.example and run:
curl -I https://your-domain.example
For header-specific checks, run:
curl -I https://your-domain.example | grep -Ei "strict-transport-security|content-security-policy|x-content-type-options|referrer-policy|location"
What you should see when this succeeds: an HTTP/ status line, and the headers named in the report appear in the output. If HTTP is supposed to redirect to HTTPS, this should also work:
curl -I http://your-domain.example
Expected result: a 301 or 308 redirect with a Location: https://your-domain.example/... header.
Step 8: Decide whether to sign off or ask one precise question
Use this exact checklist before approving the release:
1. Every Critical/High item is marked Resolved, Mitigated with a date, or explicitly Accepted risk with approver name.
2. Every Customer action item has an owner and due date.
3. At least one verification method is listed for each security change.
4. No item says "to be configured" without naming the exact setting or owner.
What you should see when this succeeds: you can either approve the release confidently or send one focused question such as, "Item 3 says mitigated; what is the target date for full remediation?"
Verify it works
Use these checks to prove you understood the security section end to end:
- Open the report and confirm you can label every security item as one of these:
Resolved
Mitigated
Monitoring
Accepted risk
Action required
Expected result: no item is left as "unclear".
- For any item about HTTPS, certificates, or headers, verify in the browser:
Browser → open https://your-domain.example → padlock → certificate details
Browser → Developer Tools → Network → main document → Response Headers
Expected result: the live site matches the report.
- If you have terminal access, run:
curl -I https://your-domain.example
Expected result: a valid HTTP response over HTTPS, plus any headers or redirects promised in the report.
- For any customer-owned action item, confirm there is an owner and due date in your ticket or release approval note. Expected result: nothing security-related is left waiting without a named person.
Common pitfalls
Mistake: Reading severity without reading status
Symptom: you panic over a High item that was already fixed in this release.
Fix: read the status word first — Resolved means the fix is already included.
Mistake: Treating "Mitigated" as "fully fixed"
Symptom: you approve the release and later discover a follow-up task was still required. Fix: look for the remaining limitation and the target date; if neither is written, ask for both before sign-off.
Mistake: Missing customer-owned settings
Symptom: the report says the release is secure, but the live site still lacks HTTPS redirect, MFA, or a DNS change.
Fix: search the report for Customer action and Action required, then check the matching dashboard setting immediately.
Mistake: Verifying the wrong environment
Symptom: staging looks correct, but production still has the old certificate, headers, or access rules. Fix: verify the exact production URL named in the report, not a bookmark or staging subdomain.
Mistake: Assuming "Accepted risk" means nobody needs to care
Symptom: months later, the same issue appears again with no owner or review date. Fix: confirm the report names the approver and includes a review or expiry date for the accepted risk.
Mistake: Looking only at the summary table
Symptom: you miss a note like "requires maintenance window" or "rotation pending customer approval." Fix: open the full note for each High/Critical item and read the sentence after the status label.
This article was written by an AI system and published pending human review. Verify anything you intend to act on.
Have a project in mind?
Get an instant AI price estimate for it, or talk directly to our team.
One email a month on what we learn building with AI