Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

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

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
http2-rst-stream-attacker — अत्यधिक कॉन्फ़िगरेबल उपकरण, CVE-2023-44487 के विरुद्ध सर्वर की कमजोरी की जांच करने के लिए तेजी से HEADERS और RST_STREAM फ्रेम भेजकर और सर्वर की प्रतिक्रियाओं का दस्तावेजीकरण करके। | Kitploit
उपकरण/GitHubGitHub/ndrscodes/http2-rst-stream-attacker
भेद्यता विश्लेषणशोषणवेब सुरक्षापेनिट्रेशन टेस्टिंग
GitHubndrscodes/http2-rst-stream-attacker

http2-rst-stream-attacker

अत्यधिक कॉन्फ़िगरेबल उपकरण, CVE-2023-44487 के विरुद्ध सर्वर की कमजोरी की जांच करने के लिए तेजी से HEADERS और RST_STREAM फ्रेम भेजकर और सर्वर की प्रतिक्रियाओं का दस्तावेजीकरण करके।

रिपॉजिटरी देखें

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें
622 साल पहलेअभी तक समीक्षित नहीं

CVE-2023-44487 और http2-rst-stream-attacker

CVE-2023-44487

CVE-2023-44487, HTTP2 प्रोटोकॉल के विरुद्ध एक शोषण है। HTTP2 में, डेटा के अनुरोध HEADERS फ्रेम भेजकर शुरू किए जाते हैं। यह फ्रेम प्राप्त करने के बाद, सर्वर आपके अनुरोध को प्रोसेस करना शुरू करेगा, बाद में सभी डेटा ट्रांसमिट होने तक DATA फ्रेम भेजेगा। HTTP2 ने RST_STREAM फ्रेम भी निर्दिष्ट किया है, जिसका उपयोग किसी भी बिंदु पर स्ट्रीम को बंद करने के लिए किया जा सकता है। हमलों को रोकने के लिए, सर्वर आमतौर पर एक साथ खुली स्ट्रीम की अधिकतम संख्या को सीमित करते हैं (डिफ़ॉल्ट रूप से 100 तक)। यदि ग्राहक वास्तव में सभी संसाधनों के खपत होने की प्रतीक्षा करते हैं, तो यह सीमा शायद ही कभी पहुँची जाती है। हमला एक सरल कारण से काम करता है: एक क्लाइंट किसी भी बिंदु पर RST_STREAM फ्रेम भेज सकता है। RST_STREAM फ्रेम एक स्ट्रीम को बंद कर देता है, और बंद स्ट्रीम को समवर्ती स्ट्रीम के रूप में नहीं गिना जाता है। इसका मतलब है कि एक क्लाइंट अनुरोध भेजने के तुरंत बाद कनेक्शन बंद करके, इस सीमा को कभी भी हिट किए बिना तेज़ी से अनुरोध भेज सकता है। हमला किए जा रहे सर्वर, कुछ मामलों में, अभी भी डेटा लोड करना शुरू करेगा, जिससे अत्यधिक लोड उत्पन्न होगा।

यह उपकरण इस हमले के लिए सर्वर की भेद्यता की जांच करने का लक्ष्य रखता है। यह एक या अधिक समवर्ती HTTP2 कनेक्शन स्थापित करता है और फिर निर्दिष्ट संख्या में HEADER फ्रेम भेजता है, उसके बाद RST_STREAM फ्रेम भेजता है।

यह कई अन्य कॉन्फ़िगरेशन विकल्प भी प्रदान करता है, जैसे HEADERS और RST_STREAM फ्रेम के बीच देरी, खोलने के लिए स्ट्रीम की संख्या, प्रति स्ट्रीम भेजे जाने वाले फ्रेम की मात्रा, इत्यादि। हमला पूरा होने के बाद, यह एक सारांश प्रिंट करता है जिसमें प्राप्त फ्रेम की संख्या, साथ ही त्रुटियों और प्राप्त GOAWAY फ्रेम की संख्या के बारे में जानकारी होती है। यह आपको यह पहचानने में सहायता कर सकता है कि आपकी सेवाएँ CVE-2023-44487 के प्रति संवेदनशील हैं या नहीं।

चलाना

अभी के लिए, यह उपकरण केवल स्रोत कोड के रूप में वितरित किया जाता है, जिसका अर्थ है कि go install आवश्यक है। उपकरण को go run main.go <options> चलाकर निष्पादित किया जा सकता है। एक python स्क्रिप्ट भी है जिसका उपयोग monitor.log फ़ाइल में लिखी गई विलंबता जानकारी को प्लॉट करने के लिए किया जा सकता है।

उपकरण (Tooling)

इसके अलावा, मैंने अधिक सटीक और व्यापक माप के लिए एक नया python उपकरण (tooling) बनाया है। tooling फ़ोल्डर में स्थित runner.py फ़ाइल आपके config.py (विवरण के लिए config-sample.py देखें) में परिभाषित मानों को पढ़ेगी और सभी परिभाषित डॉकर कंटेनरों के लिए सभी परीक्षण चलाएगी। यह फिर paths ऐरे में परिभाषित सभी पथों के लिए सबसे सफल परीक्षण (उच्चतम माध्यिका + मीन विलंबता) चलाएगा। यह प्रत्येक चलाए गए परीक्षण के लिए प्लॉट और लॉग फ़ाइलें आउटपुट करेगा। यह उपकरण अभी भी विकास के अधीन है। मैंने इसे केवल इसलिए बनाया क्योंकि मैं अपने शोध पत्र के लिए ये सभी परीक्षण मैन्युअल रूप से चलाने में बहुत आलसी था। बेझिझक इसे साफ करने या वास्तव में हमारे उपयोग के मामले से अधिक के लिए उपयोगी बनाने के लिए PR सबमिट करें।

