Exploiting API Authorization Flashcards

1
Q

What is Broken Object Level Authorization?

A

It’s a authorization vulnerability that happens when a user can access other user’s resources.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are the three needed aspects for a successful BOLA exploitation?

A
  1. Resource ID.
  2. Requests that access resources.
  3. Missing or flawed access controls.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is the A-B testing technique? Explain its steps.

A

It’s a very effective way for testing and finding authorization weaknesses. The steps to perform it are:
1. Create an UserA account
2. Use the API and find requests that involve resource IDs
3. Document this requests and send it to BurpSuite’s repeater tab
4. Create an UserB account
5. Replace the UserA token by UserB’s token and send the requests to see if you can access UserA’s resources while logged in as UserB

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

True or false: When hunting for BFLA you should focus only on GET requests.

A

False. Although you should look for GET requests that have parameters, you should focus on POST, PUT and DELETE request because these methods are usually the ones used to alter resources.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is BFLA?

A

Broken Function Level Authorization is an authorization vulnerability that happens when a user can perform actions that affect other user’s resources.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are the two types of requests vulnerable to BFLA?

A

Lateral and escalated. Lateral is a request that performs actions of users that have the same level of privilege. Escalated is a request that performs actions that are of a higher role or level of privilege.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are the three needed aspects that a request must have to be vulnerable to BFLA?

A
  1. Resource ID.
  2. Perform authorized actions such as altering a resource.
  3. Missing or flawed access controls.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Why do we use A-B-A testing when looking for BFLA?

A

To create a stronger PoC.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Which of the following requests would be the most interesting from an authorization testing perspective? Why?
a) GET /user/account
b) GET /user/account/details?id=11
c) GET /user/dashboard
d) POST /account/dashboard

A

Letter b. Because it involves a resource ID, in this case the user id.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly