Test User Registration Process (OTG-IDENT-002)
This article is part of the new OWASP Testing Guide v4.
Back to the OWASP Testing Guide v4 ToC: https://www.owasp.org/index.php/OWASP_Testing_Guide_v4_Table_of_Contents Back to the OWASP Testing Guide Project: https://www.owasp.org/index.php/OWASP_Testing_Project
Some websites offer a user registration process that automates (or semi-automates) the provisioning of people with system access. The identity requirements for access vary from positive identification to none at all, depending on the security requirements of the system. Many public applications completely automate the registration and provisioning process because the size of their userbase makes it impossible to manage manually. However, many corporate applications will provision users manually, so this test case may not apply.
Verify the identity requirements for user registration align with business/security requirements
Validate the registration process
How to test
- Verify the identity requirements for user registration align with business/security requirements
- Can anyone register for access?
- Are registrations vetted by a human prior to provisioning, or are they automatically granted if the criteria are met?
- Can the same person/identity register multiple times?
- Can users register for different roles/permissions?
- What proof of identity is required for a registration to be successful?
- Are registered identities verified?
- Validate the registration process
- Can identity information be easily forged or faked?
- Can the exchange of identity information be manipulated during registration?
In contrast, the Google example below, the identification requirements include name, DOB, country, mobile phone number, email address and CAPTCHA response. While only two of these can be verified (email address and mobile number), the identification requirements are stricter than Wordpress.
Implement identification and verification requirements that correspond to the security requirements of the information the credentials protect.