Level 2 Web App Security Checklist: ASVS Actions for Dev Teams

Engineer reviewing web app security settings
Read time: 11 mins

Use an ASVS-aligned checklist with a Level 2 baseline for most business web apps, covering authentication, input validation, session management, cryptography, configuration hardening, dependency management, logging, and security testing. This gives development and security teams a structured, verifiable standard instead of an ad hoc list of best guesses.


TL;DR:

  • Map each control to its ASVS section and a concrete acceptance criterion; prioritize exploitable unauthenticated flaws before configuration gaps and long term architecture work.
  • Enforce server side authorization on every request, require phishing resistant MFA for privileged accounts, and rotate session tokens after login, password resets, or privilege changes.
  • Run SAST and SCA in continuous integration on every build, while scheduling staging tests and penetration tests according to application risk.
  • For APIs, validate request and response schemas strictly, authenticate every machine client, enforce gateway rate limits, and review third party permissions before launch.
  • Mark controls complete only with verifiable evidence, such as a passing test, enforced configuration screenshot, or signed code review tied to the relevant ASVS section.

Arslanwebstudio
Build a Web App Around Your Needs
Arslan Web Studio creates bespoke web applications with a focus on functionality, speed, and designs tailored to business needs.

Table of Contents

How to use this web app security checklist

This checklist applies to production web apps and APIs, and it works best when developers, DevOps engineers, and security reviewers all check items against the same standard.

  • Map each checklist item to its matching ASVS section and write a concrete acceptance criterion for it.
  • Sort findings into three buckets: urgent and exploitable, medium risk, and long-term architecture work.
  • Treat Level 1 as a minimum floor and Level 2 as the working target for anything handling business or customer data.

Pro Tip: Attach the ASVS section number to every ticket you open, so remediation work stays traceable back to the standard.

Authentication and access control

Authentication failures and broken access control sit at the top of nearly every incident report, which is why they open most ASVS-aligned reviews.

  • Centralize identity through SAML or OIDC rather than maintaining custom login flows for each app.
  • Require phishing-resistant MFA for administrators and privileged accounts, following patterns like those in CISA’s Azure AD baseline, which blocks legacy authentication and enforces risk-based policies for high-risk users.
  • Enforce authorization checks on the server for every request, never trusting a hidden field or disabled button on the client.
  • Apply least-privilege role models so a compromised account can’t pivot into unrelated data or admin functions.
  • Rotate service account secrets on a defined schedule and store them in an approved vault rather than in code or config files.

Statistic Callout: The OWASP Top 10:2025 lists Broken Access Control among the most critical web application risks, alongside security misconfiguration and software supply chain failures. Access control failures tend to be high-impact because they expose data or functions that should never have been reachable in the first place.

Input validation and output encoding

Injection and cross-site scripting both trace back to the same root problem: untrusted input treated as trusted code or markup.

  • Validate every input on the server, since client-side checks can be bypassed and should be treated as a usability layer, not a security control.
  • Enforce strict schemas and canonicalize data before validating it, closing off encoding tricks attackers use to slip past filters.
  • Apply context-aware output encoding, because the escaping rules for HTML, JavaScript, and URL parameters are different and mixing them up reopens the hole.
  • Use parameterized queries or an ORM for all database access instead of building SQL strings by hand.
  • Review templates for auto-escaping settings, since many frameworks allow developers to opt out of safe rendering without realizing the risk.

A single unescaped field in a search result or comment thread is often all it takes to run arbitrary script in another user’s browser session.

Session handling connects authentication to everything a user does afterward, so weaknesses here undermine controls built everywhere else.

Generate session identifiers with a cryptographically secure random source, and rotate the token whenever a user’s privilege level changes, such as after login or a password reset. Set the Secure, HttpOnly, and SameSite attributes on every session cookie, and keep expiry windows short enough to limit the damage from a stolen token. Session tokens should be random, unpredictable, and invalidated server-side on logout and on any credential change, not just cleared from the browser.

Session token rotation, expiry, and invalidation

Data protection and cryptography

Cryptography checks exist to confirm that data is actually protected in transit and at rest, not just theoretically encryptable.

Enforce modern TLS configurations and keep certificate renewal automated so expired certificates never silently downgrade a connection. Use vetted, well-maintained cryptographic libraries for encryption and hashing, and avoid writing custom algorithms, since even small implementation errors tend to produce exploitable weaknesses. Store encryption keys in a managed key store or hardware-backed module rather than alongside the data they protect, and rotate them on a defined schedule. The OWASP Top 10:2025 lists cryptographic failures as a recurring category precisely because teams reach for shortcuts under deployment pressure.

Data protection and cryptography — overview diagram

Configuration, deployment, and platform hardening

A secure codebase can still ship with an insecure configuration, which is why hardening checks sit alongside code review rather than replacing it.

  • Disable debug endpoints, verbose error pages, and admin interfaces before anything reaches production.
  • Harden containers and host images to a minimal footprint, removing unused packages and services.
  • Scope cloud IAM roles to the minimum permissions a service actually needs, rather than reusing broad roles across environments.
  • Scan infrastructure-as-code templates in the pipeline so a misconfigured security group never reaches a live environment.
  • Compare each environment against a documented secure configuration baseline, similar in spirit to CISA’s published baseline for identity platforms.

Dependency and software supply chain controls

Most applications now carry more third-party code than first-party code, which makes dependency hygiene a frontline control rather than a background task.

  • Run software composition analysis in CI on every build and pin or lock dependency versions.
  • Remove packages that are no longer used and watch for typosquatting or repository impersonation attempts.
  • Define update cadence and security expectations for suppliers rather than treating every dependency bump as optional.

