What are Authentication and Authorization

·

3 min read

Definitions

Authentication

The process of verifying a user's identity, confirming that the person is who they claim to be.

Authentication is the process of confirming the identity of a user or system. This involves the user providing evidence of their claimed identity or the system verifying the identity of the entity attempting to access a resource. Authentication is achieved when a user provides valid credentials (such as a username and password) to confirm their identity, often used during the login process. It is the first step required for a user to gain access to a system.

Authorization

The act of granting permissions to authorized individuals.

Authorization is the process of verifying whether an authenticated entity has the necessary permissions to access specific resources or perform certain actions. It occurs after authentication and involves determining what actions an authenticated entity is allowed to perform. For instance, in a web application, authorization might involve checking a user's permissions before allowing access to a specific page.

Vulnerable Points List

  • All pages requiring authentication or authorization

Vulnerability Testing Methods

  • Checking if access is possible to posts that are not accessible by simply changing page numbers (changing the HTTP address)

  • Verifying if client-side redirection occurs (this might allow response manipulation)

  • Reviewing comment sections for potential vulnerabilities

  • Checking if JavaScript files (.js) are used to implement redirection

  • Testing parameter manipulation

Attack Methods

Authentication Bypass Process

Details of Authentication Bypass Process

  1. Page 1 is accessible to anyone.

  2. Page 2 requires login. An unsuccessful login attempt is made by the attacker.

  3. If the login is successful on Page 2, the user is redirected to Page 3, granting access to the forum.

  4. However, Page 3 does not check for successful authentication.

  5. The attacker accesses Page 3 without going through Page 2.

  6. The server provides Page 3 content to the attacker.

Authorization Bypass Process

Details of Authorization Bypass Process

  1. The attacker requests "user profile" from the web server.

  2. The web server provides the "user profile" to the attacker.

  3. The attacker then requests "admin profile" from the web server.

  4. The web server denies the request, indicating incorrect cookie parameters.

  5. The attacker speculates that the server checks the cookie parameters.

  6. The attacker sends a tampered request for "user profile" to the web server.

  7. The web server provides the "admin profile" to the attacker.

Mitigation Strategies

  • Ultimate defense: Server-side verification through sessions

    • Server-side verification through sessions is essential

    • Client-side code should focus on user convenience features only

  • Additional measures:

    • Implement strong password policies: Enforce length, complexity, and change intervals

    • Introduce Two-Factor Authentication (2FA): Add additional authentication factors beyond passwords

  • Apply the principle of least privilege: Grant users only the minimum permissions required

Feel free to use this translated content for your blog! If you have any further questions or need additional assistance, feel free to ask.

Did you find this article valuable?

Support Eunhan's blog by becoming a sponsor. Any amount is appreciated!