
हैकिंग/पेंटेस्टिंग के लिए सर्वश्रेष्ठ WinRM शेल
हैकिंग/पेंटेस्टिंग के लिए अंतिम WinRM शेल

यह शेल हैकिंग/पेंटेस्टिंग के लिए अंतिम WinRM शेल है।
WinRM (Windows Remote Management) WS-Management प्रोटोकॉल का Microsoft कार्यान्वयन है। यह एक मानक SOAP-आधारित प्रोटोकॉल है जो विभिन्न विक्रेताओं के हार्डवेयर और ऑपरेटिंग सिस्टम को इंटरऑपरेट करने की अनुमति देता है। Microsoft ने इसे अपने ऑपरेटिंग सिस्टम में शामिल किया ताकि सिस्टम एडमिनिस्ट्रेटरों का जीवन आसान हो सके।
इस प्रोग्राम का उपयोग किसी भी Microsoft Windows सर्वर पर किया जा सकता है जिसमें यह सुविधा सक्षम हो (आमतौर पर पोर्ट 5985 पर), बेशक केवल तभी जब आपके पास इसका उपयोग करने के लिए क्रेडेंशियल और अनुमतियाँ हों। इसलिए हम कह सकते हैं कि इसका उपयोग पोस्ट-एक्सप्लॉइटेशन हैकिंग/पेंटेस्टिंग चरण में किया जा सकता है। इस प्रोग्राम का उद्देश्य हैकिंग के लिए अच्छी और उपयोग में आसान सुविधाएँ प्रदान करना है। इसका उपयोग सिस्टम एडमिनिस्ट्रेटरों द्वारा वैध उद्देश्यों के लिए भी किया जा सकता है, लेकिन इसकी अधिकांश सुविधाएँ हैकिंग/पेंटेस्टिंग चीज़ों पर केंद्रित हैं।
यह मुख्य रूप से WinRM Ruby लाइब्रेरी पर आधारित है, जिसने अपने संस्करण 2.0 के बाद से काम करने का तरीका बदल दिया। अब WinRM प्रोटोकॉल का उपयोग करने के बजाय, यह रनस्पेस पूल को इनिशियलाइज़ करने के साथ-साथ पाइपलाइन बनाने और प्रोसेस करने के लिए PSRP (Powershell Remoting Protocol) का उपयोग कर रहा है।
Usage: evil-winrm -i IP -u USER [-s SCRIPTS_PATH] [-e EXES_PATH] [-P PORT] [-a USERAGENT] [-p PASS] [-H HASH] [-U URL] [-S] [-c PUBLIC_KEY_PATH ] [-k PRIVATE_KEY_PATH ] [-r REALM] [-K TICKET_FILE] [--spn SPN_PREFIX] [-l] -S, --ssl Enable ssl -c, --pub-key PUBLIC_KEY_PATH Local path to public key certificate -k, --priv-key PRIVATE_KEY_PATH Local path to private key certificate -r, --realm DOMAIN Kerberos auth, it has to be set also in /etc/krb5.conf file using this format -> CONTOSO.COM = { kdc = fooserver.contoso.com } -K, --ccache TICKET_FILE Path to Kerberos ticket file (ccache or kirbi format, auto-detected) -s, --scripts PS_SCRIPTS_PATH Powershell scripts local path --spn SPN_PREFIX SPN prefix for Kerberos auth (default HTTP) -e, --executables EXES_PATH C# executables local path -i, --ip IP Remote host IP or hostname. FQDN for Kerberos auth (required) -U, --url URL Remote url endpoint (default /wsman) -u, --user USER Username (required if not using kerberos) -p, --password PASS Password -H, --hash HASH NTHash -P, --port PORT Remote host port (default 5985) -a, --user-agent Specify connection user-agent (default Microsoft WinRM Client) -V, --version Show version -n, --no-colors Disable colors -N, --no-rpath-completion Disable remote path completion -l, --log Log the WinRM session -h, --help Display this help message
## आवश्यकताएँ
Ruby 2.3 या उच्चतर की आवश्यकता है। कुछ ruby gems की भी आवश्यकता होती है: `winrm >=2.3.7`, `winrm-fs >=1.3.2`, `stringio >=0.0.2`, `logger >= 1.4.3`, `fileutils >= 0.7.2`, `readline ~> 0.0.4`, `readline-ext ~> 0.2.0`।
आपकी इंस्टॉलेशन विधि (4 उपलब्ध) के आधार पर, इन्हें मैन्युअल रूप से इंस्टॉल करने की आवश्यकता हो सकती है।
एक और महत्वपूर्ण आवश्यकता, जो केवल Kerberos प्रमाणीकरण के लिए उपयोग की जाती है, नेटवर्क प्रमाणीकरण के लिए उपयोग किए जाने वाले Kerberos पैकेज को इंस्टॉल करना है।
कुछ Linux जैसे Debian-आधारित (Kali, Parrot, आदि) के लिए इसे `krb5-user` कहा जाता है। BlackArch के लिए इसे `krb5` कहा जाता है और संभवतः अन्य Linux वितरणों के लिए इसे अलग तरीके से कहा जा सकता है।
रिमोट पाथ पूर्णता सुविधा के लिए मूल `readline-ext` बाइंडिंग की आवश्यकता होती है, जो Evil-WinRM निर्भरता के रूप में स्वचालित रूप से इंस्टॉल होती है। कुछ सिस्टमों को इसे संकलित करने के लिए अतिरिक्त विकास पैकेजों की आवश्यकता होती है। अधिक जानकारी के लिए [नीचे दिया गया अनुभाग](#Remote-path-completion) देखें।
## इंस्टॉलेशन और त्वरित प्रारंभ (4 विधियाँ)
### विधि 1. सीधे ruby gem के रूप में इंस्टॉलेशन (निर्भरताएँ आपके सिस्टम पर स्वचालित रूप से इंस्टॉल होंगी)
- चरण 1. इसे इंस्टॉल करें (यह स्वचालित रूप से निर्भरताएँ इंस्टॉल करेगा): ```gem install evil-winrm```
- चरण 2. तैयार। बस इसे लॉन्च करें!```
evil-winrm -i 192.168.1.100 -u Administrator -p 'MySuperSecr3tPass123!' -s '/home/foo/ps1_scripts/' -e '/home/foo/exe_files/'
sudo gem install winrm winrm-fs stringio logger fileutils readline readline-extgit clone https://github.com/Hackplayers/evil-winrm.git### विधि 3. बंडलर का उपयोग करना (निर्भरताएँ आपके सिस्टम पर इंस्टॉल नहीं होंगी, केवल evil-winrm का उपयोग करने के लिए)
- चरण 1. बंडलर इंस्टॉल करें: `gem install bundler`
- चरण 2. रिपॉजिटरी क्लोन करें: `git clone https://github.com/Hackplayers/evil-winrm.git`
- चरण 3. बंडलर के साथ निर्भरताएँ इंस्टॉल करें: `cd evil-winrm && bundle install --path vendor/bundle`
- चरण 4. इसे बंडलर के साथ लॉन्च करें:```
bundle exec evil-winrm.rb -i 192.168.1.100 -u Administrator -p 'MySuperSecr3tPass123!' -s '/home/foo/ps1_scripts/' -e '/home/foo/exe_files/'
## दस्तावेज़ीकरण
### स्पष्ट टेक्स्ट पासवर्ड
यदि आप पासवर्ड को स्पष्ट टेक्स्ट में नहीं रखना चाहते हैं, तो आप वैकल्पिक रूप से `-p` तर्क सेट करने से बच सकते हैं और पासवर्ड प्रॉम्प्ट किया जाएगा, जिससे इसे दिखने से रोका जा सके।
### IPv6
IPv6 का उपयोग करने के लिए, पता /etc/hosts में जोड़ा जाना चाहिए। बस `-i` तर्क के बाद IP पते के बजाय पहले से सेट किया गया होस्ट नाम रखें।