CISA’s supply chain guidance recommends nightly regression builds and artifact provenance checks to catch injected malicious code early.

Logging, monitoring, and incident response

Controls that fail silently are the ones that cause the most damage, so visibility matters as much as prevention.

Centralize logs in a SIEM and make sure authentication failures, privilege changes, and admin actions are all captured. Build detection rules around the behaviors that matter most to your app, and test incident response playbooks before an actual incident forces you to improvise. Protect log stores from tampering and set retention periods long enough to support an investigation months after the fact.

Security testing and SDLC integration

Security testing works best when it’s distributed across the build pipeline instead of concentrated in a single pre-launch pentest.

  1. Add SAST and SCA scanning to continuous integration so flaws surface before merge, not after deployment.
  2. Schedule DAST or IAST runs against staging environments and plan penetration tests at a cadence that matches your risk level.
  3. Run threat modeling during the design phase and map resulting test cases to ASVS sections and the OWASP Top 10.
  4. Require release gates that block deployment until findings are remediated or risk is formally accepted.

NIST SP 800-218 (SSDF) recommends integrating SAST, SCA, and threat modeling directly into the SDLC rather than bolting testing on at the end.

Pro Tip: Catching a flaw in CI costs far less than catching the same flaw in a late-stage penetration test, so push testing as early into the pipeline as the tooling allows.

API and third-party integrations

APIs extend your attack surface to every system that calls them, so they need their own checklist items rather than inheriting web app checks by assumption.

Validate request and response schemas strictly, enforce rate limits, and require authenticated credentials for every machine client, not just human users. Put authorization and throttling rules at the gateway layer so a single compromised client can’t exhaust shared resources. Version APIs deliberately and review the permissions granted to any third-party integration before it goes live, since over-broad consent scopes are a common path for abuse.

Prioritization and triage: how to use this checklist in practice

Not every finding deserves the same urgency, so score each one by impact multiplied by likelihood and map it back to its ASVS section.

  1. Fix immediately: exploitable issues reachable without authentication, such as broken access control or missing input validation.
  2. Address mid-term: configuration gaps and missing MFA that raise risk but require specific conditions to exploit.
  3. Plan long-term: architectural changes like migrating to a centralized identity provider or re-architecting session handling.

Pro Tip: Mark a checklist item complete only when you have evidence, a passing test, a screenshot of enforced configuration, or a signed-off code review, not just a verbal confirmation.

Arslan Web Studio: practical experience and when to hire help

We have built and hardened more than 200 client projects at Arslan Web Studio, spanning custom web applications, e-commerce platforms, and corporate sites, and we fold checklist items like these into our web application solutions as a standard part of delivery. Teams with in-house engineering capacity can often work through configuration and dependency items on their own. When a project needs authentication architecture changes, ongoing hardening, or sustained monitoring support, bringing in a specialist tends to move faster than building that capability from scratch.

Why security has to live inside the developer’s everyday workflow

Checklists fail when they live in a separate document nobody opens during a sprint. The fix is a paved road: make the secure dependency, the secure template, and the secure auth pattern the default choice, not an extra step. Pair that with periodic reviews and short, recurring team training, and the checklist stops being a one-time audit and becomes how the team already works.

— Arsan

Get your web app security checklist implemented, not just written

Reading a checklist is the easy part. Closing out dozens of ASVS-mapped findings across authentication, session handling, and dependency management takes engineering hours most internal teams don’t have spare. At Arslan Web Studio, we build that work into our web application solutions and pair it with the ongoing support that keeps controls from drifting out of date after launch.

Arslanwebstudio

  • Web Application Solutions: secure architecture and development for custom apps and internal tools.
  • E-commerce Development: hardened checkout, session, and payment integration flows.
  • Ongoing Support: continuous monitoring and remediation as new risks surface.
ServiceWhat it covers
Web Application SolutionsSecure design, development, and ASVS-aligned hardening
E-commerce DevelopmentCheckout security, payment data handling, session controls
Business & Corporate WebsiteHardened builds with secure configuration baselines

Request a security scoping call through our services page and we’ll walk through which checklist items matter most for your current build.

FAQ

ASVS Level 2 is the recommended baseline for most business applications that handle meaningful user or transaction data. Level 1 covers only minimum, automatable checks, while Level 3 is reserved for high-assurance applications with elevated risk.

How often should we run penetration tests versus automated scans?

Automated SAST and SCA scans should run on every build inside continuous integration, since they catch issues before code merges. Penetration testing cadence should match risk level, with higher-risk applications tested more frequently, following the continuous-testing approach described in NIST SP 800-218.

What belongs in a web app security checklist for APIs?

An API-focused checklist should require strict schema validation, authenticated machine clients, rate limiting at the gateway, and version control for every endpoint. Reviewing third-party integration permissions before launch closes off a common path attackers use to abuse over-broad consent scopes.

Which security headers should every web app set?

Content-Security-Policy, HTTP Strict Transport Security, and X-Frame-Options are core headers that reduce the impact of cross-site scripting, downgrade attacks, and clickjacking. These headers work alongside, not instead of, server-side input validation and output encoding.

How do we know a checklist item is actually complete?

A checklist item is complete only when there’s verifiable evidence behind it, such as a passing automated test, a documented configuration review, or a signed-off code review tied to the relevant ASVS section. A verbal confirmation or an unverified assumption doesn’t meet that bar.

Sources

Made with BabyLoveGrowth’s AI

appsumo software for lifetime deal

You'll get 10% off every purchase, VIP support, extended access to our best deals, membership to The Sauce, and more!

Join Now
Share the Post:

Related Posts

Subscribe to our newsletter

Get Free Website Design for your best choice.
Subscription Form
Arslan Khursheed photo
Shopping Basket