
DNS-आधारित डेटा एक्सफ़िल्ट्रेशन परीक्षण उपकरण जिसमें द्विदिश स्थानांतरण, वेब UI, और सीमित वातावरणों में ब्लाइंड RCE/XXE भेद्यताओं का पता लगाने के लिए क्लाइंट स्क्रिप्ट शामिल है।
DNS अनुरोध का request.bin
DNSBin एक सरल उपकरण है जो DNS के माध्यम से डेटा एक्सफ़िलट्रेशन का परीक्षण करने और RCE या XXE जैसी कमजोरियों का परीक्षण करने में मदद करता है, जब वातावरण में महत्वपूर्ण बाधाएं हों। परियोजना दो भागों में है, पहला वेब सर्वर और उसके घटक हैं। यह एक बुनियादी वेब UI प्रदान करता है, अधिकांश मामलों में आपको इससे अधिक की आवश्यकता नहीं होगी। क्लाइंट भाग एक पायथन स्क्रिप्ट प्रदान करता है जो वेब सेवा का उपयोग करके DNS के माध्यम से दोनों दिशाओं में डेटा स्थानांतरित करने की अनुमति देता है।
डेमो सर्वर के लिए मेरे पास वर्तमान DNS सेटअप निम्नलिखित है। कृपया ध्यान दें कि मैंने यह परीक्षण और त्रुटि के साथ किया है, इसलिए सेटअप अत्यधिक जटिल हो सकता है या इसमें समस्याएं हो सकती हैं। यदि आप अधिक जानकार हैं, तो बेझिझक एक मुद्दा खोलें।
DNS रिसीवर और WebSocket एंडपॉइंट को Node.JS मॉड्यूल "forever" के साथ प्रारंभ करने की अत्यधिक अनुशंसा की जाती है।
forever start index.js
फ्रंटएंड के लिए, फ़ाइल "index.html" को आपकी पसंद के वेबसर्वर पर होस्ट किया जा सकता है। सुनिश्चित करें कि WebSocket URL आपके सर्वर की ओर इंगित करता है।
क्लाइंट स्क्रिप्ट के लिए दोनों सिरों पर "dnspython" स्थापित होना आवश्यक है। चाहे आप डेटा भेज रहे हों या प्राप्त कर रहे हों, आपको पहले प्रतिबंधित क्षेत्र के बाहर की मशीन पर स्क्रिप्ट शुरू करनी होगी। स्क्रिप्ट आपको एक अद्वितीय टोकन प्रदान करेगी जिसे आपको प्रतिबंधित क्षेत्र के अंदर की मशीन पर स्क्रिप्ट चलाते समय पास करना होगा।
बाहरी मशीन
echo test12345 | python main.py -f- -d out -t-
अंदर की मशीन
python main.py -f- -d in -t TOKEN_THE_FIRST_COMMAND_GAVE_YOU
बाहरी मशीन
python main.py -f- -d in -t-
अंदर की मशीन
echo test12345 | python main.py -f- -d out -t TOKEN_THE_FIRST_COMMAND_GAVE_YOU