linux-l: fork() DoS

Henrik Hempelmann hh at actis.de
Mo Aug 23 17:37:40 CEST 1999


Oliver Hillmann wrote:
> 
> Hallo,
> 
> mir ist gerade etwas langweilig, und deswegen wollte ich mit Euch mal ein
> Problemchen diskutieren, das ich nicht gerade unkritisch finde und noch
> nirgendwo angesprochen gesehen habe...
> 
> Man oder frau nehme einen beliebigen Linuxrechner, einen beliebigen User
> auf diesem und lasse diesen User das kleine C-Progrämmchen
> 
> main() {
>         for(;;)
>                 fork();
> }
> 
> ausführen... Binnen weniger Sekundenbruchteile bis einigen Sekunden ist
> der Rechner völlig dicht... Nichts geht mehr... Ich habs zuletzt unter
> 2.0.x ausprobiert, und gerade Rechner mit begrenzten Resourcen klappen
> zusammen, die anderen etwas später....
> 
> Ganz abgesehen davon, daß kein System mit interaktiven Usern finale
> Sicherheit bieten kann - was fällt Euch gegen so einen Denial of Service
> ein?

mit setrlimit(2) solltest Du den Resourcenverbrauch von Usern einschraenken koennen.
Unter anderem auch "RLIMIT_NPROC   /* max number of processes */"

	Henrik



Mehr Informationen über die Mailingliste linux-l