OWASP Application Security Verification Standard 4 0 v3 7 Fill
OWASP Application Security Verification Standard 4 0 v3 7 Fill
Level 1 Requirements
Authorization
1.1.1 Architecture, Design and Threat Secure Software Development Verify the use of a secure software development lifecycle that addresses security in all stages of development. - Comply
Modeling Requirements Lifecycle Requirements (C1)
1.1.2 Architecture, Design and Threat Secure Software Development Verify the use of threat modeling for every design change or sprint planning to identify threats, plan for 1053 Comply
Modeling Requirements Lifecycle Requirements countermeasures, facilitate appropriate risk responses, and guide security testing.
1.1.3 Architecture, Design and Threat Secure Software Development Verify that all user stories and features contain functional security constraints, such as "As a user, I should be 1110 Comply
Modeling Requirements Lifecycle Requirements able to view and edit my profile. I should not be able to view or edit anyone else's profile"
1.1.4 Architecture, Design and Threat Secure Software Development Verify documentation and justification of all the application's trust boundaries, components, and significant 1059 Comply
Modeling Requirements Lifecycle Requirements data flows.
1.1.5 Architecture, Design and Threat Secure Software Development Verify definition and security analysis of the application's high-level architecture and all connected remote 1059 Comply
Modeling Requirements Lifecycle Requirements services. (C1)
1.1.6 Architecture, Design and Threat Secure Software Development Verify implementation of centralized, simple (economy of design), vetted, secure, and reusable security 637 Comply
Modeling Requirements Lifecycle Requirements controls to avoid duplicate, missing, ineffective, or insecure controls. (C10)
1.1.7 Architecture, Design and Threat Secure Software Development Verify availability of a secure coding checklist, security requirements, guideline, or policy to all developers and 637 Comply
Modeling Requirements Lifecycle Requirements testers.
Authentication Verification Credential Storage Verify that the salt is at least 32 bits in length and be chosen arbitrarily to minimize salt value collisions among Comply
2.4.2 916
Requirements Requirements stored hashes. For each credential, a unique salt value and the resulting hash SHALL be stored. (C6)
Authentication Verification Credential Storage Verify that if PBKDF2 is used, the iteration count SHOULD be as large as verification server performance will Comply
2.4.3 916
Requirements Requirements allow, typically at least 100,000 iterations. (C6)
Authentication Verification Credential Storage Verify that if bcrypt is used, the work factor SHOULD be as large as verification server performance will allow, Comply
2.4.4 916
Requirements Requirements typically at least 13. (C6)
Authentication Verification Credential Storage Verify that an additional iteration of a key derivation function is performed, using a salt value that is secret and Comply
Requirements Requirements known only to the verifier. Generate the salt value using an approved random bit generator [SP 800-90Ar1] and
2.4.5 provide at least the minimum security strength specified in the latest revision of SP 800-131A. The secret salt 916
value SHALL be stored separately from the hashed passwords (e.g., in a specialized device like a hardware
security module).
2.5 Authentication Verification Credential Recovery - -
Requirements Requirements
Authentication Verification Credential Recovery Verify that if OTP or multi-factor authentication factors are lost, that evidence of identity proofing is performed Not Applicable
2.5.7 308
Requirements Requirements at the same level as during enrollment.
2.6 Authentication Verification Look-up Secret Verifier - -
Requirements Requirements
Authentication Verification Look-up Secret Verifier Other Not sure
2.6.1 Verify that lookup secrets can be used only once. 308
Requirements Requirements
Authentication Verification Look-up Secret Verifier Verify that lookup secrets have sufficient randomness (112 bits of entropy), or if less than 112 bits of entropy, Other Not sure
2.6.2 330
Requirements Requirements salted with a unique and random 32-bit salt and hashed with an approved one-way hash.
Authentication Verification Look-up Secret Verifier Other Not sure
2.6.3 Verify that lookup secrets are resistant to offline attacks, such as predictable values. 310
Requirements Requirements
2.7 Authentication Verification Out of Band Verifier - -
Requirements Requirements
Authentication Verification Out of Band Verifier Other Not sure
2.7.5 Verify that the out of band verifier retains only a hashed version of the authentication code. 256
Requirements Requirements
Authentication Verification Out of Band Verifier Verify that the initial authentication code is generated by a secure random number generator, containing at Other Not sure
2.7.6 310
Requirements Requirements least 20 bits of entropy (typically a six digital random number is sufficient).
2.8 Authentication Verification Single or Multi Factor One - -
Requirements Time Verifier Requirements
Authentication Verification Single or Multi Factor One Verify that symmetric keys used to verify submitted OTPs are highly protected, such as by using a hardware Other Not sure
2.8.2 320
Requirements Time Verifier Requirements security module or secure operating system based key storage.
Authentication Verification Single or Multi Factor One Comply
2.8.3 Verify that approved cryptographic algorithms are used in the generation, seeding, and verification. 326
Requirements Time Verifier Requirements
Authentication Verification Single or Multi Factor One Not Applicable
2.8.4 Verify that time-based OTP can be used only once within the validity period. 287
Requirements Time Verifier Requirements
Authentication Verification Single or Multi Factor One Verify that if a time-based multi factor OTP token is re-used during the validity period, it is logged and rejected Not Applicable
2.8.5 287
Requirements Time Verifier Requirements with secure notifications being sent to the holder of the device.
Authentication Verification Single or Multi Factor One Verify physical single factor OTP generator can be revoked in case of theft or other loss. Ensure that revocation Not Applicable
2.8.6 613
Requirements Time Verifier Requirements is immediately effective across logged in sessions, regardless of location.
2.9 Authentication Verification Cryptographic Software and - -
Requirements Devices Verifier Requirements
13.4 API and Web Service Verification GraphQL and other Web - -
Requirements Service Data Layer Security
Requirements
API and Web Service Verification GraphQL and other Web Verify that query whitelisting or a combination of depth limiting and amount limiting should be used to prevent Not Applicable
13.4.1 Requirements Service Data Layer Security GraphQL or data layer expression denial of service (DoS) as a result of expensive, nested queries. For more 770
Requirements advanced scenarios, query cost analysis should be used.
API and Web Service Verification GraphQL and other Web Not Applicable
Verify that GraphQL or other data layer authorization logic should be implemented at the business logic layer
13.4.2 Requirements Service Data Layer Security 285
instead of the GraphQL layer.
Requirements
14 Configuration Verification - - -
Requirements
14.1 Configuration Verification Build - -
Requirements
Configuration Verification Build Verify that the application build and deployment processes are performed in a secure and repeatable way, such - Not Comply
14.1.1
Requirements as CI / CD automation, automated configuration management, and automated deployment scripts.
Configuration Verification Build Verify that compiler flags are configured to enable all available buffer overflow protections and warnings, Comply
14.1.2 Requirements including stack randomization, data execution prevention, and to break the build if an unsafe pointer, memory,
format string, integer, or string operations are found. 120
Configuration Verification Build Verify that server configuration is hardened as per the recommendations of the application server and Comply
14.1.3
Requirements frameworks in use. 16
Configuration Verification Build Verify that the application, configuration, and all dependencies can be redeployed using automated deployment - Not Comply
14.1.4 Requirements scripts, built from a documented and tested runbook in a reasonable time, or restored from backups in a timely
fashion.
Configuration Verification Build Verify that authorized administrators can verify the integrity of all securityrelevant configurations to detect - Comply
14.1.5
Requirements tampering.
14.2 Configuration Verification Dependency - -
Requirements
Configuration Verification Dependency Verify that third party components come from pre-defined, trusted and continually maintained repositories. Comply
14.2.4 829
Requirements (C2)
Configuration Verification Dependency - Comply
14.2.5 Verify that an inventory catalog is maintained of all third party libraries in use. (C2)
Requirements
Configuration Verification Dependency Verify that the attack surface is reduced by sandboxing or encapsulating third party libraries to expose only the Comply
14.2.6 265
Requirements required behaviour into the application. (C2)
14.5 Configuration Verification Validate HTTP Request - -
Requirements Header Requirements
Configuration Verification Validate HTTP Request Header Verify that HTTP headers added by a trusted proxy or SSO devices, such as a bearer token, are authenticated by Comply
14.5.4 306
Requirements Requirements the application.
Authorization
Authorization