You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| API Specific : Exploitability **3**| Prevalence **2** : Detectability **2**| Technical **2** : Business Specific |
7
-
| Exploitation of excessive data exposure is simple, and is usually done by using different clients while sniffing the traffic they produce to analyze the API responses and look for sensitive data exposure that should not be returned to the user. | APIs rely on clients to perform the data filtering. Since APIs are used as data sources, sometimes developers try to implement them in a generic way without thinking about the sensitivity of the exposed data. Automatic tools usually can’t detect this type of vulnerability because it’s hard to differentiate between legitimate data returned from the API and sensitive data that should not be returned without a deep understanding of the application. | Excessive Data Exposure commonly leads to exposure of sensitive data. |
7
+
| Exploitation of Excessive Data Exposure is simple, and is usually done by sniffing the traffic to analyze the API responses looking for sensitive data exposure that should not be returned to the user. | APIs rely on clients to perform the data filtering. Since APIs are used as data sources, sometimes developers try to implement them in a generic way without thinking about the sensitivity of the exposed data. Automatic tools usually can’t detect this type of vulnerability because it’s hard to differentiate between legitimate data returned from the API and sensitive data that should not be returned without a deep understanding of the application. | Excessive Data Exposure commonly leads to exposure of sensitive data. |
8
8
9
9
## Is the API Vulnerable?
10
10
11
-
There are two types of Excessive Data Exposure:
12
-
13
-
***Client Side Data Filtering**: The API returns sensitive data to the client
14
-
by design. This data is usually filtered on the client side before being
15
-
presented to the user. An attacker can easily sniff the traffic and see the
16
-
sensitive data.
17
-
***Filter Manipulation**: the API performs data filtering in an unsafe manner
18
-
based on filters from the client. An attacker can send malicious filters
19
-
causing the API to return sensitive data they should not be exposed to.
11
+
The API returns sensitive data to the client by design. This data is usually
12
+
filtered on the client side before being presented to the user. An attacker can
13
+
easily sniff the traffic and see the sensitive data.
20
14
21
15
## Example Attack Scenarios
22
16
@@ -31,22 +25,31 @@ object.
31
25
32
26
### Scenario #2
33
27
34
-
An open source team chat solution provides the endpoint `/api/v1/users.list`
35
-
which supports two parameters: `query` and `fields`. Using a regular user
36
-
account and manipulating both parameters an attacker can enumerate admin
37
-
accounts, exposing sensitive information such as the password reset token:
0 commit comments