Search results
Results from the WOW.Com Content Network
The concept behind a fork bomb — the processes continually replicate themselves, potentially causing a denial of service. In computing, a fork bomb (also called rabbit virus) is a denial-of-service (DoS) attack wherein a process continually replicates itself to deplete available system resources, slowing down or crashing the system due to resource starvation.
When a process calls fork, it is deemed the parent process and the newly created process is its child. After the fork, both processes not only run the same program, but they resume execution as though both had called the system call. They can then inspect the call's return value to determine their status, child or parent, and act accordingly.
Most Linux distributions are descended from other distributions, most being traceable back to Debian, Red Hat or Softlanding Linux System (see image right). Since most of the content of a distribution is free and open source software, ideas and software interchange freely as is useful to the individual distribution.
The Rabbit (or Wabbit) virus, more a fork bomb than a virus, is written. The Rabbit virus makes multiple copies of itself on a single computer (and was named "rabbit" for the speed at which it did so) until it clogs the system, reducing system performance, before finally reaching a threshold and crashing the computer. [10]
Instead, he programmed the worm to copy itself 14% of the time, regardless of the status of infection on the computer. This resulted in a computer potentially being infected multiple times, with each additional infection slowing the machine down to unusability. This had the same effect as a fork bomb, and crashed the computer several times.
Fork bomb: a similar method to exhaust a system's resources through recursion; Zip bomb: a similar attack utilizing zip archives; XML external entity attack: an XML attack to return arbitrary server files; Document type definition: a template for validating XML files
Linux 2.6 kernels adhere to this behavior, and FreeBSD supports both of these methods since version 5.0. [5] However, because of historical differences between System V and BSD behaviors with regard to ignoring SIGCHLD, calling wait remains the most portable paradigm for cleaning up after forked child processes.
μClinux is a variation of the Linux kernel, previously maintained as a fork, that targets microcontrollers without a memory management unit (MMU). [1] It was integrated into the mainline kernel as of 2.5.46; [ 2 ] the project continues to develop patches and tools for microcontrollers.