Weak Access Controls

circle-info

Weak Access Controls occur when an application does not properly enforce restrictions on who can access certain resources or perform specific actions.

triangle-exclamation
circle-check

Missing Access Controls

The example below is based on PostSwigger's Multi-step process with no access control on one steparrow-up-right lab.

We first need to log into the app as administrator and understand how the process of elevating user privileges work (Figure 1).

Figure 1: Elevating carlos's privileges using the administrator account.

Next, we can perform some A-B testing to see if proper access controls are in place for all the steps. That is, logging as a non-privileges user (wiener) and repeating the same requests we did as administrator (Figure 2).

Figure 2: Performing A-B testing in the user upgrade process.

The above process is outlined below using a Delete instead of an Upgrade functionality (Figure 3).

Figure 3: The process for testing access controls (image taken from herearrow-up-right).

Referer-based Access Controls

The example below is based on PostSwigger's Referer-based access controlarrow-up-right lab.

As before, we will first try to understand how the upgrade functionality works (Figure 4).

Figure 4: Stepping through the upgrade functionailty as administrator.

Both of the steps seems to have proper access control in place (Figure 5).

Figure 5: Performing A-B testing in the user upgrade process.

We can try tampering with the Referer header and see if we are able to bypass the current access controls (Figure 6).

Figure 6: Testing for Referer-based access controls.

Last updated