Sâu máy tính được xác định giống virus sinh học trong hành vi lây truyền và tự sao chép. Nên, những kỹ thuật toán học phát triển để nghiên cứu về phát triển, truyền nhiễm sinh học có thể áp dụng vào nghiên cứu lây truyền virus và sâu máy tính. Nhiều nghiên cứu đã thực hiện trên những mô hình toán học về lây truyền sâu
ở các quy mô khác nhau cũng như giải pháp phát hiện tương ứng [16], [65], [92].
Một vài mô hình toán học sử dụng gần đây để mô tả sự lây truyền phân tán sâu, giải pháp phát hiện phục vụ việc phòng chống kết hợp được trình bày tiếp theo.
a.) Mô hình lây truyền virus
α.) Mô hình Staniford: Trên cơ sở phân tích sâu Code-Red lây lan trong N máy ban đầu có khả năng bị tấn công, với K máy có thể tìm biết và thỏa hiệp (diệt hoặc loại trừ) khi bị nhiễm, mô hình định lượng lan truyền sâu do Staniford cùng cộng sự đề xuất để xác định tỷ lệ máy đã bị nhiễm a được xác định như sau:
exp / 1 exp
a K tT K tT (4.1)
Do khả năng lây nhiễm của một loại sâu ứng với mật độ của các máy mục tiêu, nên ở thời điểm dt nào đó lây nhiễm là K(1-a)dt. Vì có tổng số Na sâu, tỉ lệ máy bị nhiễm tăng lên trong thời gian dt sẽ là Nda = (Na)K(1-a)dt. Vậy, trong khoảng thời gian T của sự việc từ khi bắt đầu xảy ra lây truyền và với vài phép tính số học thuần túy, tỷ lệ máy nhiễm được xác định như trên.
β.) Mô hình Kephart và White: Trên cơ sở sử dụng hệ thống kiểu nút trong đồ thị (các cạnh từ nút j nào đó tới những nút khác biểu diễn các nút riêng lẻ có thể đã bị lây nhiễm bởi j). Với ký hiệu i là tỷ lệ những máy đã bị nhiễm, β là tỷ lệ lây nhiễm virus, δ và b là tỷ lệ điều trị và số lượng nút láng giềng của mỗi nút, phương trình vi phân mô tả sự phát triển tỷ lệ máy i(t) bị lây nhiễm theo thời gian như sau:
( ) 1 di t a bi i dt (4.2)
Do đặc thù lây nhiễm virus sinh học, khi mới phát sinh (các giá trịt nhỏ), tỷ lệ lây nhiễm tăng trưởng theo cấp số nhân cho đến khi đa số các cá thể bị nhiễm và sau đó, tỷ lệ lây nhiễm lại chậm dần theo cấp số nhân đến giá trị 0 khi tất cả cá thể bị nhiễm. Khi tỷ lệ điều trị của mỗi nút δ = 0, mô hình lây truyền này trở thành mô hình lây truyền Staniford.
b.) Phát hiện tín hiệu sâu tự động
Sử dụng thuật toán vết chân (Footprint) Rabin tại mỗi nút mạng để tính các khối nội dung trong các phần tải của gói tin. Sau đó, cập nhật tình trạng lan truyền cục bộL(i,j) cho mỗi khối nội dụng j, ở nút mạng có chỉ sối.
Khi L(i,j) lớn hơn ngưỡng lan truyền cục bộ và sự phân tán địa chỉ lớn hơn ngưỡng phân tán địa chỉ cục bộ. Sử dụng giao thức tổng hợp để tổng hợp thông tin trong mô hình phòng thủ kết hợp. Những nút phòng thủ của mạng bắt đầu lọc hoặc giới hạn tốc độ lưu lượng với tín hiệu này.
Dựa trên sự lây lan của khối nội dung được tổng hợp bởi mỗi nút mạng riêng lẻ, tại thời điểm t bất kỳ, mỗi nút i duy trì một danh sách các cặp tham số (contentt, countk), với contentt đại diện tín hiệu được định nghĩa bởi kỹ thuật tạo tín hiệu theo thời gian t, countk đại diện sự lây lan tín hiệu của khối nội dung có chỉ số k. Giao thức tổng hợp được mô tả như sau:
1.) Cho (contentt-1,countt-1,k), tất cả những cặp tham số đã gửi tới nút có chỉ sối trong khoảng t-1.
2.) Đặt dt,i = rcountt-1,k, tổng các giá trị lan truyền của tín hiệu contentk đã nhận bởi nút i tại vòng lặp t đối với một khối nội dung k cụ thể.
3.) So sánh dt,i với Thresholdi (ngưỡng i). Nếu dt,i > Thresholdi, thì contentk
được xác định là một tín hiệu sâu.
4.) Chọn targett(i) (đích i) từ những láng giềng của nút i một cách ngẫu nhiễn.
Gửi cặp giá trị(contentk, 12 dt,i) tới đích target(i) và i (bản thân i).