Web App Security Checklist: Protect Your Users and Your Reputation
The average US breach costs $10.22M (IBM 2025) and 60% of breaches involve the human element. Five essential web app controls, the OWASP Top 10 in plain English, an audit cadence and a 90-day plan.
A breach is rarely just an IT problem. IBM's Cost of a Data Breach Report 2025 puts the average breach at $4.44 million globally and $10.22 million in the United States, before you count the harder-to-price damage: customers who quietly take their business elsewhere. The reassuring part is that most successful attacks do not require a genius adversary. They walk through a short list of well-known, well-documented doors that a disciplined team can lock.
We built this checklist the way we build it with clients: five essential controls, the OWASP Top 10 translated into plain English, a realistic audit cadence, and the numbers that turn security into a conversation with your buyers instead of just your insurer. It is written for owners and operators, not engineers. The examples follow two businesses we see constantly — a B2B SaaS company handling customer data and a healthcare patient portal.
Here is the short version before we go control by control.
Key Highlights
- The average data breach costs $4.44M globally and $10.22M in the US (IBM, Cost of a Data Breach 2025).
- Breaches took an average of 241 days to identify and contain in 2025 (IBM) — eight months of an intruder being inside.
- 60% of breaches involve the human element and 44% involve ransomware (Verizon 2025 Data Breach Investigations Report).
- Credential abuse is the top initial access vector at 22% of breaches; exploitation of vulnerabilities grew 34% year over year to 20% (Verizon 2025 DBIR).
- Multi-factor authentication (MFA) blocks more than 99% of automated account-takeover attempts (Microsoft research).
- Breaches contained within 200 days cost about $800K less than slower ones — $3.93M versus $4.76M (IBM 2023).
- A 200-question buyer security review takes roughly 40 hours without preparation and about 8 hours with an evidence folder (illustrative model in the last section).
- All five controls below are process-heavy and budget-light — none requires an enterprise security team to start.
Where Web App Security Stands in 2026
Attackers follow the path of least resistance, and that path increasingly runs through the web applications every business now runs: customer portals, booking systems, checkouts, dashboards. Verizon's 2025 Data Breach Investigations Report (DBIR) found that 22% of breaches began with abused credentials and 20% with an exploited vulnerability, with phishing close behind at 16%. Add the human element — clicking, reusing passwords, misconfiguring — present in 60% of breaches, and the target picture is clear. Your web app is not a side door; it is the front door.
The cost side of the ledger is just as measurable. IBM's 2025 report puts average detection and containment at 241 days — the lowest figure in nine years, but still eight months of attacker dwell time for the average victim.
Every day shaved off detection is money saved: IBM's 2023 report showed breaches contained within 200 days cost roughly $800K less than those that dragged on. Detection speed is a controllable variable, which is why logging and testing appear twice in this checklist.
One more framing note before the controls. In our phishing-resilience work with a regional bank, the technical fixes mattered less than the operating rhythm behind them — the same is true for web apps.
Key takeaway: Most attackers use the front door — stolen credentials, unpatched flaws, tricked humans. The five controls that follow are the locks, and the audit cadence at the end is what keeps them locked.
Control 1: Lock Down Authentication and Access
Credential abuse is the single most common way outsiders get in, so authentication is where the checklist starts. Microsoft's security research puts it plainly: MFA blocks more than 99% of automated account-takeover attempts. If your app's admin panel, customer portal and staff dashboards still rely on passwords alone, this is the highest-leverage fix on the page.
MFA is the headline, but it is not the whole control. Access needs to be scoped so people can only reach what their role requires, sessions need to expire, and shared logins need to disappear. For the B2B SaaS example: every customer-data admin account should sit behind MFA and a named owner, because "who can see this data" is the first question enterprise buyers ask.
What good looks like in practice:
- MFA everywhere, admins first — enforce it for staff and offer it by default to customers.
- Single sign-on (SSO) for internal tools so offboarding kills access in one place.
- Least privilege — review who holds admin rights quarterly and remove what is not needed.
- Session timeouts and step-up authentication for sensitive actions like bank-detail changes.
- Breached-password screening so known-leaked passwords are rejected at signup.
- No shared accounts — every action traceable to a named person.
| Control | What it does | Effort |
|---|---|---|
| MFA on all accounts | Blocks over 99% of automated takeover (Microsoft) | Low |
| SSO for internal tools | One switch removes a leaver's access everywhere | Medium |
| Quarterly admin review | Catches privilege creep before auditors do | Low |
| Session timeout + step-up auth | Limits the damage of a stolen session | Low |
| Breached-password checks | Stops the most-guessed and leaked passwords | Low |
The failure mode we see most is privilege creep: an employee changes roles twice over three years and quietly keeps every permission they ever collected. A quarterly fifteen-minute review fixes it.
Key takeaway: Authentication is the front door, and MFA is the cheapest lock you will ever install. Do it first, review who holds keys every quarter, and make offboarding a one-click event.
Control 2: Validate Every Input — the OWASP Top 10 in Plain English
Every field a user can type into — search boxes, forms, file uploads, API endpoints — is an attack surface. Input validation means treating every piece of user-supplied data as untrusted until proven otherwise. Injection attacks work because an application trusted that input and passed it somewhere dangerous, like a database query or a rendered page.
This is where the OWASP Top 10 earns its reputation as the shared vocabulary of application security. The OWASP Foundation publishes a ranked list of the most critical web application security risks, most recently updated in 2021 from real incident data. Here it is with the jargon removed.
The chart above shows how attackers get in; the table below maps the weaknesses they exploit to the controls in this article.
| OWASP risk (2021) | Plain English | Maps to |
|---|---|---|
| A01 Broken access control | Users reach data or actions that are not theirs | Control 1 |
| A02 Cryptographic failures | Weak or missing encryption for sensitive data | Control 4 |
| A03 Injection | Typed input tricking a database or script | Control 2 |
| A04 Insecure design | The app was never designed to be safe | Controls 1-5 |
| A05 Security misconfiguration | Default settings and debug modes left on | Controls 3-4 |
| A06 Vulnerable components | Outdated libraries with known holes | Control 3 |
| A07 Authentication failures | Weak logins, no MFA, broken sessions | Control 1 |
| A08 Software integrity failures | Untrusted updates and dependencies | Control 3 |
| A09 Logging and monitoring failures | Breaches nobody notices for months | Audit cadence |
| A10 Server-side request forgery | Tricking the server into fetching attacker URLs | Control 2 |
Two entries deserve special mention for our examples. Broken access control ranks first because patient portals and multi-tenant SaaS live or die on "can user A open user B's record" — test it on every release. Logging failures at number nine are why breaches sit undetected for the better part of a year.
Key takeaway: The OWASP Top 10 is not homework for engineers — it is your map of where attacks land. Validate input, test access control on every release, and log enough to notice when something is wrong.
Control 3: Patch Dependencies Before Attackers Exploit Them
Almost no modern web app is written from scratch. It is assembled from open-source packages — frameworks, plugins, payment SDKs — and every one of those packages occasionally ships a security flaw. When a flaw goes public, attackers automate exploits within days, which is why unpatched dependencies have become one of the fastest-growing entry points.
Verizon's 2025 DBIR counted 20% of breaches starting with an exploited vulnerability, a 34% increase over the prior year. The vulnerability is public knowledge; the only question is whether your patch lands before their scan does.
The fix is a process, not a purchase:
- Inventory first — keep an automatically generated list of every dependency your app runs on.
- Scan weekly — free and paid tools flag known-vulnerable packages; automation does the watching.
- Patch on a schedule — a monthly window for routine updates, same-week for critical warnings.
- Assign an owner — "someone on the dev team checks it" means nobody checks it.
- Trim what you do not use — every forgotten plugin is an unpatched door.
Our payments-platform clients operate under PCI DSS, which mandates exactly this discipline: an inventory, a scanning rhythm and documented patch timelines. You do not need to be regulated to copy the pattern — you just need to borrow the cadence, as we described in our PCI DSS payments platform case study.
Key takeaway: Your dependencies' vulnerabilities are your vulnerabilities. Automate the scanning, schedule the patching, and put a name next to both.
Control 4: Encrypt Everything — TLS, Storage and the Data You Keep
Encryption is the control buyers check first and attackers defeat last. TLS — the padlock in the browser — protects data in transit; encryption at rest protects data in your database and backups. Both are effectively free with modern hosting, which turns "we forgot" into a reputation-wounding answer rather than an engineering constraint.
- Force HTTPS everywhere and redirect plain HTTP automatically.
- Enable HSTS so browsers refuse to connect insecurely, even once.
- Automate certificate renewal — expired certificates take sites down and erode trust.
- Encrypt databases and backups at rest, with keys stored separately from the data.
- Keep secrets out of code repositories — API keys belong in a vault, not a Git history.
- Minimize what you store — the cheapest way to protect data is to stop keeping it.
That last bullet deserves the emphasis. A patient portal that keeps full identity documents forever turns every breach into a worst-case event; the same portal keeping only what care requires is a far smaller target.
Key takeaway: Encrypt everything in transit and at rest, automate the certificate work, and then shrink the treasure: the data you never collect is the data you never have to defend.
Control 5: Back Up Like You Will Be Breached
Ransomware was present in 44% of breaches Verizon analyzed in 2025. When that happens, your backups are the difference between a bad afternoon and an extinction event — provided they are current, isolated and tested. Ransomware operators increasingly hunt for backups first, precisely because recovery is your escape hatch.
Two numbers define whether a backup strategy is real: RPO (recovery point objective — how much data you can afford to lose, measured in time) and RTO (recovery time objective — how long you can afford to be down). Write yours down before an incident forces the question. Then apply the 3-2-1 rule — three copies, two media, one off-site — plus one immutable or offline copy that ransomware cannot rewrite.
| Target | What it means | How to verify |
|---|---|---|
| RPO of 1 hour or less | Transactional databases snapshotted frequently | Check snapshot timestamps monthly |
| RTO of 4 hours or less | Core app restorable to a known-good state quickly | Time a full restore, quarterly |
| Immutable copy kept 30 days | One backup version ransomware cannot touch | Attempt a simulated overwrite |
| Documented runbook | Steps, owners and contacts on paper | Walk through it in an annual drill |
The healthcare portal in our examples runs quarterly restore tests because regulators expect recoverability to be demonstrated, not asserted. The B2B SaaS company does the same for a commercial reason: its enterprise customers ask for it in security reviews. A backup you have never restored is a hope, not a control.
Key takeaway: Assume the breach will reach your data, and make recovery boring: tested restores, an immutable copy, and RPO and RTO numbers you chose on purpose.
Audit Cadence: How Often to Test Each Control
Security controls decay the moment nobody looks at them — access lists drift, patches queue up, logs go unread. A published cadence turns this checklist from a one-off project into an operating habit, and it is what auditors, insurers and enterprise buyers actually probe for. IBM's data shows why detection speed belongs on the same list as prevention.
IBM's 2023 report found breaches contained within 200 days averaged $3.93M versus $4.76M for slower ones — detection is a financial control, not just a technical one. The cadence below is what we install with clients; adjust the names, keep the rhythm.
| Check | Cadence | Typical owner |
|---|---|---|
| Dependency and vulnerability scan | Weekly (automated) | Dev lead |
| Routine patch window | Monthly | Dev lead |
| Log and alert review | Weekly | Security owner |
| Admin access review | Quarterly | Ops or CTO |
| Backup restore test | Quarterly | Ops |
| Penetration test | Annually and after major releases | External firm |
| Incident tabletop exercise | Annually | Leadership |
Assign every row a name, not a department. With owners and next dates set, a two-hour monthly review covers most of this list — and produces exactly the evidence the next section shows you how to sell.
Key takeaway: Security is a rhythm, not a renovation. Weekly scans, monthly patches, quarterly access and restore tests, an annual pen test — owned by name and visible on the calendar.
Security as a Sales Asset, Not Just Insurance
Somewhere between the first proposal and the signed contract, most B2B buyers now send a security questionnaire — often 200 or more questions in our experience, covering MFA, encryption, backups, incident response and logging. Vendors without answers stall in procurement; vendors with an evidence folder sail through. The same folder impresses insurers and, when the worst day comes, regulators.
The chart above is an illustrative model of a 200-question review, but the pattern is real and repeatable: preparation converts a scramble into an export. In our SOC 2 automation work with a SaaS company, pulling evidence became a half-day task once logging and access reviews ran on a cadence — which then shortened every future buyer review.
Security posture also shortens the trust conversation before it starts. A public security page that states your MFA policy, encryption standards, backup testing and incident response contact answers most questions before they are asked. Our AI governance and security article makes the same argument from the compliance side: documented practices win deals that faster, quieter competitors lose.
Key takeaway: Build the evidence folder while nothing is on fire. Every control in this checklist, documented and dated, becomes an asset your sales team can deploy.
What Your Business Should Do
Security checklists only matter when they change Monday morning. Here is the 90-day plan we give clients, mapped to the five controls above:
Days 1-30: Find your exposure.
- Enable MFA on every staff account and admin panel, starting with anyone who touches customer data.
- Generate a complete inventory of your app's dependencies and hosting configuration, and switch on automated vulnerability scanning.
- Write down your RPO and RTO targets and locate every backup copy, including whether one is immutable.
Days 31-60: Close the front door.
- Schedule the monthly patch window and clear the critical backlog the scanning surfaced.
- Validate input and test access control on your main user flows — portal, checkout, admin — and fix what fails.
- Turn on centralized logging with alerts for failed logins, privilege changes and unusual export volumes.
Days 61-90: Prove it and keep it proving.
- Run a full backup restore test, time it against your RTO, and log the result as evidence.
- Complete the first quarterly admin access review and put the next one on the calendar.
- Assemble the buyer evidence folder: MFA policy, encryption standards, patch log, restore test and pen-test summary.
The Bottom Line
Web app security is not about buying tools with dashboard logos; it is about locking five doors and checking them on a schedule. MFA, input validation, patched dependencies, encryption and tested backups stop the majority of the attacks that IBM and Verizon document every year. And the same discipline, written down, becomes an asset your buyers can see.
If you want a second pair of eyes on your web app's security posture, that is a normal Tuesday for us. Book a free strategy call and we will map your highest-risk gaps together — or send us a message and we will reply within one business day.
Free download: the Learning Guide (PDF)
Everything worth keeping from this article — key numbers, tables and the action checklist — in one print-ready, fillable PDF.
Join our newsletter — more growth tips, twice a month
Playbooks from real projects. No spam, unsubscribe anytime.
FAQ
How much should a small business budget for web app security?+
For most small and mid-sized businesses, the essential controls in this checklist cost process time more than license fees: MFA, TLS, backups and patch cadence are largely built into modern hosting. A reasonable planning range is 5-10% of your IT budget for the first hardening quarter, then a smaller maintenance share after that. Compare that with IBM's 2025 average breach cost of $4.44M globally and $10.22M in the US, and the asymmetry becomes obvious.
What is the OWASP Top 10 in simple terms?+
It is a ranked list of the most critical security risks in web applications, published by the OWASP Foundation from real incident data. The 2021 edition is led by broken access control, cryptographic failures and injection — users reaching data that is not theirs, weak encryption, and typed input tricking your database. Think of it as the shared vocabulary engineers, auditors and buyers use to talk about application risk.
How often should a web application be audited?+
Run automated vulnerability and dependency scans weekly, patch on a monthly schedule, and review admin access and backup restores quarterly. An external penetration test once a year — and after any major release — covers what automation misses. The cadence matters more than the depth of any single audit, because controls decay without rhythm.
Does security actually help win customers?+
Increasingly, yes. B2B buyers routinely send security questionnaires before signing, insurers price your controls, and a public security page shortens procurement for every future deal. In our experience, an evidence folder built from the controls in this article turns security from a cost center into a sales asset — and shortens the next audit at the same time.
Engineering-led team at Emerson Technology — building apps, web platforms and growth systems for ambitious businesses. Every guide comes from real client work.