Http-Desync-Guardian - Analyze HTTP Requests To Minimize Risks Of HTTP Desync Attacks (Precursor For HTTP Request Smuggling/Splitting)
http://www.kitploit.com/2022/01/http-desync-guardian-analyze-http.html
___________________________
@hacking_Attack
@Hacking_Video
http://www.kitploit.com/2022/01/http-desync-guardian-analyze-http.html
___________________________
@hacking_Attack
@Hacking_Video
KitPloit - PenTest & Hacking Tools
Http-Desync-Guardian - Analyze HTTP Requests To Minimize Risks Of HTTP Desync Attacks (Precursor For HTTP Request Smuggling/Splitting)
Overview HTTP/1.1 went through a long evolution since 1991 to 2014: HTTP/0.9 (https://www.w3.org/Protocols/HTTP/AsImplemented.html) – 1991 HTTP/1.0 (https://tools.ietf.org/html/rfc1945) – 1996 HTTP/1.1 RFC 2068 (https://tools.ietf.org/html/rfc2068) – 1997 RFC 2616 (https://tools.ietf.org/html/rfc2616) - 1999 RFC 7230 (https://tools.ietf.org/html/rfc7230) - 2014 This means there is a variety of servers and clients, which might have different views on request boundaries, creating opportunities for desynchronization attacks (a.k.a. HTTP Desync). It might seem simple to follow the latest RFC recommendations. However, for large scale systems that have been there for a while, it may come with unacceptable availability impact. http_desync_guardian library (https://www.kitploit.com/search/label/Library) is designed to analyze HTTP requests to prevent HTTP Desync attacks, balancing security and availability. It classifies requests into different categories (https://github.com/aws/http-desync-guardian/blob/main/docs#request-classification) and provides recommendations on how each tier should be handled. It can be used either for raw HTTP request headers (https://www.kitploit.com/search/label/Headers) or already parsed by an HTTP engine. Consumers may configure logging (https://www.kitploit.com/search/label/Logging) and metrics collection. Logging is rate limited and all user data is obfuscated. If you think you might have found a security impacting issue, please follow our Security Notification Process. (https://github.com/aws/http-desync-guardian#security-issue-notifications)
Priorities Uniformity across services is key. This means request classification, logging, and metrics must happen under the hood and with minimally available settings (e.g., such as log file destination). Focus on reviewability. The test suite must require no knowledge about the library/programming languages but only about HTTP protocol. So it's easy to review, contribute, and re-use. Security is efficient when it's easy for users. Our goal is to make integration of the library as simple as possible. Ultralight. The overhead must be minimal and impose no tangible tax on request handling (see benchmarks (https://github.com/aws/http-desync-guardian/blob/main/benches)). Supported HTTP versions The main focus of this library is HTTP/1.1. See tests (https://github.com/aws/http-desync-guardian/blob/main/tests) for all covered cases. Predecessors of HTTP/1.1 don't support connection re-use which limits opportunities for HTTP Desync, however some proxies may upgrade such requests to HTTP/1.1 and re-use backend connections, which may allow to craft malicious HTTP/1.0 requests. That's why they are analyzed using the same criteria as HTTP/1.1. For other protocol versions have the following exceptions: HTTP/0.9 requests are never considered Compliant, but are classified as Acceptable. If any of Content-Length/Transfer-Encoding is present then it's Ambiguous. HTTP/1.0 - the presence of Transfer-Encoding makes a request Ambiguous. HTTP/2+ is out of scope. But if your proxy downgrades HTTP/2 to HTTP/1.1, make sure the outgoing request is analyzed. See documentation (https://github.com/aws/http-desync-guardian/blob/main/docs) to learn more. Usage from C This library is designed to be primarily used from HTTP engines written in C/C++. Install cbindgen (https://github.com/eqrion/cbindgen#cbindgen-----): cargo install --force cbindgen Generate the header file: Run cbindgen --output http_desync_guardian.h --lang c for C. Run cbindgen --output http_desync_guardian.h --lang c++ for C++. Run cargo build --release. The binaries are in ./target/release/libhttp_desync_guardian.* files. Learn more: generic (https://github.com/aws/http-desync-guardian/blob/main/misc/demo-c) and Nginx (https://github.com/aws/http-desync-guardian/blob/main/misc/demo-nginx) examples. #include "http_desync_guardian.h"
/*
___________________________
@hacking_Attack
@Hacking_Video
Priorities Uniformity across services is key. This means request classification, logging, and metrics must happen under the hood and with minimally available settings (e.g., such as log file destination). Focus on reviewability. The test suite must require no knowledge about the library/programming languages but only about HTTP protocol. So it's easy to review, contribute, and re-use. Security is efficient when it's easy for users. Our goal is to make integration of the library as simple as possible. Ultralight. The overhead must be minimal and impose no tangible tax on request handling (see benchmarks (https://github.com/aws/http-desync-guardian/blob/main/benches)). Supported HTTP versions The main focus of this library is HTTP/1.1. See tests (https://github.com/aws/http-desync-guardian/blob/main/tests) for all covered cases. Predecessors of HTTP/1.1 don't support connection re-use which limits opportunities for HTTP Desync, however some proxies may upgrade such requests to HTTP/1.1 and re-use backend connections, which may allow to craft malicious HTTP/1.0 requests. That's why they are analyzed using the same criteria as HTTP/1.1. For other protocol versions have the following exceptions: HTTP/0.9 requests are never considered Compliant, but are classified as Acceptable. If any of Content-Length/Transfer-Encoding is present then it's Ambiguous. HTTP/1.0 - the presence of Transfer-Encoding makes a request Ambiguous. HTTP/2+ is out of scope. But if your proxy downgrades HTTP/2 to HTTP/1.1, make sure the outgoing request is analyzed. See documentation (https://github.com/aws/http-desync-guardian/blob/main/docs) to learn more. Usage from C This library is designed to be primarily used from HTTP engines written in C/C++. Install cbindgen (https://github.com/eqrion/cbindgen#cbindgen-----): cargo install --force cbindgen Generate the header file: Run cbindgen --output http_desync_guardian.h --lang c for C. Run cbindgen --output http_desync_guardian.h --lang c++ for C++. Run cargo build --release. The binaries are in ./target/release/libhttp_desync_guardian.* files. Learn more: generic (https://github.com/aws/http-desync-guardian/blob/main/misc/demo-c) and Nginx (https://github.com/aws/http-desync-guardian/blob/main/misc/demo-nginx) examples. #include "http_desync_guardian.h"
/*
___________________________
@hacking_Attack
@Hacking_Video
IETF Datatracker
RFC 1945: Hypertext Transfer Protocol -- HTTP/1.0
The Hypertext Transfer Protocol (HTTP) is an application-level protocol with the lightness and speed necessary for distributed, collaborative, hypermedia information systems. This memo provides information for the Internet community. This memo does not specify…
* http_engine_request_t - already parsed by the HTTP engine
*/
static int check_request(http_engine_request_t *req) {
http_desync_guardian_request_t guardian_request = construct_http_desync_guardian_from(req);
http_desync_guardian_verdict_t verdict = {0};
http_desync_guardian_analyze_request(&guardian_request, &verdict);
switch (verdict.tier) {
case REQUEST_SAFETY_TIER_COMPLIANT:
// The request is good. green light
break;
case REQUEST_SAFETY_TIER_ACCEPTABLE:
// Reject, if mode == STRICTEST
// Otherwise, OK
break;
case REQUEST_SAFETY_TIER_AMBIGUOUS:
// The request is ambiguous.
// Reject, if mode == STRICTEST
// Otherwise send it, but don't reuse both FE/BE connections.
break;
case REQUEST_SAFETY_TIER_SEVERE:
// Send 400 and close the FE connection.
break;
default:
// unreachable code
abort();
}
} Usage from Rust See benchmarks (https://github.com/aws/http-desync-guardian/blob/main/benches/benchmarks.rs) as an example of usage from Rust. Security issue notifications If you discover (https://www.kitploit.com/search/label/Discover) a potential security issue in http_desync_guardian we ask that you notify AWS Security via our vulnerability (http://aws.amazon.com/security/vulnerability-reporting/)reporting (https://www.kitploit.com/search/label/Reporting) page. Please do not create a public github issue. Security See CONTRIBUTING (https://github.com/aws/http-desync-guardian/blob/main/CONTRIBUTING.md#contributing-guidelines) for more information.
Download Http-Desync-Guardian (https://github.com/aws/http-desync-guardian)
___________________________
@hacking_Attack
@Hacking_Video
*/
static int check_request(http_engine_request_t *req) {
http_desync_guardian_request_t guardian_request = construct_http_desync_guardian_from(req);
http_desync_guardian_verdict_t verdict = {0};
http_desync_guardian_analyze_request(&guardian_request, &verdict);
switch (verdict.tier) {
case REQUEST_SAFETY_TIER_COMPLIANT:
// The request is good. green light
break;
case REQUEST_SAFETY_TIER_ACCEPTABLE:
// Reject, if mode == STRICTEST
// Otherwise, OK
break;
case REQUEST_SAFETY_TIER_AMBIGUOUS:
// The request is ambiguous.
// Reject, if mode == STRICTEST
// Otherwise send it, but don't reuse both FE/BE connections.
break;
case REQUEST_SAFETY_TIER_SEVERE:
// Send 400 and close the FE connection.
break;
default:
// unreachable code
abort();
}
} Usage from Rust See benchmarks (https://github.com/aws/http-desync-guardian/blob/main/benches/benchmarks.rs) as an example of usage from Rust. Security issue notifications If you discover (https://www.kitploit.com/search/label/Discover) a potential security issue in http_desync_guardian we ask that you notify AWS Security via our vulnerability (http://aws.amazon.com/security/vulnerability-reporting/)reporting (https://www.kitploit.com/search/label/Reporting) page. Please do not create a public github issue. Security See CONTRIBUTING (https://github.com/aws/http-desync-guardian/blob/main/CONTRIBUTING.md#contributing-guidelines) for more information.
Download Http-Desync-Guardian (https://github.com/aws/http-desync-guardian)
___________________________
@hacking_Attack
@Hacking_Video
GitHub
http-desync-guardian/benchmarks.rs at main · aws/http-desync-guardian
Analyze HTTP requests to minimize risks of HTTP Desync attacks (precursor for HTTP request smuggling/splitting). - http-desync-guardian/benchmarks.rs at main · aws/http-desync-guardian
Баг Баунти — заработай до 100,000 PTP
https://medium.com/@Smartn/%D0%B1%D0%B0%D0%B3-%D0%B1%D0%B0%D1%83%D0%BD%D1%82%D0%B8-%D0%B7%D0%B0%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D0%B9-%D0%B4%D0%BE-100-000-ptp-c555d49bf311?source=rss------bug_bounty-5
___________________________
@hacking_Attack
@Hacking_Video
https://medium.com/@Smartn/%D0%B1%D0%B0%D0%B3-%D0%B1%D0%B0%D1%83%D0%BD%D1%82%D0%B8-%D0%B7%D0%B0%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D0%B9-%D0%B4%D0%BE-100-000-ptp-c555d49bf311?source=rss------bug_bounty-5
___________________________
@hacking_Attack
@Hacking_Video
Medium
Баг Баунти — заработай до 100,000 PTP
(на момент написания статьи 100k PTP > $1м)
(на момент написания статьи 100k PTP > $1м)Continue reading on Medium » (https://medium.com/@Smartn/%D0%B1%D0%B0%D0%B3-%D0%B1%D0%B0%D1%83%D0%BD%D1%82%D0%B8-%D0%B7%D0%B0%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D0%B9-%D0%B4%D0%BE-100-000-ptp-c555d49bf311?source=rss------bug_bounty-5)
___________________________
@hacking_Attack
@Hacking_Video
___________________________
@hacking_Attack
@Hacking_Video
Medium
Баг Баунти — заработай до 100,000 PTP
(на момент написания статьи 100k PTP > $1м)
KitPloit - PenTest Tools!
Http-Desync-Guardian - Analyze HTTP Requests To Minimize Risks Of HTTP Desync Attacks (Precursor For HTTP Request Smuggling/Splitting)
Http-Desync-Guardian - Analyze HTTP Requests To Minimize Risks Of HTTP Desync Attacks (Precursor For HTTP Request Smuggling/Splitting)
KitPloit - PenTest & Hacking Tools
Http-Desync-Guardian - Analyze HTTP Requests To Minimize Risks Of HTTP Desync Attacks (Precursor For HTTP Request Smuggling/Splitting)
Hacking Articles Tips Tricks Videos Tutorials
Photo
Hacking on Medium
2. Sequel — Begginer/Learning Box
https://cdn-images-1.medium.com/max/1891/1*TLckn7ar_ME0Qov9A0SMSg.png
Time for the second box of the second “stage” (I guess) of the Starting Point at HackTheBox, if by any chance someone is wondering where…
Continue reading on Medium »
2. Sequel — Begginer/Learning Box
https://cdn-images-1.medium.com/max/1891/1*TLckn7ar_ME0Qov9A0SMSg.png
Time for the second box of the second “stage” (I guess) of the Starting Point at HackTheBox, if by any chance someone is wondering where…
Continue reading on Medium »
Hacking Articles Tips Tricks Videos Tutorials
Photo
Hacking on Medium
3. Crocodile — Beginner/Learning Box
https://cdn-images-1.medium.com/max/664/1*s4g5VFrbY8fLiCw9I64BXw.png
I had a hard time spelling the name.
Continue reading on Medium »
3. Crocodile — Beginner/Learning Box
https://cdn-images-1.medium.com/max/664/1*s4g5VFrbY8fLiCw9I64BXw.png
I had a hard time spelling the name.
Continue reading on Medium »
Hacking Articles Tips Tricks Videos Tutorials
Photo
Hacking on Medium
Kioptrix Level 4 — VulnHub
https://cdn-images-1.medium.com/max/700/0*giJTVM6-PdyPcCCz.jpg
Introduction: Kioptrix 1.3 — VulnHub
Continue reading on Medium »
Kioptrix Level 4 — VulnHub
https://cdn-images-1.medium.com/max/700/0*giJTVM6-PdyPcCCz.jpg
Introduction: Kioptrix 1.3 — VulnHub
Continue reading on Medium »
Hacking Articles Tips Tricks Videos Tutorials
Photo
Hacking on Medium
Siz de Fonlarınızı Koruyabilirsiniz “Fonlarınızı Korumanın Altın Anahtarları”
https://cdn-images-1.medium.com/max/1200/1*npv_qI8yiKtbuUaHdL6J8A.jpeg
Kripto piyasası, son yıllardaki tüm zamanların en yüksek seviyelerini ve şimdiye kadar bilinen en saldırgan hacklerden bazılarını yaşadı…
Continue reading on Medium »
Siz de Fonlarınızı Koruyabilirsiniz “Fonlarınızı Korumanın Altın Anahtarları”
https://cdn-images-1.medium.com/max/1200/1*npv_qI8yiKtbuUaHdL6J8A.jpeg
Kripto piyasası, son yıllardaki tüm zamanların en yüksek seviyelerini ve şimdiye kadar bilinen en saldırgan hacklerden bazılarını yaşadı…
Continue reading on Medium »
Hacking Articles Tips Tricks Videos Tutorials
Photo
Hacking on Medium
Apache Log4Shell Analysis
https://cdn-images-1.medium.com/max/1200/1*1Lbp4Ubk4aLD5m8BtDaYyQ.png
The Apache Log4j vulnerability was discovered around December 10, 2021 and has been all over the internet within the past couple of weeks…
Continue reading on Medium »
Apache Log4Shell Analysis
https://cdn-images-1.medium.com/max/1200/1*1Lbp4Ubk4aLD5m8BtDaYyQ.png
The Apache Log4j vulnerability was discovered around December 10, 2021 and has been all over the internet within the past couple of weeks…
Continue reading on Medium »
Hacking Articles Tips Tricks Videos Tutorials
Photo
Hacking on Medium
Europol cierra VPNLab, el servicio VPN favorito de los ciberdelincuentes
https://cdn-images-1.medium.com/max/1647/0*-fFpRgzTF7i7_XMq
PUBLICADO EN 19 ENERO, 2022POR EHACKING
Continue reading on Medium »
Europol cierra VPNLab, el servicio VPN favorito de los ciberdelincuentes
https://cdn-images-1.medium.com/max/1647/0*-fFpRgzTF7i7_XMq
PUBLICADO EN 19 ENERO, 2022POR EHACKING
Continue reading on Medium »