-
-
Notifications
You must be signed in to change notification settings - Fork 12
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
ed5d68b
commit c7408c9
Showing
17 changed files
with
428 additions
and
12 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,8 @@ | ||
{ | ||
"graphql-introspection": { | ||
"title": "GraphQL Introspection Enabled" | ||
}, | ||
"http-method-allow-override": { | ||
"title": "HTTP Method Override Enabled" | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
76 changes: 76 additions & 0 deletions
76
docs/vulnerabilities/security-misconfiguration/http-method-allow-override.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,76 @@ | ||
--- | ||
description: HTTP Method Override is a feature that allows clients to use HTTP methods other than GET and POST to perform actions on the server. It can be used to override the default behavior of the server and execute custom actions, but it can also be used by attackers to bypass security controls and perform unauthorized actions. | ||
--- | ||
|
||
# HTTP Method Override Enabled | ||
|
||
<table> | ||
<tr> | ||
<th>Severity</th> | ||
<td>Low - High</td> | ||
</tr> | ||
<tr> | ||
<th>CVEs</th> | ||
<td> | ||
<ul> | ||
<li><a href="https://www.cve.org/CVERecord?id=CVE-2023-30845">CVE-2023-30845</a></li> | ||
<li><a href="https://www.cve.org/CVERecord?id=CVE-2023-29003">CVE-2023-29003</a></li> | ||
<li><a href="https://www.cve.org/CVERecord?id=CVE-2019-19326">CVE-2019-19326</a></li> | ||
</ul> | ||
</td> | ||
</tr> | ||
<tr> | ||
<th>Classifications</th> | ||
<td> | ||
<ul> | ||
<a href="https://cwe.mitre.org/data/definitions/287.html">CWE-287: Improper Authentication</a> | ||
</ul> | ||
</td> | ||
</tr> | ||
<tr> | ||
<th>OWASP Category</th> | ||
<td> | ||
<a href="https://owasp.org/API-Security/editions/2023/en/0xa8-security-misconfiguration/">OWASP API8:2023 Security Misconfiguration</a> | ||
</td> | ||
</tr> | ||
</table> | ||
|
||
HTTP Method Override is a feature that allows clients to use HTTP methods other than GET and POST to perform actions on the server. It can be used to override the default behavior of the server and execute custom actions, but it can also be used by attackers to bypass security controls and perform unauthorized actions. | ||
|
||
## What is the impact? | ||
|
||
Attackers can exploit this feature to bypass security controls and perform unauthorized actions on the server. Some of the common attacks that can be performed using HTTP Method Override include: | ||
- CSRF attacks | ||
- Bypassing authentication | ||
- Bypassing access controls | ||
|
||
## How to test? | ||
|
||
If you want to test only the "HTTP Method Allow Override Enabled" issues, you can use the following command: | ||
|
||
<Tabs items={['cURL', 'OpenAPI', 'GraphQL']}> | ||
<Tabs.Tab> | ||
```bash copy | ||
echo "vulnapi scan curl [url] --scans misconfiguration.http_method_override | ||
``` | ||
</Tabs.Tab> | ||
<Tabs.Tab> | ||
```bash copy | ||
vulnapi scan openapi [OpenAPI_Path_Or_URL] --scans misconfiguration.http_method_override | ||
``` | ||
</Tabs.Tab> | ||
<Tabs.Tab> | ||
```bash copy | ||
vulnapi scan graphql --scans misconfiguration.http_method_override [url] | ||
``` | ||
</Tabs.Tab> | ||
</Tabs> | ||
## How to remediate? | ||
To remediate this issue, you should disable the HTTP Method Override feature on the server. You can do this by configuring the server to only accept the standard HTTP methods (GET, POST, PUT, DELETE, etc.) and reject any other methods that are not explicitly allowed. | ||
## References | ||
- [X-HTTP-Method](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-odata/bdbabfa6-8c4a-4741-85a9-8d93ffd66c41) | ||
- [X-HTTP-Method-Override] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.