flawopen.com/Simulators/HTTP Request Smuggling

Web Infrastructure / HTTP Parser Desync

इंटरैक्टिव HTTP रिक्वेस्ट स्मगलिंग सिम्युलेटर

प्रॉक्सी-बैकएंड सॉकेट कनेक्शन, चंक्ड इनकोडिंग सीमा और रिक्वेस्ट कतार विषाक्तीकरण को चरण-दर-चरण दिखाने वाला विज़ुअल टूल।

💡 आसान भाषा में व्याख्या (ELI5)

कैशियर और रसोइए के बीच कन्वेयर बेल्ट की कल्पना करें। आप 1 बर्गर और 1 अतिरिक्त गुप्त ऑर्डर पर्ची वाला बॉक्स देते हैं। कैशियर 1 आइटम मानकर आगे भेजता है। रसोइया बर्गर निकालता है और पर्ची काउंटर पर छोड़ देता है। जब अगला ग्राहक सलाद मांगता है, तो रसोइया उसके कार्ड से आपकी गुप्त पर्ची प्रोसेस कर देता है!

Source Code Diff: Ambiguous Header Handling

UNPATCHED FLAW: PERMISSIVE DUAL HEADER EVALUATION
// Vulnerable HTTP parser logic
int http_parser_execute(http_parser *parser, const char *data, size_t len) {
    if (parser->flags & F_CONTENT_LENGTH && parser->flags & F_CHUNKED) {
        parser->body_read_mode = READ_CHUNKED; 
        return PARSE_CONTINUE;
    }
}
HARDENED PATCH: STRICT RFC 9112 REJECTION & CONNECTION CLOSE
// Hardened RFC 9112 section 6.1 compliant parser
int http_parser_execute(http_parser *parser, const char *data, size_t len) {
    if ((parser->flags & F_CONTENT_LENGTH) && (parser->flags & F_CHUNKED)) {
        parser->status_code = 400;
        parser->connection_close = 1;
        return PARSE_ERROR_INVALID_HEADER;
    }
}
← इंटरैक्टिव भेद्यता सिमुलेटर CVE-2024-27983 Node.js Teardown →