Windows NT Angriffsmethoden: °°°°°°°°°°°°°°°°°°°°°°°°°°°° ================================ || von Ernesto Tequila y Mota || || ernesto_tequila@2die4.com || || www.AnthraxLP.de || ================================ Hi Folks, willkommen zu meinem Text über Microsofts Windows NT. Obgleich Windows NT, meiner Meinung nach, so ziemlich das einzige ist, was bei Microsoft mal Hand und Fuss hat, hat es doch immernoch eine ganz Menge Schwachstellen. Dabei müssen wir jedoch oft auf eine gewisse Dummheit des Administrators hoffen, da NT richtig konfiguriert, genauso sicher ist wie jedes UNIX-System. Microsoft hat bei der Entwicklung wieder einmal ein paar (Alte?) Fehler gemacht, die das System unsicherer machen, als es sein könnte. Da wäre einerseits die Abwärtskompatibilität zu älteren Client Versionen, oder z.b. die Benutzerfrendlichkeit (alter M$ Fehler). Denn die Benutzung der alten NetBIOS-, CIFS-, und SMB-Netzwerkprotokolle ist sicherlich eine Schwachstelle im System, und auch die Verschlüsselung der Benutzerkennwörter nach dem alten LanManager-Algorithmus ist nicht sehr schlau, aber uns kann das im Prinzip ja egal sein, oder? Die Benutzerfreundlichkeit verleitet oft unerfahrene Systemverwalter dazu sich bei NT mal als Admin zu versuchen, doch auch erfahrene Admins wählen unter NT selten starke Passwörter (dazu später mehr). Daher ist es unter NT immer mal möglich in einem Netzwerk mindestens einen Rechner zu finden, bei dem das Admin-Konto nicht mit einem Passwort versehen ist. Deshalb ist es natürlich erstmal nötig festzustellen mit wasfüreinem System wir uns gerade befassen. Dazu benutzt ihr ja wahrscheinlich einen Portscan. Wenn dabei z.b. Port: 139, 135 offen sind handelt es sich sehr wahrscheinlich um ein NT System, ist nur Port 139 offen ist es wohl eine Win 9X Maschine, aber wer wird sich schon mit Win 9X befassen?? Wenn ihr Probleme, oder keine Ahnung von Portscanning, Footprinting etc.. habt schreibt mir einfach eine Mail, wenn da genug Bedarf ist schreibe ich dazu auch noch einen Text. Der "nmap" Scanner für Linux bietet die Option "-O" mit der ein OperationSystemGuess ausgeführt wird, d.h. der Scanner versucht aus den Daten die er bekommt das Betreibssystem zu bestimmen. Aber denkt immer daran, dass schon das abscannen eines Rechners oder Netzwerkes rechtlich verboten ist. Also versucht da mal ein paar Sachen aus, nmap bietet da relativ gut Möglichkeiten um seine Aktivitäten zu vertuschen, wobei 99% der Admins sowieso zu faul sind einem dämlichen Portscann zu verfolgen, aber immerhin sind sie gewarnt, das vielleicht ein Angriff bevorsteht. Ein gutes Tool, das euch den Aufbau eines Netzwerkes zeigt sei an dieser Stelle noch genannt. "Cheops" (www.marko.net/cheops) ist ein Nezuwerkerkennungstool, mit einem Grafischen Interface. Es beinhaltet Portscanning, traceroute, ping, OS-Erkennung in einem. Also wem es zu umständlich ist alles einzeln zu machen, oder wer lieber schöne bunte Bilder als ASCI mag sollte sich das mal anschauen. Ich bin einfach ASCI-Konsolen-Fan, tut mir leid ;) Jetzt wollen wir mal anfangen euch die verschiedenen Angriffsmethoden etwas näher zu bringen. Ich werde mit den etwas einfacheren Methoden anfangen, und dann zu schwereren übergehen. Es ist bei NT noch zu beachten, dass der Remote-User solange nichts wert ist, solange er keine Administratorrechte besitzt, da man unter NT nur als Admin Befehle über die Remoteshell ausführen kann! Kennwörter raten: ^^^^^^^^^^^^^^^^^ Um unter NT, oder eigentlich bei jedem System, Passwörter raten zu können benötigt man ersteinmal eine Liste mit funktionierenden Benutzrkonten. Es gibt dann die Methode des manuellen Passwörter ratens, oder des automatischen, oder per Lauschangriff auf den Anmeldedialog von NT. Wie bekommt man gültige Benutzerkonten: °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°° Es gibt eine ganze Menge an Methoden um an gültige Konten zu kommen, ich möchte mal ein paar davon erklären. Das NTRK: °°°°°°°°° Das NT Ressource Kit, oder auch NT Hacking Kit genannt, beinhaltet eine erstaunliche Sammlung an Tools die man, ob man es fassen kann oder nicht, gegen NT verwenden kann. Was immer sich M$ dabei gedacht haben mag, das ist doch wirklich seltsam, aber wir sehen mal wieder, dass NT ZU benutzerfreundlich ist. Das NTRK kann man für ca $200 im Laden kaufen, da es bei NT nicht standardmässig dabei ist. Aber man findet es auch manchmal auf Warezseiten. Ein anderer Befehl ohne NTRK ist nbtstat -A 123.123.123.123 Wobei 123.123.123.123 natürlich die IP eures NT Rechners ist. Dieser Befehl liest die NetBIOS Namenstabelle aus, und eine erfolgreiche Ausgabe sähe dann so aus: NetBIOS Remote Machine Name Table Name TYPE Status FRITZ <20> Registered FRITZ <00> Registered INTERNET <00> Registered FRITZ <03> Registered INTERNET <1E> Registered ADMINISTRATOR <03> Registered INTERNET <1D> Registered ..__MSBROWSE__. <01> Registered Mac Address = 00-C0-4F-86-80-05 Wir erfahren, dass der Systemname FRITZ ist, die Domäne in der sich das System befindet heisst INTERNET und wir erfahren den Namen aller angemeldeten Benutzer ADMINISTRATOR Bei dem NTRK sind einige Tools dabei, die noch mehr Informationen geben als nbtstat, und diese sind von einer Null-Sitzung unabhängig. Beispielsweise usrstat, showgrps, local und global. Aber am besten ist DumpACL, denn es liefert die Benutzer, Gruppen, NT-Systemrichtlinien und Benutzerprivilegien. DumpACL wird von der Konsole aus gestartet und könnte z.b. so aussehen: c:\>dumpacl /computer=\\192.168.202.33 /rpt=useronly /saveas=tsv /outfile=c:\temp\users.txt c:\>cat c:\temp\users.txt 24/12/00 24.00 PM - Somarsoft DumpACL - \\192.168.202.33 UserName FullName Comment pvogel Peter Vogel blabla kknauss Klaus Knauss blabla Guest Guest Account max Max Frisch blabla Ein weiteres sehr taugliches Tool ist das Packet sid2user und user2sid (www.chem.msu.su:8080/~rudnyi/NT/sid.txt) Diese beiden Tools werden aus der Befehlszeile gestartet und lesen Benutzerkonten aus der NT-SIDs aus (SID = Security Identifier). Zuerst wird user2sid verwendet um die SID einer Domäne auszulesen: c:\>user2sid \\192.168.202.33 "domain users" Sie-1-5-21-8915387-1645822062-1819828000-513 Number of subauthorities is 5 Domain is WINDOWSNT Length of SID in memory is 28 Bytes Type of SID ist SidTypeGroup Die SID ist die Zahlenkombination, die mit S beginnt, und durch Bindestriche getrennt ist. Die letzte Zahl nach einem Bindestrich ist die RID (Relative Identifier), der für standardmässige Benutzer wie Administrator oder Guest benutzt wird. Wobei der Admin immer 500 und der Guest immer 501 ist. Jetzt kann man sid2user benutzen und die SID mit der RID von Administrator benutzen und das sieht dann ungefähr so aus: c:\>sid2user \\192.168.202.33 5 21 8915387 1645822062 1819828000 500 Name is max Domain is WINDOWSNT Type of SID is SidTypeUser So und schon haben wir den Namen des Administrators S-1 und die Bindestriche wurden weggelassen. Dem ersten erstellten User wird automatisch die RID 1000 geben, dem zweiten erstellten USer die 1001 etc... Diese RIDs werden jeweils nur einmal verwendet, so ist es also möglich auch ältere Konten aufzuspüren. Alte Konten sind interessant weil sie oft noch existieren aber nichtmehr benutzt oder kontrolliert werden. Ausserdem funktioniert sid2suer/user2sid auch wenn RestrictedAnonymous aktiviert ist, hauptsache port 139 ist aktiv! Oft kann das SNMP (Simple Network Managment Protocol) zur Auswertung von Benutzerinformationen benutzt werden. Da Admins dieses Protokoll irgendwie gerne übersehen, gut für uns. Wir benutzen dazu das SNMP-Browser-Tool "snmputil" aus dem NTRK. Eine Ausganbe könnte so aussehen: C:\>snmputil walk 192.168.202.33 public .1.3.6.1.4.1.77.1.2.25 Variable = .iso.org.dot.internet.private.enterprises.lanmanager.lanmgr2.server.svUSerTable,svUSerEntry.svUSerName.5.71.117.101.115.116 Value = .iso.org.dot.internet.private.enterprises.lanmanager.lanmgr2.server.svUSerTabel.svUserEntry.svUserName.13 65.100.109.105.110.105.115.116.114...97.116.111.114 Value = OCTET STRING - Administrator End of MIB subtree Die Zahl .1.3.6.1.4.1.77.1.2.25 ist der sogenannt OID (Object Identifier) sie bezeichnet eine bestimmte Branche im MIB (Managment Information Base) von Microsoft gemäss SNMP Protokoll. Wenn man die Zahl ändert um weiter nach oben im Baum zu wandern erhält man eine grössere Informationsmenge, statt der Zahl kann man aber äquivalent auch Zeichen verwenden, z.b.: SNMP MIB (anhängen an .iso.org.dod.internet.private.enterprises.lanmanager.lanmgr2) Erkannte Dienste: .server.svSvcTablesvSvcEntry.svSvcName => laufende Dienste .server.svSvcTable.svShareEntry.svShareName => gemeinsame Dienste (Shares) .server.svSvcTable.svShareEntry.svSharePath => Kommentare zu Shares .server.svSvcTable.svUSerEntry.svUserName => Benutzernamen .domain.domPrimaryDomain => Domänennamen Wem das zu viel Tipparbeit ist, der kann den SNMP-Browser von www.solarwinds.net herunterladen, und sich das ganze mit einer Grafischen Oberflächen anschauen. Ansonsten funzt das andere aber auch! Backdoors/Trojaner: ^°^°^°^°^°^°^°^°^°^ Um einen Trojaner zu installieren, um über ihn an die gecachten Benutzer/Passwörter zu kommen ist natürlich auch möglich. Ganz einfach per E-Mail, oder was auch immer. Ein etwas eleganterer Weg ist die unterbringung per NetBIOS. Über dieses Thema habe ich schon einen Tutor geschrieben, den copy/paste ich jetzt einfach mal (ist ja nur von mir selbst geklaut): ZITAT ANFANG: "Ihr habt da ein Netzwerk in das ihr gerne rein wollt, aber ihr habt einfach kein Glück. Dann versucht es mal ein wenig hinten herum. Über andere Rechner, die an euer Netz gehängt wurden. Als erstes solltet ihr mal eine whois Suche über euer Unternehmen starten. Unter Linux geht das so: winnie@nethacker:> whois dummy oder: whois dummy.de Dann solltet ihr ein paar Infos über den Administrator den Sitz der Firmenleitung etc.. bekommen. Und wenn ihr Glück habt noch den/die dns-server, und den IP Bereich den das Netzwerk unseres Unternehmens belegt. Den dns server könnten wir für dns abfragen nutzen, aber das ist ein anderes Thema, wir wollen jetzt Rechner in dem Netzwerk suchen, die netBIOS ressourcen zur "freien" verfügung haben. Dazu suchen wir das gesammte netzwerk (angenommen: 183.254.20.1 -> 183.254.23.23) mit einem Pingsuchlauf ab. Das heisst, wir testen welches dieser Systeme überhaupt aktiv ist. Also testen wir mal ob Port 80 offen ist. Dazu benutzen wir nmap auch wieder unter Linux: nmap -sP -PT80 183.254.20.1-254 nmap -sP -PT80 183.254.21.1-254 nmap -sP -PT80 183.254.22.1-154 nmap -sP -PT80 183.254.23.1-23 Wir scannen hier jeden Bereich einzeln, weil ich die Syntax nicht kenne um alles auf einmal zu scannen, aber egal. Dann erhaltet ihr eine Liste mit hosts die geantwortet haben, am besten lasst ihr euch die ausgabe in ne datei speicher, hängt einfach > /tmp/nmap_out an die befehlszeile an. Jetzt wechseln wir mal schnell wieder zu Windows, und starten den Legion 2.1 (gibts bei www.nethacker.de) und suchen das gesamte netzwerk nach netbios ressourcen ab, auf die wir zugreifen können. Natürlich nehmen wir nur hosts, die vorher beim Ping Suchlauf auch geantwortet haben. Wenn wir jetzt nen Host finden zeigt Legion das an, ihr braucht nur die IP zu nehmen und in der Form \\183.254.20.180 in euren Browser einzugeben. Jetzt kann es einige Zeit gehen, und ihr solltet alle offenen Verzeichnisse sehen. Schaut euch jetzt mal nach .PWL files, oder sonstigen lustigen Sachen um, die euch Zugang zum gesamten Netzwerk, das ihr ja nicht vergessen sollen *fg*, verschaffen könnten." ZITAT ENDE So, an dieser Stelle könntet ihr jetzt eine Datei herunterladen (rechtsklick kopieren) und diese dann mit einem Trojaner-Server versehen. Dann kopiert ihr die File zurück auf den Server, und zwingt ihn dazu die File zu öffnen. (Meistens kann man bei shared ressources txt files etc.. anzeigen, aber bei exe Dateien sieht das anders aus (vielleicht mache ich was falsch *g*). Deshalb müsst ihr das System halt zwingen die File zu öffnen die den Trojaner beinhaltet. Dazu steckt ihr den Trojaner am besten in eine File die beim Windowsstart geöffnet wird. Wie ihr den PC jetzt zum rebooten bringt, und welche Dateien da in Frage kämen das überlasse ich mal euch) Auswerten von NT -Bannern und Anwendungen: °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°° Die bewährteste Methode zum Auswerten von Banner- und Anwendungsinformationen ist "telnet". Dazu muss man "telnet" öffnen und eine Verbindung zu einem bestimmten offenen Port am Zielsystem herstellen, dann muss man manchmal die Eingabetaste ein paar mal betätigen, und dann sollte man eine Meldung erhalten, die ungefähr so aussieht: telnet www.dummy.org 80 (<- In diesem Beispiel wurde Port 80 gewählt) HTTP/1.0 400 Bad Request Server: Netscape-Commerce/1.12 Your Browser sent a non-HTTP compliant message Diese Methode funktioniert mit vielen gängigen Anwendungen, die auf bestimmten Port Addressen liegen, versuchen sollte man http (80), ftp (21) SMTP (25), wobei ftp auf NT Maschinen besonders interessant ist. Für eine genauere Information benutzt man am besten wieder das "Schweizer Taschenmesser des TCP/IP" , auch netcat genannt. Erhältlich ist es unter www.l0pht.com/~weld/netcat/index.html Mit netcat kann man wirklich eine ganze Menge anstellen, wie zum beispiel eine Verbindung zu einem TCP/IP Port herstellen (na toll werden einige sagen, aber wartet ab..), dazu muss man folgendes angeben: c:\>nc -v www.dummy.org 80 www.dummy.org [192.168.202.33] 80 (7) open Wenn man jetzt eine Eingabe macht sollte eine Reaktion von der Gegenseite kommen, etwas in der Art: HTTP/1.1 400 Bad Request Server: Microsoft IIS/4.0 Date: Sat. 03 Mar 2000 04.23 GMT Content-Type: text/html Content-Length: 87 ErrorThe parameter is incorrect, Aus diesem Eintrag kann ein Angreifer den Hersteller und die Version des Webservers bestimmen, was einen doch mal ein gutes Stück weiterbringt. Eins will ich noch ansprechen, und das ist der NetBIOS Scan. Bei Windows NT ist die erfolgswagrscheinlichkeit sehr hoch. Wenn ihr das gesammte netzwerk habt (z.b. whois network.de) solltet ihr das gesammt Ding nach shared NetBIOS Ressourcen abscannen. Dazu nehmt ihr am besten Legion 2.1 (www.nethacker.de), und scannt gleich das ganze Netzwerk ab z.b. 192.253.19.0 -> 192.253.23.127 (oder wie euer Netzwerk auch immer aussieht). Vorher solltet ihr vielleciht erstmal noch einen Pingsuchlauf machen, damit ihr wisst welche hosts überhaupt reagieren. Ihr könnt dazu das "nmap" Tool verwenden (linux only), ich glaube die Sysntax ist "nmap -sP -PT80 " wenn das nicht 100% richtig ist müsstet ih nochmal die man zu nmap lesen, oder die Hilfe reicht auch schon. Ihr könnt die Ausgabe von nmap auch in eine Datei umleiten, und könnt dann Legion später nur diese Datei scannen lassen, so werden nur hosts nach NetBIOS gescannt, die auch wirklich aktiv sind. Bsp: Ich hatte ein Netzwerk mit jeder Menge Rechner, alles WinNT und Win 9X Machschinen. Dann habe cih die komplette IP-Range nach geshareten NetBIOS-Ressourcen abgesucht und eine gefunden: 192.253.20.180. Per IE habe ich mich dann zu dem Rechner connected und habe mir ein paar PWL files gezogen, war eigentlich nicht schlecht. Jetzt kann ich immerhin auf ein System zugreifen dessen Rechner mit dem unternehmen zu dem ich eigentlich wollte, verbunden ist. Wie man PWL Dateien anschaut brauche ich wohl nicht zu erklären oder? Klickt mal mit der rechten Maustaste auf die PWL Datei und geht zu Eigenschaften -> PWL Info: PWL File: c:\eigene dateien\SERVER.PWL Type of PWL: OSR2/ServicePack1 Number of c grached REssources: 1 Number of total password changes: 2 Okay wie wir sehen sollten wir aus dieser PWL ein Passwort bekommen, und genau so war es auch ;) Kennwörter raten: °°°°°°°°°°°°°°°°° Da wir jetzt hoffentlich eine Liste mit gültigen Benutzerkonten haben können wir zum raten der PAsswörter übergehen, der einfachsten aber sehr effektiven Methode des NT "hackens". Mit einer Liste an gültigen Benutzern geht das Raten der Passwörter fast immer, ist nur eine Frage der Zeit *g*. Ich habe z.b. den Benutzernamen durch "social engineering" herausbekommen, da sollte dann einfach jeder mal seinen Grips ein wenig anstrengen, dann findet man da immer ne Lösung. Dummer USer sind Hackers best friend. Manuelles Kennwörter raten: °°°°°°°°°°°°°°°°°°°°°°°°°°° Von dieser Methode ist im Prinzip her abzuraten, da es ziemlich lange dauern kann, aber es lohnt sich kombinationen wie bn/vorname, bn/bn, bn/nachname, bn/firma, etc.. auszuprobieren, da USer zu einfach Kennwörtern neigen. Wenn wir jetzt den bn mmeier hätten so könnten wir mmeier/meier, mmeier/martin, etc.. ausprobieren, lasst dabei eurer Phantasie ein wenig, freien Lauf und ihr werdet was entdecken. Automatisches Kennwörter raten: °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°° Über das automatsiche raten brauche ich ja eigentlich nicht viel zu sagen, da jeder weiss wie das geht. Einfach ein Tool nehmen (UNSECURE, Brutus,..) und einen Benutzernamen eingeben, dann BruteForce wählen und laufen lassen. Allerdings dauert diese Methode bei langen Passwörtern, oder Passwörtern mit Sonderzeichen extrem lange. Am besten ist es imernoch Null-Kennwörter zu finden. Dazu eignen sich Tools wie Mnemonix www.infowar.co.uk/mnemonix . Es scannt Internet und NetBIOS und listet Benutzerkonten mit Null-Kennwort ganz unten auf. Andere Angriffsmethoden: °°°°°°°°°°°°°°°°°°°°°°°° Jetzt nehmen wir mal den Fall, wir hätten keine ungeschützten Konten, bzw. einfache Passwörter gefunden. Dann können wir immernoch einen Pufferüberlauf ausprobieren. Allerdings sind unsere Mittel da etwas eingeschränkt, verglichen mit den Möglichkeiten bei UNIX. Deshalb will ich auch nur kurz auf ein paar BufferOVerRuns eingehen, vielleicht schreibe ich mal nen Tutor nur über BufferOverRuns, es gibt aber schon nen guten auf unserer Homepage. Netmeeting 2.x von cDc http://www.dultdeadcow.com/cDc_files/cDC-351 War nur ein Test der Gruppe. Dieser Bufferoverrun lädt nur ein bild aus dem Internet NT RAS von Mnemonix http://www.infowar.co.uk/mnemonix/ntbufferoverruns.htm Öffnet nen DOS Prompt mit Systemrechten Winhlp32 von Mnemonix Führt eine Stapelverarbeitungsdatei mit Systemrechten aus IISHACK von Eeye http://www.eeye.com Führt beliebige Anweisungen an einem NT IIS Webserver aus Denial of Service: °°°°°°°°°°°°°°°°°° Ich persönlich halte nicht viel von DoS Attacken, da sie meist nur aus Zerstörunswut, oder wasweissichwasfür Schwachsinnsgründen, ausgeführt. Der einzig sinnvolle Grund für eine DoS der mir im Moment einfällt wäre, den Computer zum reeboten zu bewegen, damit er, von uns eigeschleusten, Code ausführen muss. Z.b. wenn ihr ein Programm ins Startup geschrieben habt, dann startet ihr den PC per DoS neu, und der Code wird ausgeführt. Aber auch zu diesem Thema wird es vielleicht noch nen Text geben, sagt mir ob es euch interessiert oder nicht, und dann schaut immer mal wieder bei nethacker rein ;) Auf der Suche nach dem heiligen Admin: °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°° ICh möchte jetzt mal einen kleinen Sprung machen, zu dem Zeitpunkt an dem wir, morgens um halb 5, vor unserem PC hocken und sehen, dass wir ein Benutzerkonto per Passwortraten o.ä. geknackt haben. Leider hatten wir nicht das Glück ein Admin oder Systemkonto zu erwischen, sondern nur einen 0815-User. Aber wir wollen ja mal nicht so schnell aufgeben, sondern suchen mal nach Löchern in NT die uns Adminrechte zuteil werden lassen. Leider beschränken sich einige dieser Methoden auf NT Systeme die erst das ServicePack 3 installiert haben (ich glaube das neuste ist 6 oder 7). Aber einen Versuch isses wert. Informationen sammeln: ^^^^^^^^^^^^^^^^^^^^^^ Wir können jetzt wieder beginnen und uns auf die Suche nach Informationen machen, die uns mehr interessieren. Mit dem NTRK Tool "srvinfo" kann man Festplatten nach Freigaben durchsuchen. Dabei solltet ihr mal \system32 oder \repair (wegen der Backups der SAM Files) durchsuchen, oder was euch sonst noch so in den Kopf kommt. Zu den SAM Files komm ich später noch... getadmin: ^^^^^^^^^ getadmin von Konstantin Sobolev trägt einen Benutzer in die Admingruppe ein, ein wirklich tolles Teil. getadmin übernimmt den "winlogon" Prozess und trägt den Benutzer, dadurch, dass er einen Flag verändert, in die Admingruppe ein. Der Prozess "winlogon" läuft unter NT mit Systemrechten, und ist deshlab befugt User zu adden etc.. www.ntsecurity.com/security/getadmin.htm oder bei nethacker.de Leider wurde dieser Bug mit SP 3 behoben. sechole: ^^^^^^^^ Das schwirige an sechole ist, dass man ein IIS-Verzeichniss braucht, in dem man Schreibzugriff UND das Recht Programme auszuführen besitzt. Unter http://www.iss.net/xforce/alerts/advise6.html könnte ihr potentielle Ziele nachschlagen! Mal angenommen das Verzeichniss mit eben diesen Rechten hiesse C:\winnie / WINNIE /msadc / WINNIE/News / WINNIE/Mail / WINNIE/cgi-bin / WINNIE/SCRIPTS / WINNIE/ISSADMPWD / WINNIE/_vti_bin / WINNIE/_vti_bin/_vti_adm / WINNIE/_vti_bin/_vti_aut Diese Dateien _vti_bin, etc.. gehören zum Frontpage Programm (sieht man doch gleich an der dämlichen Namensgebung, dass das M$ ist *g*). Jetzt muss der Angreifer die sechole Dateien und die DLLs, den Befehlszeileninterpreter cmd.exe und das Programm ntuser (www.pedestalsoftware.com) einspielen. sechole wird jetzt über den Browser ausgeführt, es wir das Programm ntuser gestartet um einen neuen Benutzer zur Admingruppe zu adden. http://192.183.24.135/scripts/cmd.exe?/c%20c:\winnie\scripts\ntuser.exe$20-s%20server_name%20add%20winnie%20-password%20nethacker Erklärung: %20 entspricht einem Leerzeichen!! => Es wird der Befehl "cmd /c ntuser -s add winnie -password nethacker" ausgehführt, und ein neuer Benutzer winnie ist als Admin eingetragen! Fertig sind wir.. Leider git es auch für sechole einen patch von Microsoft, aber wie gesagt, bei NT sind wir ein wenig auf die Dummheit der Admins, oder der Benutzer angewiesen. Registry Zugriff: ^^^^^^^^^^^^^^^^^ Leider sind unter NT, ausser den Admins, nur wenig Benutzer vorhanden, die auf die gesammte Registry zugreifen können (Ausnahme sind Server-OPs). Nichtsdestotrotz habe ich hier mal ein paar interessante REgistry Schlüssel aufgelistet die man sich unbedingt mal ansehen sollte, wenn man dann auf die Registry zugreifen kann. \HKLM\Software\Microsoft\CurrentVersion\Run\ Es können alle Werte von Befehlen ausgeführt werden \HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce Auch hier ist alles möglich \HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx Wieder mal alles möglich \HKLM\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\AeDebug Debugger \HKLM\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon Userinit Die SAM File: °°°°°°°°°°°°° Das Lieblingsfrass eines jeden Angreifers sind ja wohl Passwortdateien, egal unter welchem OS, wenn man eine PAsswortdatei in den Händen hält ist es nur eine Frage der Crackingmethode, WANN man als Admin im System ist. Unter NT heissen die Passwordfiles SAM. NT specihert sie unter \system32\config und die Dateien heissen "SAM" (jaaa, Microsoft ist ja soooo einfallsreich). Allerdings ist das Verzeichniss nur für Admins zerreichbar, aber wir haben da noch eine Hintertüre. Wenn der Admin mal rdisk -s ausgeführt hat hat er von den SAM Files ein Backup gemacht, diese Files liegen unter \repair Verzeichniss und heissen Sam._ ! Ladet sie euch runter und importiert sie dann in den neusten L0pht Crack (der expandiert die kompressierten Files dann automatisch *fg*) und crackt die File. Wenn ihr lokalen Zugriff auf den NT Rechner habt nehmt euch eine DOS-Bootdiskette. Wenn die NT Partition mit NTFS (NT File System) partitioniert worden ist holt euch den NTFS Treiber (NTFSDOS) unter www.sysinternals.com, damit könnt ihr jede NT Partition von DOS aus angucken, und jetzt zieht euch die SAM Files! Mit Adminrechten kann man die SAM auch direkt au der Kennwortsequenz auslesen, aber wenn wir eh admin sind können wir sie auch einfach aus \system32\config kopieren. Wer wissen will wie man die Kennwörter ausliest soll mir mailen! Soo.. wenn wir jetzt noch kein Admin sind tut es mir leid, aber ALLES werde ich auch nicht erzählen, und ausserdem möchte ich es nicht so erklären, dass es jedes Kind machen kann (deshlab habe ich auch keine DoS angesprochen). Ich hoffe ihr hattet bei dem Tutor ne Menge Spass, und ich konnte euch ein wenig mit NT helfen. Bei Anregungen und Kritik mailt mir bitte, denn nur so kann ich die Texte vertändlicher machen. Wenn sie diesen Text auf ihre Internetseite stellen möchten schicken sie mir vorher eine Mail! Ernesto Tequila y Mota (c) Anthrax Leprosy Pi Man muss schon einiges wissen, um festzustellen dass man nichts weiss