CLI फ़्लैग्स

वर्तमान में, निम्नलिखित CLI विकल्प लागू किए गए हैं:

उदाहरण आउटपुट

उपकरण बहुत सारी डीबग जानकारी, साथ ही एक सारांश प्रिंट करेगा। डीबग जानकारी में कनेक्शन स्थापित करने के तरीके और वर्तमान प्रगति तथा वर्तमान में भेजे जा रहे फ्रेम के प्रकार के बारे में जानकारी होती है।

सारांश कुछ इस प्रकार दिखेगा (आपके कॉन्फ़िगरेशन पर निर्भर करता है)

root@kitploit:~
####################SUMMARY####################
Packet types received:
	PING: 2
	HEADERS: 12
	SETTINGS: 0
	DATA: 11
	GOAWAY: 3
	RSTSTREAM: 0
	WINDOWUPDATE: 0
	UNKNOWN: 0
Attack ending reasons (per receiving thread):
	GoAway events: 3
	Timeout events: 0
	Error events: 0
Summary for connection 2
	PING: 1
	HEADERS: 9
	SETTINGS: 0
	DATA: 6
	GOAWAY: 1
	RSTSTREAM: 0
	WINDOWUPDATE: 0
	UNKNOWN: 0
	Reason for stopping to listen for more packets: GoAway - the server responded as expected.
Summary for connection 1
	PING: 1
	HEADERS: 3
	SETTINGS: 0
	DATA: 5
	GOAWAY: 1
	RSTSTREAM: 0
	WINDOWUPDATE: 0
	UNKNOWN: 0
	Reason for stopping to listen for more packets: GoAway - the server responded as expected.
Summary for connection 0
	PING: 0
	HEADERS: 0
	SETTINGS: 0
	DATA: 0
	GOAWAY: 1
	RSTSTREAM: 0
	WINDOWUPDATE: 0
	UNKNOWN: 0
	Reason for stopping to listen for more packets: GoAway - the server responded as expected.

यदि आपको लगता है कि अन्य आँकड़े एकत्र करने की आवश्यकता है - तो मुझसे संपर्क करने या एक मुद्दा (issue) बनाने में संकोच न करें!

कार्य सूची (TODO)

  • इस अनुरोध के लिए HEADERS भेजने और पहला फ्रेम प्राप्त करने के बीच औसत विलंब की गणना करें
  • HEADERS भेजने और GOAWAY फ्रेम प्राप्त करने के बीच औसत विलंब की गणना करें, यदि कोई हो
  • उन कनेक्शनों का प्रतिशत गणना करें जिनका सर्वर ने सही ढंग से उत्तर दिया
  • उन स्ट्रीम का प्रतिशत गणना करें जिनका सर्वर ने सही ढंग से उत्तर दिया (प्रति कनेक्शन और कुल)
  • सारांश में भेजे गए पैकेटों की मात्रा शामिल करें

अस्वीकरण

यह उपकरण केवल शोध उद्देश्यों के लिए है। इसका उद्देश्य आपके स्वामित्व या प्रबंधन में नहीं आने वाले सर्वरों के विरुद्ध हमले चलाना नहीं है। मैं प्रदान किए गए आँकड़ों की सटीकता, न ही सर्वरों और सेवाओं के लिए हमलों और उनके परिणामों की कोई जिम्मेदारी लेता हूँ।

टूल डाउनलोड करें
FlagDefaultMeaning
frames1किसी भी स्ट्रीम पर भेजे जाने वाले HEADERS और RST_STREAM फ्रेम की संख्या
connections1हमला चलाने के लिए TLS कनेक्शनों की संख्या (समवर्ती)
consecutiveSends1RST_STREAM फ्रेम भेजने से पहले भेजे जाने वाले HEADERS फ्रेम की संख्या (प्रति प्रवाह)
connectAttempts1लगातार कनेक्शनों की संख्या जिन पर परीक्षण चलाना है (प्रति कनेक्ट-रूटीन)
delay0HEADERS और RST_STREAM फ्रेम भेजने के बीच प्रतीक्षा का समय (ms में)
ignoreGoAwayfalseयदि true है, तो GOAWAY स्ट्रीम प्राप्त करने वाली रूटीन को समाप्त नहीं करेंगी। इसके बजाय, यह तब तक प्रतीक्षा करेगी जब तक 10 सेकंड से अधिक समय तक कोई फ्रेम प्राप्त न हो।
monitorfalseप्रदर्शन निगरानी सक्षम करें
monitorDelay100प्रतिक्रिया विलंबता के परीक्षण के बीच प्रतीक्षा का समय (ms में)
monitorLog./monitor.logमॉनिटर विलंब लॉग लिखने के लिए फ़ाइल
routines1हमला करने के लिए स्ट्रीम की संख्या
skipValidationtrueयदि true है, तो सर्वर प्रमाणपत्र सत्यापित नहीं किया जाएगा (यह डिफ़ॉल्ट है - हम सुरक्षा की परवाह नहीं करते क्योंकि हम वैसे भी हमलावर हैं)
timeout1000नए फ्रेम की प्रतीक्षा करने का समय, इससे पहले कि कनेक्शन प्रयास को अमान्य मानकर रोक दिया जाए
urlhttps://localhost:433/हमला चलाने के लिए URL