C 與 BASH 叉彈?
Fork() 炸彈是一種針對基於 Linux 的系統的 DoS(拒絕服務)攻擊。這呼叫 Fork() 系統無限次,這將填滿程式的記憶體並有意損害系統。
Bash 指令碼用於 fork 炸彈
:(){ :|: & };:
程式碼解釋為:( ) 是函式定義,{ } 定義迴圈體。:|:& 建立一個記憶體位置,不允許其被釋放。此程式不斷多次呼叫自身。因此會不斷進行無限次呼叫。
C Fork 炸彈也是相同的 DoS 型別,但可以在 C 編譯器上執行。它會無限地呼叫記憶體分配,並使系統記憶體耗盡。
示例
#include <unistd.h> #include <malloc.h> int main() { while (1) { fork(); } }
輸出
Infinite calls
廣告