Chúng tôi mong muốn đề xuất một thuật toán mới dựa trên hệ thống phân cấp cảnh báo của Nguyễn Dương Minh và kết quả nghiên cứu của Zou ,đề xuất của chúng tôi cho phép các dữ liệu quan sá
Trang 1BÁO CÁO THỰC TẬP CƠ SỞ
Nghiên cứu phương pháp mới trong phát hiện sâu mạng
Giáo viên phụ trách:Nguyễn Phương Anh Nhóm thực hiện gồm các thành viên:
Trang 2HỌC VIỆN KỸ THUẬT MẬT MÃ
KHOA AN TOÀN THÔNG TIN
ĐỀ TÀI THỰC TẬP CƠ SỞ
NGHIÊN CỨU PHƯƠNG PHÁP MỚI TRONG PHÁT HIỆN SÂU MẠNG Nhận xét của cán bộ hướng dẫn:
Điểm chuyên cần:
Điểm báo cáo:
Xác nhận của cán bộ hướng dẫn
Trang 3MỤC LỤC:
Giáo viên phụ trách:Nguyễn Phương Anh 1
Giáo viên phụ trách:Nguyễn Phương Anh 1
Giáo viên phụ trách:Nguyễn Phương Anh 1
Giáo viên phụ trách:Nguyễn Phương Anh 1
Mở đầu 1
Chương 1 Tổng quan 3
1.Đặt vấn đề 3
Worm – sâu máy tính ( gọi tắt là sâu) được hiểu như là một loại virus đặc biệt hay một chương trình độc hại Phương thức lây lan qua mạng là khác biệt cơ bản giữa virus và sâu Hơn nữa, sâu có khả năng lan truyền như chương trình độc lập mà không cần lây nhiễm qua tập tin Ngoài ra, nhiều loại sâu có thể chiếm quyền kiểm soát hệ thống từ xa thông qua các “lỗ hổng” mà không cần có sự “giúp sức” nào từ người dùng.Tuy nhiên, cũng có những trường hợp ngoại lệ như sâu Happy99, Melissa, LoveLetter, Nimda 3
2 Phát biểu bài toán 5 Cliff C.Zou đã phát hiện kịp thời trong việc đề xuất ra phương hướng tìm và tiêu diệt
“worm” thay vì để chúng bùng nổ, lây lan qua mạng bằng cách sử dụng thuật toán bộ lọc
Kalman Thuật toán này có thể lọc ra nhiễu tồn tại trong dữ liệu bị kiểm tra, giám sát để cảnh báo nguy cơ thông báo sai lệch Hơn nữa, đề xuất này được coi như một biện pháp chống trả và ngăn chặn sự phát tán “worm” Tuy nhiên, bởi vì đề xuất này được thảo luận chủ quan nên cấu trúc phân tầng của nó sẽ tạo ra những lỗi đơn lẻ nhất định và gây thiệt hại ngầm cho hệ thống thông tin.Những điều khiếm khuyết này sẽ cản trở sự phát triển môi trường sản xuất Do đó, Nguyễn Dương Minh đã ghé thăm lại nơi Zou làm việc.Minh hoàn toàn được tiếp cận và
dường như không có 1 lỗi đơn lẻ nào xảy ra Hơn nữa, hệ thống phân phối, tiếp cận và kiểm tra
dữ liệu giám sát cho mỗi trạm được gửi đi và xử lí quá trình trước Tuy nhiên, vấn đề ở đây là
dữ liệu bị kiểm tra không được lọc nhiễu trước khi gửi đến các trạm khác Do đó điều này có thể gây ra những thông báo sai lệch, khiến cho việc phát hiện “worm” chậm chạp hơn.
Trang 4Chúng tôi mong muốn đề xuất một thuật toán mới dựa trên hệ thống phân cấp cảnh báo của Nguyễn Dương Minh và kết quả nghiên cứu của Zou ,đề xuất của chúng tôi cho phép các dữ liệu quan sát trong mỗi màn hình được lọc nhiễu trước khi gửi đến các màn hình khác để khắc phục các vấn đề của hệ thống của Nguyễn Dương Minh Do hạn chế mô phỏng hệ thống của Nguyễn Dương Minh nên chúng tôi chỉ mô phỏng một mô hình mạng nhỏ với số lượng màn hình hạn chế Dựa trên hệ thống của Nguyễn Dương Minh, chúng tôi phát triển các hệ thống tự động có thể mô phỏng một mô hình mạng lớn Điều này làm cho phù hợp với hệ thống mạng lưới phân phối , mô phỏng của chúng tôi cho thấy rằng hệ thống của chúng tôi có thể phát hiện sâu nhanh hơn ba lần của Nguyễn Dương Minh Hơn nữa, chúng tôi so sánh trình tự quét sâu
và ngẫu nhiên quét sâu Kết quả là, quá trình quét tuần tự của địa chỉ IP là một kỹ thuật ít
thành công hơn so với một máy quét ngẫu nhiên 6
3.Qúa trình lây lan của sâu mạng 7
Một con sâu (worm) muốn lây nhiễm vào một máy thì trước tiên nó phải tìm hiểu xem máy đó còn tồn tại trên mạng hay không.Quá trình lan truyền thực sự của sâu trên Internet là một quá trình phức tạp Vậy sâu mạng sẽ lây lan qua 3 giai đoạn : 7
Chương 2.Giải quyết vấn đề 7
1.Thuật toán Kalman Filter 7
2.Sâu máy tính(Worm) 12
3.Phương pháp phát hiện và ngăn chặn sâu mạng trong giai đoạn đầu 16
4.Thuật toán 21
Chương 3 Mô phỏng và Kết quả 27
1 Mô phỏng 27
2.Demo 29
3 Kết quả 33
.36
.36
Kết luận 36 Hầu hết sâu mạng hiện nay xác định máy dễ bị lây nhiễm qua sự thăm dò ngẫu nhiên của miền địa chỉ, cũng như internet càng ngày càng trở nên phổ biến với máy móc, hay sâu mạng sẽ có khả năng lan rộng nhanh và nhanh hơn nữa.vì vậy, chúng ta cần diệt sâu
Trang 5mạng sớm nhất có thể Trong đề tài này, chúng tôi xem lại những vấn đề của tìm hiểu worm đề cập trong tài liệu của Nguyen Duong Minh, nhưng trong bối cảnh mô hình mạng lứơi máy chủ lớn hơn Mô phỏng của chúng tôi chỉ ra triển khai màn hợp tác với các dữ liệu quan sát lọc nhiễu trước khi xử lí có thể để chúng tôi phát hiện dấu hiệu có sâu nhanh hơn khoảng ba lần so với không lọc nhiễu 36
Trang 6
Mở đầu
Công nghệ thông tin là một trong những ngành phát triển trọng điểm của nhiều Quốc gia trên Thế giới bởi các ứng dụng của nó Cùng với công nghệ thông tin; mạng Internet cũng đã, đang và sẽ đóng góp rất nhiều trong công cuộc phát triển của xã hội loài người Ngày nay mọi hoạt động của con người hầu như đều có thể thực hiện qua mạng Internet Internet đã đem lại lợi ích cho nhiều người sử dụng, khai thác nó Cùng với những lợi ích to lớn mà Internet đem lại; cũng nảy sinh những vấn đề phức tạp Các thông tin cá nhân, thông tin kinh tế, chính trị và quân sự quan trọng của các tổ chức, các Quốc gia đều có nguy cơ bị lộ hoặc bị đánh cắp Tài khoản ngân hàng, các hệ thống lưu trữ, cơ sở dữ liệu quan trọng bị tấn công, phá hoại… nhiều cuộc tấn công của các tin tặc
đã gây thiệt hại hàng tỷ đô la
Một trong những cách thức tấn công nguy hiểm của các tin tặc trên mạng Internet hiện nay đó là dùng các loại sâu máy tính - Worm Không giống với virus thời "nguyên thủy", worm không cần đến các tập tin "mồi" để lây nhiễm Chúng tự phát tán trong 1 thời gian rất ngắn và bắt đầu tàn phá Internet trong tích tắc chính vì vậy, ngăn chặn loại
bỏ “ worm” luôn là 1 vấn đề nhức nhối trong cộng đồng mạng Internet.”Worm được kết hợp với một số kỹ thuật tấn công khác sẽ tạo ra một công cụ tấn công rất mạnh của các tin tặc.Làm sao để chúng ta phát hiện được máy tính của mình có bị worm xâm nhập hay
không? Để làm rõ hơn điều đó dưới sự hướng dẫn của cô Nguyễn Phương Anh cũng như sự góp ý từ các thầy cô trong khoa chúng em xin phép được đề xuất đề tài: ”Nghiên
đề tài nhưng đây là một lĩnh vực còn khá mới lạ và đang phát triển mạnh nên còn nhiều thiếu sót Chúng em rất mong được tiếp nhận những ý kiến, nhận xét từ quý thầy cô Chúng em xin chân thành cảm ơn!
Trang 7Sinh viên của thực hiện:
Trang 8Chương 1 Tổng quan
1.Đặt vấn đề
Worm – sâu máy tính ( gọi tắt là sâu) được hiểu như là một loại virus đặc biệt hay một chương trình độc hại Phương thức lây lan qua mạng là khác biệt cơ bản giữa virus và sâu Hơn nữa, sâu có khả năng lan truyền như chương trình độc lập mà không cần lây nhiễm qua tập tin Ngoài ra, nhiều loại sâu có thể chiếm quyền kiểm soát hệ thống từ xa thông qua các “lỗ hổng” mà không cần có sự “giúp sức” nào từ người dùng.Tuy nhiên, cũng có những trường hợp ngoại lệ như sâu Happy99, Melissa, LoveLetter, Nimda
Trên thực tế khái niệm worm máy tính lần đầu tiên được nhắc tới vào năm 1975 trong cuốn tiểu thuyết John Brunner,The Shockwave Rider.Trong cuốn tiểu thuyết này,tác giả Nichias đã mô tả thiết kế và đặt ra một worm có chức năng thu thập dữ liệu (data-gathering) ,những người vận hành một trang web thông tin điện tử quốc gia:”Bạn
có worm lớn nhất tàng hình ở trên mạng ,và nó sẽ tự động phá hoại mọi nỗ lực để thu thập,giám sát nó.”
Vào ngày 2/11/1988,ông Robert Tappan Moris ,ở trường đại học khoa học máy tính Cornell,đã tung ra worm đầu tiên được gọi là sâu Morris.Nó đã thâm nhập lây lan trên một số lượng lớn các máy tính sau đó trên Internet Người ta thống kê rằng có khoảng 6.000 máy tính chạy Unix đã bị nhiễm sâu Morris Mỹ đã ước tính thiệt hại vào khoảng
từ 10 đến 100 triệu đô la
Vì những ảnh hưởng cũng như hậu quả mà worm để lại mà chúng ta đã có những biện pháp ngăn chặn và các chiến lược loại bỏ “worm” cổ điển tuy nhiên nó thường không hiệu quả đối với mạng diện rộng Một trong những giải pháp không hữu hiệu nhất là sửa chữa các vấn đề mà “Worm” đã từng gây ra bởi việc tự nhân bản Tuy nhiên, giải pháp này không phải lúc nào cũng được thực thi bởi vì sự mở rộng lỗ hổng thông tin luôn đi
Trang 9kèm với sự gia tăng các phần mềm độc hại mà người dùng không hề hay biết rằng nó đã được tự động cài đặt trong máy tính.
Tường lửa, hệ thống phát hiện xâm hại và phần mềm diệt virus cũng là các giải pháp được áp dụng Phần mềm diệt virus có thể tự phát hiện và loại bỏ “worm” 1 cách hiệu quả dựa trên những tín hiệu thông báo phần mềm độc hại Tường lửa được sử dụng để ngăn chặn sự phát tán virus giữa các host bị xâm hại và các host chưa bị ảnh hưởng bằng cách thiết lập những giới hạn nhất định Hệ thống phát hiện xâm hại cung cấp sự giám sát
và gửi các hành động bất thường đến trạm quản lý
Do đó, tường lửa, hệ thống phát hiện xâm hại và phần mềm diệt virus luôn phát hiện
và loại bỏ thành công các phần mềm virus phát tán trong máy tính ban đầu Cho nên, việc phát triển, nâng cấp hệ thống tự động tiêu diệt virut ngay sau khi chúng vừa phát tán là rất quan trọng
Các giai đoạn phát triển của sâu máy tính:
• Giai đoạn 1: ( năm 1979 đến đầu những năm 1990)
• Giai đoạn 2: (đầu những năm 1990 đến năm 1998)
• Giai đoạn 3: (từ năm 1999 đến năm 2000)
• Giai đoạn 4: (từ năm 2001 đến nay)
Trang 102 Phát biểu bài toán
Trang 11Cliff C.Zou đã phát hiện kịp thời trong việc đề xuất ra phương hướng tìm và tiêu diệt “worm” thay vì để chúng bùng nổ, lây lan qua mạng bằng cách sử dụng thuật toán bộ lọc Kalman Thuật toán này có thể lọc ra nhiễu tồn tại trong dữ liệu bị kiểm tra, giám sát để cảnh báo nguy cơ thông báo sai lệch Hơn nữa, đề xuất này được coi như một biện pháp chống trả và ngăn chặn sự phát tán “worm” Tuy nhiên, bởi vì đề xuất này được thảo luận chủ quan nên cấu trúc phân tầng của nó sẽ tạo ra những lỗi đơn lẻ nhất định và gây thiệt hại ngầm cho hệ thống thông tin.Những điều khiếm khuyết này sẽ cản trở sự phát triển môi trường sản xuất Do đó, Nguyễn Dương Minh đã ghé thăm lại nơi Zou làm việc.Minh hoàn toàn được tiếp cận và dường như không có 1 lỗi đơn lẻ nào xảy ra Hơn nữa, hệ thống phân phối, tiếp cận và kiểm tra dữ liệu giám sát cho mỗi trạm được gửi đi và xử lí quá trình trước Tuy nhiên, vấn đề ở đây là dữ liệu bị kiểm tra không được lọc nhiễu trước khi gửi đến các trạm khác Do đó điều này có thể gây ra những thông báo sai lệch, khiến cho việc phát hiện “worm” chậm chạp hơn.
Chúng tôi mong muốn đề xuất một thuật toán mới dựa trên hệ thống phân cấp cảnh báo của Nguyễn Dương Minh và kết quả nghiên cứu của Zou ,đề xuất của chúng tôi cho phép các dữ liệu quan sát trong mỗi màn hình được lọc nhiễu trước khi gửi đến các màn hình khác để khắc phục các vấn đề của hệ thống của Nguyễn Dương Minh Do hạn chế mô phỏng hệ thống của Nguyễn Dương Minh nên chúng tôi chỉ mô phỏng một mô hình mạng nhỏ với số lượng màn hình hạn chế Dựa trên
hệ thống của Nguyễn Dương Minh, chúng tôi phát triển các hệ thống tự động có thể
mô phỏng một mô hình mạng lớn Điều này làm cho phù hợp với hệ thống mạng lưới phân phối , mô phỏng của chúng tôi cho thấy rằng hệ thống của chúng tôi có thể phát hiện sâu nhanh hơn ba lần của Nguyễn Dương Minh Hơn nữa, chúng tôi so sánh trình tự quét sâu và ngẫu nhiên quét sâu Kết quả là, quá trình quét tuần tự của địa chỉ IP là một kỹ thuật ít thành công hơn so với một máy quét ngẫu nhiên
Trang 123.Qúa trình lây lan của sâu mạng.
Một con sâu (worm) muốn lây nhiễm vào một máy thì trước tiên nó phải tìm hiểu xem máy đó còn tồn tại trên mạng hay không.Quá trình lan truyền thực sự của sâu trên Internet là một quá trình phức tạp Vậy sâu mạng sẽ lây lan qua 3 giai đoạn :
Giai đoạn 1 :Lây lan nhanh theo cấp số mũ.ở giai đoạn này là quan trọng nhất,buộc
phải phát hiên ra sâu mạng ngay trong thời gian này chứ không để sang giai đoạn 2 được
vì ở giai đoạn này thì sâu sẽ chưa gây ra rủi ro cũng như thiệt hại gì nhiều
Sâu internet (worm) phát triển theo cấp số mũ Trong khi virus máy tính bám vào
và trở thành một phần của mã máy tính để có thể thi hành thì sâu máy tính lại là một chương trình độc lập không nhất thiết phải là một phần của một chương trình máy tính
Giai đoạn 2: Lây lan theo tuyến tính:ở giai đoạn này mức độ lây lan đã được giảm
xuống và đã lây lan gần hết
Giai đoạn 3: Lây lan theo hằng số (ở giai đoạn này quá trình lây lan là rất ít).
Chương 2.Giải quyết vấn đề
1.Thuật toán Kalman Filter
Có ba yêu cầu đối với bất kỳ thuật toán phát hiện sâu: tốc độ, độ chính xác và tỷ lệ dương tính giả phải được giữ ở mức tối thiểu Trong phần này, chúng tôi sẽ giải thích chi tiết về thuật toán Kalman Filter như một thuật toán phát hiện sâu
1.1 Giới thiệu
Trước tiên tên Kalman là tên của người nghĩ ra bộ lọc này Vào năm 1960, R.E Kalman đã công bố bài báo nổi tiếng về một giải pháp truy hồi để giải quyết bài tóan lọc thông tin rời rạc tuyến tính (discrete data linear filtering) Tên đầy đủ của bài báo là "A New Approach to Linear Filtering and Prediction Problems" Từ đó đến nay cùng với sự phát triển của tính tóan kỹ thuật số, bộ lọc Kalman đã trở thành chủ đề nghiên cứu sôi nổi
Trang 13và được ứng dụng trong nhiều ngành kỹ thuật công nghệ khác nhau: trong tự động hóa, trong định vị cũng như trong viễn thông (và nhiều lĩnh vực khác nữa)
Một cách khái quát, bộ lọc Kalman là một tập hợp các phương trình tóan học mô tả một phương pháp tính tóan truy hồi hiệu qủa cho phép ước đoán trạng thái của một quá trình (process) sao cho trung bình của độ lệch (giữa giá trị thực và giá trị ước đóan) là nhỏ nhất Bộ lọc Kalman rất hiệu quả trong việc ước đóan các trạng thái trong quá khứ, hiện tại và tương lai, thậm chí ngay cả khi tính chính xác của hệ thống mô phỏng không được khẳng định Các bộ lọc Kalman là 1 bộ lọc tối ưu
1.2 Thông tin chung
Các bộ lọc Kalman là một thuật toán xử lý phương trình đệ quy Điều này có nghĩa rằng nó không cần phải lưu trữ tất cả các phép đo trước và tái xử lý tất cả các dữ liệu mỗi bước thời gian nhưng chỉ có phương trình ước tính từ các bước thời gian trước
đó để tính dự toán cho các nguyên tắc hiện hành Đây là một trong những lợi thế của bộ lọc Kalman Để ước tính hệ thống phương trình, các thuật toán lọc Kalman sử dụng một loạt các dữ liệu đo lường thêm giờ, có nhiễu và khác không chính xác và căn cứ trên mô hình hệ thống Điều này được thể hiện trong hình 1
Trang 14Hình trên mô hình hóa hoạt động của mạch lọc Kalman Chúng ta có tín hiệu đo được, chúng ta có mô hình của tín hiệu đo được (đòi hỏi tuyến tính) và sau đó là áp dụng vào trong hệ thống phương trình của mạch lọc để ước lượng trạng thái quan tâm Thực ra tín hiệu đo là không khó, phương trình đã có sẵn, cái chúng ta cần chính là mô hình hoá
hệ thống Để có thể ứng dụng một cách hiểu quả mạch lọc Kalman thì chúng ta phải mô hình hóa được một cách tuyến tính sự thay đổi của trạng thái cần ước lượng (estimate) hoặc ước đoán (predict)
Các thành phần cơ bản của mô hình bộ lọc Kalman là những trạng thái hệ thống và
mô hình hệ thống: Các trạng thái hệ thống chứa các biến của phương trình mà đại diện cho mức độ của sự tự do Các biến trong vector trạng thái không thể đo trực tiếp để chúng tôi cần phải ước lượng "tối ưu" từ dữ liệu đo lường Các bộ lọc Kalman có nhiều ứng dụng trong kỹ thuật và hàng không về lĩnh vực dự toán
1.3 Thuật toán Kalman Filter
Các bộ lọc Kalman bao gồm hai bước sau: dự đoán là bước đầu tiên của bộ lọc
Kalman và bước điều chỉnh, tình trạng dự đoán được cải thiện dựa trên các dữ liệu đo lường Điều này được thể hiện trong hình 2
Trạng thái ở thời gian k-1 Dự đoán trạng thái ở thời gian k
Dữ liệu đo lượng tại thời gian
k Chỉnh sửa trạng thái ở thời gian k
Trang 15Chúng tôi cho rằng để được sửa lỗi của trạng thái ở thời gian k Kể từ đó, chúng
tôi có một lỗi ước tính khắc phục như:
Từ đó, Xk được tính bằng:
Xk = Kk * (Zk - Hk * )
Kk= Pk- HT (H Pk-HT + R)-1
Trang 16Uk= (Zk - Hk * ): đo lường dư
Dữ liệu sau đó, chúng tôi đã khắc vào thời gian k:
Z’k= Zk – Uk= Hk * (3) Cuối cùng các trạng thái điều chỉnh thu được bằng
Trang 172.Sâu máy tính(Worm)
Bước đầu tiên trong việc phát hiện một con sâu hoạt động là để hiểu làm thế nào sâu hoạt động tuyên truyền, và để phát triển một mô hình tuyên truyền nói chung có thể được sử dụng như là điểm khởi đầu cho các thuật toán phát hiện Trong chương này, chúng tôi đầu tiên thảo luận sâu Internet nói chung, tập trung vào những khía cạnh rất quan trọng cho việc xem xét trong đề tài này Sau khi phân tích sâu rộng của sâu Internet, chúng ta quan tâm trong nghiên cứu được công bố về việc phát hiện và ngăn chặn sâu Trong phần 3.3 và 3.4 chúng tôi xem xét lại những phát hiện được công bố phương pháp sâu mà chúng tôi sử dụng cho đề tài của chúng tôi
Trang 182.1.Sâu (Worm)
Một vius là một chương trình độc hại lây lan bằng cách sử dụng kỹ thuật nhân bản
mà thường đòi hỏi sự can thiệp của người dùng.Khác với virut, một sâu Internet đang hoạt động là phần mềm độc hại tự chủ lây lan từ máy chủ đến máy chủ, tích cực tìm kiếm
lỗ hổng , hệ thống dễ bị lây nhiễm Vì vậy, sâu lây lan nhanh hơn so với virus Những con sâu đáng chú ý nhất bao gồm Morris, Code Red và Code Red II, Nimda, Slapper, và sâu Sapphire / Slammer và gần đây, SoBig.F, Blaster gọi là MSBlast, và MydoomSome Những con sâu này đã gây ra sự gián đoạn lớn cho mạng lưới toàn cầu Năm 2003, sâu Sobig.F nhiễm hàng triệu máy tính.Sâu Sobig gây ảnh hưởng vô cùng lớn
Bill Gates "billy tại sao bạn có thể làm điều này? Hãy dừng việc kiếm tiền và sửa chữa phần mềm của bạn!! "Sau vài giờ, sâu MSBlast đạt gần 7000 máy tính Sáu tháng sau, con số này là thực sự khủng khiếp, 25 triệu máy tính bị nhiễm Đặc biệt đối với Code Red, Code Red đã được phát hành vào Thứ Sáu, Tháng bảy 13, năm 2001 Sau một tháng, máy bị nhiễm sẽ cố gắng để khởi động từ chối dịch vụ trên nhiều địa chỉ IP, bao gồm địa chỉ IP của trang web chính thức của chính phủ Hoa Kỳ Code Red gây ra 2 tỷ $ thiệt hại tổng cộng và 200 triệu $ hàng ngày Trong đề tài này, chúng tôi sử dụng con sâu Code-Red là một loại sâu nhiễm ngẫu nhiên cho mô phỏng của chúng tôi
2.2 Phân loại sâu internet- Worm
Trong những năm gần đây, có hai loại chính của sâu: sâu quét và sâu email
Trang 19đó có thể truyền nhanh hơn nhiều so với sâu email Sâu quét đã sử dụng các thuật toán quét khác nhau cho các “nạn nhân” của họ Dưới đây là một danh sách các chiến lược chức năng quét cũng được trình bày trong [15].
Danh sách: tạo ra một danh sách mục tiêu trước khi lây lan sâu sẽ diễn ra Một danh sách mục tiêu có thể đạt được trước bởi kẻ tấn công Đây là một lợi thế lớn của sâu quét
vì sự lây nhiễm của một số lượng lớn các máy chủ trong thời gian ngắn là một trong những phần quan trọng nhất của một con sâu phân chia thành công và lan rộng
Quét ngẫu nhiên: tìm kiếm địa chỉ IP dễ bị lây nhiễm Trình tự các địa chỉ IP quét là ngẫu nhiên Worms sử dụng kỹ thuật này là thành công đáng kể và đã lây lan rất nhanh Quét tuần tự: Các chức năng quét tuần tự của địa chỉ IP thông thường là một kỹ thuật ít thành công hơn so với một máy quét ngẫu nhiên Mỗi máy chủ bị nhiễm quét toàn
bộ IP không gian theo tuần tự từ một điểm khởi đầu đã chọn
Quét cục bộ: quét các máy theo từng vùng riêng rẽ
Hoán vị quét: quét ngẫu nhiên có thể tạo quét trùng lặp Để khắc phục vấn đề này, hoán vị quét giả định rằng một con sâu quét có thể phát hiện một mục tiêu cụ thể đã bị nhiễm Bất cứ khi nào các con sâu nhìn thấy một máy đã bị nhiễm, nó chọn một điểm khởi đầu mới ngẫu nhiên và tiền thu được từ đó
2.3 Tuyên truyền Worm mẫu
Các phương tiện mà tuyên truyền xảy ra cũng có thể ảnh hưởng đến tốc độ lây lan và
khả năng đánh cắp thông tin của sâu mạng Trong đề tài này, chúng tôi tập trung nghiên cứu vào sâu quét Giả sử rằng có một số máy bị nhiễm trong hệ thống Sau đó, sâu có thể truyền theo ba bước sau:
Bước 1: thu mục tiêu: bằng cách sử dụng địa chỉ IP, hệ thống tập tin nhiễm sâu tìm host khác như mục tiêu để lây nhiễm
Trang 20Bước 2: nỗ lực lây nhiễm: bởi hệ thống tập tin mạng, lệnh từ xa vỏ tức là đang giao cho nhắm mục tiêu.
Bước 3: tuyên truyền sâu: để hoàn thành công tác tuyên truyền sâu, mã phải được thực hiện bởi khách hàng web, gọi trực tiếp từ dòng lệnh ví dụ để quản tuyên truyền sâu, các nghiên cứu mô hình lây lan sâu diễn ra
Các mô hình dịch được hiển thị dưới đây: một máy chủ duy nhất được chỉ định trạng thái khả năng có thể bị nhiễm sâu hoặc tình trạng nhiễm trùng hoặc trạng thái gỡ
bỏ Việc chuyển đổi giữa các trạng thái được đưa ra dưới đây Việc chuyển đổi áp dụng cho tình trạng của một máy chủ cho chỉ có một nhiễm trùng partivular:
susceptible infective ( nhiễm trùng ) infective removed( vá hoặc ngắt kết nối)
susceptible removed ( hệ thống không bị nhiễm vá) infective susceptible: (máy chủ bị 1 nhiễm loại br nhưng không được
vá )
removed susceptible (nếu máy chủ được kết nối lại được)
removed infective ( nếu một máy chủ bị nhiễm được kết nối lại)
giai đoạn khởi đầu chậm chạp Các máy trong hệ thống được chia thành hai nhóm: host
dễ bị lây nhiễm, host lây nhiễm Điều đó có nghĩa, chúng ta chỉ có chuyển đổi trạng thái:
dễ bị lây nhiễm lây nhiễm Các mô hình dịch đơn giản [8] là:
=ßI(t)S(t) (4)
Trong đó S(t)=N-It; I(t) là số lượng host nhiễm tại thời điểm t N là số lượng host được xem xét β là tỷ lệ cặp nhiễm trong các nghiên cứu dịch bệnh [8] Theo [8], (1) có các giải pháp [7]:
Trang 21It = (1+α ∆) It-1 - β∆ I 2
t-1 (5) Trường hợp Δ được theo dõi khoảng thời gian, α = β N: tỷ lệ nhiễm trùng Bởi vì N là lớn, trong giai đoạn khởi Nó << N Vì vậy, đó S (t) = N-It ~ N, sau đó (1) trở thành:
lnIt = t ∆ α + lnI0 (8)
Chúng tôi sẽ sử dụng các mô hình đơn giản dịch (5), AR mô hình hàm mũ (7) và chuyển đổi mô hình tuyến tính (8) cho Kalman thuật toán lọc để phát hiện sâu [7]
3.Phương pháp phát hiện và ngăn chặn sâu mạng trong giai đoạn đầu
Chúng ta có thể phân vùng lan truyền của một con sâu làm ba giai đoạn [7]: giai đoạn khởi đầu tốc độ chậm, giai đoạn lây lan nhanh, và giai đoạn kết thúc chậm Phát hiện và ngăn ngừa sâu ở giai đoạn đầu là cần thiết để giảm thiệt hại rất lớn của họ Nhiều nghiên cứu đã được đề xuất để phát hiện và ngăn chặn các sâu mạng ở giai đoạn sớm Trong chương này, chúng ta thấy những gì chúng ta có thể tìm thấy trong việc phát hiện sớm và ngăn chặn các lĩnh vực nghiên cứu sâu mạng ngày nay
3.1 Các hệ thống độc lập.
Đã có nhiều phương pháp được thiết kế để ngăn chặn và phát hiện nhiễm sâu trong một mạng doanh nghiệp Shigang Chen đề xuất "một hệ thống cảnh báo sớm sâu mạng" [3] trong đó tập trung vào sâu dựa trên TCP và dựa trên các gói tin TCP RESET để tìm ra nguồn quét Bằng cách sử dụng Honeypots để nắm bắt các dấu hiệu tấn công, Goufei [5]
Trang 22Gu trình bày "một thuật toán phát hiện sâu mạng" mà sử dụng chức năng quét mẫu và mô hình lây nhiễm để xác định hành vi của con sâu nạn nhân S Sidiroglou đề xuất một cơ chế đầu tiên phản ứng điểm kết thúc mà cố gắng để tự động sửa lỗi phần mềm dễ bị lây nhiễm bằng cách xác định và chuyển đổi mã xung quanh các lỗ hổng phần mềm khai thác [10] S Chen đề xuất một hệ thống phòng thủ [11] mà chia tách các host nhiễm sâu từ các host bình thường dựa trên sự khác biệt về hành vi của họ N Weaver trình bày một phương pháp ngăn chặn các chức năng quét sâu để chặn thông tin liên lạc từ máy đáng ngờ [12] Những hệ thống độc lập chịu những bất lợi của việc dựa trên sự quan sát trực tiếp của luồng tấn công vào mạng lưới cục bộ trước khi ban hành cảnh báo sâu Vì vậy,
họ có một thời gian phản ứng quyết liệt chậm hơn để tấn công của sâu gây ra không có khả năng để thực hiện các biện pháp đối phó phủ đầu Hơn nữa, vì ngăn ngừa lây nhiễm sâu trong một mạng lưới cục bộ, họ là những khó khăn trong việc ảnh hưởng đến công tác tuyên truyền toàn cầu của một con sâu trong một cách có ý nghĩa
3.2 Các hệ thống hợp tác được xây dựng dựa trên mô hình tập trung và mô hình