[Ilugc] Re: long arms and forks

  • From: ramanraj@xxxxxxxxxxxxxxx (Ramanraj K)
  • Date: Sat, 10 Jan 2004 23:19:42 +0530

Suraj wrote:

Ramanraj K wrote on Sat, Jan 10, 2004 at 07:02:21PM +0530: 
,----
| argv[0].  While  giving these a try, my  X crashed.  I had  to use the
| pure  console environment,  and found  that many  programs  like audio
| servers use
`----

the main exploitation  thata fork bomb does is to  get the kernel busy
doing fork()s.  running a million  emacs, sure, would make  the system
"busy" but plain fork() would  be more effective than a fork() coupled
with disk reads  (of which most will come from the  cache, a couple of
mallocs, etc.,.)

try this:

# ($0 & $0 &)
# top

You would see that more than 96% of your CPU is running bash, and you 
know the reason.  I did not try emacs in the place of $0, but a more 
heavy program would consume more resources.  Closing the bash terminal 
is an instant cure, but if you leave it running, it does interefere and 
crash other programs.  The fb sample in the jargon file is more 
dangerous than the echo fb you pointed that terminates within the shell 
after crossing the process limit.

,----
| the immediate solution is the approach  of the Law: block the user who
| wantonly runs a fb to cripple or waste a system and its resources.
`----

Thats there, but the downtime that your server faced might mean $$, to
some. Protetion  is of  importance (so is  the case with  viruses, for
thats the topic we were dealing  with). There are a million cures (one
of which is, even, reinstallation!).

f better options are not available, this is the only option that will 
save the $$.  Of course, there ought to be cures.  For all I know, one 
could sell a single int value: the reasonable setting for ulimit -u may 
have a commercial value ;-)  I still remember the days I lived without 
computers - they were far simpler :-) I hope we can have 100% robust and 
protected systems.

Thanks,
Regards,
Ramanraj.



Other related posts: