{"uuid": "fcf66a93-da7f-477b-9a07-95f4f573dde3", "vulnerability_lookup_origin": "1a89b78e-f703-45f3-bb86-59eb712668bd", "author": "9f56dd64-161d-43a6-b9c3-555944290a09", "vulnerability": "CVE-2024-27983", "type": "published-proof-of-concept", "source": "https://t.me/poxek/4484", "content": "NodeJS DOS \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0431\u0438\u0442\u044b\u0445 HTTP/2 \u0444\u0440\u0435\u0439\u043c\u043e\u0432 (CVE-2024-27983)\n#nodejs #js #dos #http2 #CVE\n\nNode.js \u0441\u0435\u0440\u0432\u0435\u0440 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u043e\u043b\u043e\u0436\u0435\u043d \u043d\u0430 \u043b\u043e\u043f\u0430\u0442\u043a\u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043d\u0430\u0431\u043e\u0440\u0430 HTTP/2 \u0444\u0440\u0435\u0439\u043c\u043e\u0432. \u0423\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u0435\u0442, \u043a\u043e\u0433\u0434\u0430 \u0437\u043b\u043e\u0443\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u0438\u043a \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 HTTP/2 \u0444\u0440\u0435\u0439\u043c\u044b, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0435 \u0444\u0440\u0435\u0439\u043c\u044b CONTINUATION, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0432\u043d\u0435\u0437\u0430\u043f\u043d\u043e \u0437\u0430\u0432\u0435\u0440\u0448\u0430\u0435\u0442 TCP-\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435. \u042d\u0442\u043e \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0433\u043e\u043d\u043a\u0438 (race condition) \u0432 \u043f\u0430\u043c\u044f\u0442\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 nghttp2, \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044f \u043d\u0435\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u043f\u0430\u043c\u044f\u0442\u0438. \u041a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u0435\u0442 \u043f\u0440\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435 HTTP \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u043e\u0432 \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f, \u0447\u0442\u043e \u043f\u0440\u043e\u0432\u043e\u0446\u0438\u0440\u0443\u0435\u0442 \u0441\u0431\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u0441\u0435\u0441\u0441\u0438\u0438 HTTP/2.\n\n\ud83d\ude35 \u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u043a\u0430\u0441\u0430\u0435\u0442\u0441\u044f \u0432\u0441\u0435\u0445 \u0432\u0435\u0440\u0441\u0438\u0439 Node.js: 18.x, 20.x \u0438 21.x.\n\n\ud83d\udda5 Security Release\n\n\ud83d\udcf1 Github PoC (\u0430 \u0442\u0430\u043a\u0436\u0435 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445 \u0432\u044b\u043b\u043e\u0436\u0438\u043b \u0441\u0431\u0438\u043b\u0434\u0436\u0435\u043d\u043d\u044b\u0439 \u044d\u043a\u0441\u043f\u043b\u043e\u0439\u0442)\n\n\ud83d\ude08 HackerOne \u041e\u0442\u0447\u0451\u0442\n\n\u0422\u0430\u043a\u0436\u0435 \u0435\u0441\u0442\u044c \u043b\u0430\u0431\u0430, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0434\u043d\u044f\u0442\u044c \u0441\u0435\u0431\u0435 \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0435 \u0438 \u043f\u043e\u0442\u0440\u0435\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f\n\ud83d\udcf1 Github \u041b\u0430\u0431\u0430\n\n\u0423\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0443 \u0432\u0430\u0441 \u0441\u0442\u043e\u0438\u0442 docker. \u0417\u0430\u043f\u0443\u0441\u043a:\ngit clone https://github.com/lirantal/CVE-2024-27983-nodejs-http2.git ; cd CVE-2024-27983-nodejs-http2 ; chmod u+x ./start.sh ;./start.sh\n\n\u27a1\ufe0f\u0421\u043e\u0432\u0435\u0442\u0443\u044e \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043f\u0440\u043e HTTP/2 CONTINUATION Flood\n\n\ud83c\udf1a @poxek | \ud83d\udcfa Youtube | \ud83d\udcfa RuTube | \ud83d\udcfa VK \u0412\u0438\u0434\u0435\u043e | \ud83c\udf1a \u041c\u0430\u0433\u0430\u0437\u0438\u043d \u043c\u0435\u0440\u0447\u0430", "creation_timestamp": "2024-10-20T09:58:21.000000Z"}