WebDav

Tip

Leer en oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Leer en oefen Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Ondersteun HackTricks

Wanneer jy met ’n HTTP-server met WebDav geaktiveer werk, is dit moontlik om lêers te manipuleer as jy die regte bewyse het, wat gewoonlik deur HTTP Basic Authentication geverifieer word. Om beheer oor so ’n bediener te verkry, behels dikwels die oplaai en uitvoering van ’n webshell.

Toegang tot die WebDav-bediener vereis tipies geldige bewysstukke, met WebDav bruteforce as ’n algemene metode om dit te verkry.

Om beperkings op lêeroplaaie te oorkom, veral dié wat die uitvoering van bediener-kant skripte voorkom, kan jy:

  • Laai lêers met uitvoerbare uitbreidings direk op as dit nie beperk is nie.
  • Hernoem opgelaaide nie-uitvoerbare lêers (soos .txt) na ’n uitvoerbare uitbreiding.
  • Kopieer opgelaaide nie-uitvoerbare lêers, en verander hul uitbreiding na een wat uitvoerbaar is.

DavTest

Davtest probeer om verskeie lêers met verskillende uitbreidings op te laai en te kontroleer of die uitbreiding uitgevoer word:

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

Dit beteken nie dat .txt en .html uitbreidings uitgevoer word nie. Dit beteken dat jy toegang tot hierdie lêers kan kry deur die web.

Cadaver

Jy kan hierdie hulpmiddel gebruik om verbinding te maak met die WebDav bediener en aksies (soos oplaai, skuif of verwyder) handmatig uit te voer.

cadaver <IP>

PUT versoek

curl -T 'shell.txt' 'http://$ip'

MOVE versoek

curl -X MOVE --header 'Destination:http://$ip/shell.php' 'http://$ip/shell.txt'

IIS5/6 WebDav Kwetsbaarheid

Hierdie kwesbaarheid is baie interessant. Die WebDav laat nie toe om lêers met die uitbreiding .asp te laai of te hernoem nie. Maar jy kan dit omseil deur aan die einde van die naam “;.txt” by te voeg en die lêer sal uitgevoer word asof dit ’n .asp-lêer was (jy kan ook “.html” in plaas van “.txt” gebruik, maar VERGEET NIE die “;” nie).

Dan kan jy jou shell as ’n “.txt” lêer laai en dit kopieer/verskuif na ’n “.asp;.txt” lêer. Deur toegang tot daardie lêer via die webbediener, sal dit uitgevoer word (cadaver sal sê dat die skuifaksie nie gewerk het nie, maar dit het).

Post geloofsbriewe

As die Webdav ’n Apache-bediener gebruik het, moet jy kyk na die geconfigureerde webwerwe in Apache. Gewoonlik:
/etc/apache2/sites-enabled/000-default

Binne-in kan jy iets soos vind:

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

Soos jy kan sien, is daar die lêers met die geldige credentials vir die webdav bediener:

/etc/apache2/users.password

Binne hierdie tipe lêers sal jy die gebruikersnaam en ’n hash van die wagwoord vind. Dit is die geloofsbriewe wat die webdav-bediener gebruik om gebruikers te verifieer.

Jy kan probeer om hulle te breek, of om meer by te voeg as jy om een of ander rede die webdav bediener wil toegang.

htpasswd /etc/apache2/users.password <USERNAME> #You will be prompted for the password

Om te kontroleer of die nuwe geloofsbriewe werk, kan jy doen:

wget --user <USERNAME> --ask-password http://domain/path/to/webdav/ -O - -q

Verwysings

Tip

Leer en oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer en oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Leer en oefen Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Ondersteun HackTricks