1. Trang chủ
  2. » Luận Văn - Báo Cáo

Ứng dụng bản đồ tự tổ chức self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ

85 715 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Ứng Dụng Bản Đồ Tự Tổ Chức Self Organizing Map (Som) Nhằm Phát Hiện Tấn Công Web Server Qua Hành Vi Luận Văn Thạc Sĩ
Trường học Trường Đại Học Công Nghệ Thông Tin
Chuyên ngành Công Nghệ Thông Tin
Thể loại Luận văn
Định dạng
Số trang 85
Dung lượng 2,12 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tuy nhiên song song với những thuận lợi đó, chúng ta phải đối mặt với nhiều thách thức, một trong những thách thức đó là virus, tấn công, xâm nhập, … Do đó các kỹ thuật phát hiện tấn côn

Trang 1

MỞ DẦU

Internet ra đời thực sự là một cuộc cách mạng vĩ đại về công nghệ, internet không chỉ kết nối hàng tỉ người trên thế giới lại với nhau, mà còn là một thư viện bách khoa khổng lồ của nhân loại Giờ đây chúng ta có thể tìm bất cứ thông tin gì trên internet chỉ bằng vài từ khóa Tuy nhiên song song với những thuận lợi đó, chúng ta phải đối mặt với nhiều thách thức, một trong những thách thức đó là virus, tấn công, xâm nhập, … Do đó các kỹ thuật phát hiện tấn công, xâm nhập ngày càng được quan tâm và chú trọng phát triển Thực tế, đã có nhiều phương pháp và các cách để tăng cường tính bảo mật và an toàn thông tin cho một hệ thống mạng, phải

kể đến trong đó là việc triển khai Firewall, đồng thời kết hợp với các chương trình diệt virus, trojan, Và một thành phần tác giả muốn đề cập đến ở đây là hệ thống phát hiện xâm nhập (IDS) sử dụng công nghệ phát hiện tấn công, xâm nhập Tuy ra đời chưa lâu nhưng nó đã giúp cho việc xử lí các bài toán công nghệ thông tin Phương pháp được áp dụng trong luận văn là ứng dụng bản đồ tự tổ chức-Self Organizing Map (SOM) phát hiện tấn công, xâm nhập dựa vào hành vi Phương pháp này có khả năng phát hiện tấn công, xâm nhập, virus,… thông qua hành vi đã biết trước đó Chúng không loại trừ những phương pháp nhận dạng tấn công dựa vào mẫu tấn công đã biết truyền thống, mà chỉ thêm vào một kênh hữu ích cho người quản trị mạng biết được những tấn công bất thường đang diễn ra trong hệ thống mạng của mình

Luận văn xây dựng và triển khai với những phần như: bắt gói dữ liệu trên mạng xây dựng và gán các thông số đặc trưng, huấn luyện dữ liệu, dò tìm tấn công online va offline

Mặc dù có nhiều cố gắng nhưng không tránh khỏi trong luận văn còn nhiều thiếu sót và hạn chế do nhiều yếu tố như: thời gian, kỷ thuật, tài chính… Hy vọng thời gian sắp tới tác giả có nhiều thời gian để phát triển thêm luận văn này Rất mong sự góp ý của quý Thầy cô và các anh chị đồng nghiệp

Trang 2

CHƯƠNG 1: TỔNG QUAN

 Nội dung của chương 1: Trình bày tổng quan “Hệ thống phát hiện xâm nhập”, phân loại IDS, giới thiệu ưu điểm và nhược điểm của từng loại IDS Đồng thời, chương này nêu lên mục đích, nội dung và những đóng góp của đề tài

1.1 Giới thiệu

Với sự phát triển nhanh chóng của internet, tính đến tháng 01/2011 thế giới

đã có hơn 2 tỷ người sử dụng internet, Việt Nam có hơn 27 triệu người dùng internet (31,7% dân số); nhiều công cụ hướng dẫn tấn công, xâm nhập hệ thống mạng máy tính có sẵn trên internet và dễ sử dụng hơn Bên cạnh đó sâu máy tính, virus, spyware, trojan horse,… với tốc độ xuất hiện mới ngày càng nhanh Những vấn đề trên làm cho an toàn hệ thống mạng được quan tâm hơn bao giờ hết Trong

đó, phát hiện tấn công xâm nhập được chú trọng nghiên cứu nhiều nhất từ các nhà khoa học, an ninh mạng, điển hình là Hội nghị quốc tế RAID (Recent Advances in Intrusion Detection) về phát hiện tấn công xâm nhập mỗi năm tổ chức đều đặn, và lần thứ 14 diễn ra tại Menlo Park, California, USA vào tháng 09-2011 [13]

Hình 1.1: Số Web Server bi tấn công từ năm 2003 đến 2011

Ngày nay các công ty phải đối mặt với nhiều vấn đề bảo mật và các cuộc tấn công ngày càng tinh vi hơn Những nguy hiểm này có thể từ bên ngoài hay từ các nhân viên trong công ty Các công ty phải có các biện pháp bảo vệ sự toàn vẹn, tính

Trang 3

bảo mật, tính sẵn sàng của dữ liệu trong hệ thống, trong khi vẫn phải xây dựng kết nối tới hệ thống các chi nhánh

Việc phát hiện các cuộc tấn cơng hay xâm nhập dựa vào các hành vi “bất thường” trong hoạt động của máy chủ Web là một trong những hướng nghiên cứu

đã và đang được rất nhiều chuyên gia quan tâm Cách thức phân biệt giữa một hoạt động “bình thường” hay “bất thường” rất phức tạp Các nhà nghiên cứu đã áp dụng nhiều thuật tốn khác nhau trong lĩnh vực “Trí tuệ nhân tạo” như: Mơ hình Markov

ẩn, Nạve Bayesian, thuật tốn di truyền… để giải quyết một số khía cạnh của bài tốn trên: lọc thư điện tử spam, dị tìm spyware, trojan

Đề tài này đề xuất một hướng nghiên cứu: ứng dụng thuật tốn Bản đồ tự tổ chức – Self Organizing Map (SOM) để phát hiện tấn cơng Máy chủ Web thơng qua hành vi đã biết

1.2 Hệ thống phát hiện xâm nhập IDS (Intrusion Detecsion Systems)

Hệ thống phát hiện xâm nhập IDS là một hệ thống giám sát lưu thơng mạng,

các hoạt động khả nghi và cảnh báo cho hệ thống, nhà quản trị Ngồi ra IDS cũng đảm nhận việc phản ứng lại với các lưu thơng bất thường hay cĩ hại bằng cách hành động đã được thiết lập trước như khĩa tài khoản người dùng hay địa chỉ IP nguồn

đĩ truy cập hệ thống mạng, …

IDS cũng cĩ thể phân biệt giữa những tấn cơng từ bên trong (từ những người trong cơng ty) hay tấn cơng từ bên ngồi (từ các hacker) IDS phát hiện dựa trên các dấu hiệu hành vi đặc biệt về các nguy cơ tấn cơng, xâm nhập đã biết (giống như cách các phần mềm diệt virus dựa vào các dấu hiệu đặc biệt để phát hiện và diệt virus) hay dựa trên so sánh lưu thơng mạng hiện tại với thơng số đo đạc chuẩn của

hệ thống (baseline ) để tìm ra các dấu hiệu khác thường

Ngồi ra cịn cĩ hệ thống phịng chống xâm nhập IPS (Intrusion Prevention System) là một kỹ thuật an ninh mới, kết hợp các ưu điểm của kỹ thuật tường lửa

Trang 4

với hệ thống phát hiện xâm nhập IDS Hệ thống IPS có khả năng phát hiện các cuộc

tấn công và tự động ngăn chặn các cuộc tấn công đó

Hình 1.2: Mô hình hoạt động của 1 hệ thống IDS

1.3 Phân loại IDS

Tùy vào việc quan sát và nơi đặt mà IDS được phân thành 2 loại khác nhau:

1.3.1 Hệ thống phát hiện xâm nhập mạng - Network based IDS (NIDS )

Hệ thống phân tích tải mạng để so sánh dữ liệu hiện tại với cơ sở dữ liệu đã biết của các dấu hiệu tấn công vào hệ điều hành và ứng dụng Khi phát hiện dấu

hiệu “bất thường”, NIDS có thể phản ứng lại bằng cách ghi hiện trạng, cảnh báo nhà

quản trị, chấm dứt phiên làm việc (session) đó và có thể đưa vào tường lửa

* Ưu điểm:

o Quan sát được những trao đổi, các kết nối mạng…

o Quản lý được cả một network segment (gồm nhiều host)

o Cài đặt và bảo trì đơn giản, không ảnh hưởng tới mạng

o Tránh DoS ảnh hưởng tới một host nào đó

o Có khả năng xác định lỗi ở tầng Network (trong mô hình OSI)

* Nhược điểm:

o Khó quan sát được nội dung các gói dữ liệu mạng đã được mã hóa

Trang 5

o Có thể xảy ra trường hợp báo động giả (false positive), tức không có tấn công xâm nhập mà NIDS báo là có tấn công xâm nhập

o NIDS đòi hỏi phải được cập nhật các signature mới nhất để thực sự an toàn

1.3.2 Hệ thống phát hiện xâm nhập máy chủ – Host based IDS (HIDS)

Hệ thống phân tích nhật kí của hệ điều hành và ứng dụng của hệ thống Sau

đó, nó so sánh sự kiện với cơ sở dữ liệu “bất thường” đã biết Hệ thống xem xét nhật kí của hệ điều hành, nhật kí truy nhập, nhật kí của ứng dụng, cũng như các chính sách của ứng dụng do người dùng định nghĩa Nếu hệ thống thấy có vi phạm,

nó có thể phản ứng bằng cách ghi lại hành động đó, cảnh báo cho nhà quản trị và trong một số trường hợp có thể ngừng hành động ngay lập tức

Ưu điểm:

o Quan sát được những gì đang thực sự diễn ra trên máy tính

o Có khả năng xác định user liên quan tới một sự kiện nào đó

o Có thể phân tích các dữ liệu mã hoá

o Cung cấp các thông tin về host trong lúc cuộc tấn công diễn ra trên host này

Nhược điểm:

o Không biết được trạng thái hoạt động của toàn mạng

o HIDS phải được thiết lập trên từng host cần giám sát

o HIDS không có khả năng phát hiện các cuộc dò quét mạng (Nmap, Netcat…)

o HIDS cần tài nguyên trên host để hoạt động

o HIDS có thể không hiệu quả khi bị DoS

Tùy theo phương pháp phát hiện tấn công, xâm nhập mà có thể phân hai loại Host-based IDS và Network-based IDS ra những loại nhỏ hơn Phương pháp truyền

Trang 6

thống về phát hiện tấn công, xâm nhập dựa trên việc lưu lại các mẫu đã biết của các cuộc tấn công, chúng so sánh các đặc trưng kết nối mạng với mẫu tấn công để phát hiện ra tấn công xâm nhập

1.4 Cơ chế hoạt động của một IDS

Có hai cách tiếp cận cơ bản đối với việc phát hiện và phòng chống xâm nhập là: phát hiện sự lạm dụng (Misuse Detection) và phát hiện sự bất thường (Anomaly Detection)

Misuse Detection: hệ thống sẽ phát hiện sự tấn công xâm nhập bằng tìm

kiếm các hành động tương ứng với các kỹ thuật tấn công xâm nhập đã được biết đến dựa trên các dấu hiệu (Signatures) hoặc các điểm dễ bị tấn công của hệ thống

Anomaly Detection: hệ thống phát hiện tấn công xâm nhập bằng cách tìm

kiếm cách hành động khác với hành vi thông thường của người dùng hệ thống

Hình 1.3: Sự khác nhau giữa Misuse Detection và Anomaly Detection

1.4.1 Misuse based IDS - Hệ thống phát hiện xâm nhập theo dấu hiệu

cho trước

Hệ thống phát hiện những kẻ xâm nhập đang cố gắng đột nhập vào hệ thống

mà sử dụng một số kỹ thuật đã biết Nó liên quan đến việc mô tả các đặc điểm các

Trang 7

cách thức xâm nhập vào hệ thống đã được biết đến, mỗi cách thức này đã được mô

tả như một mẫu Hệ thống chỉ thực hiện kiểm soát đối với các mẫu đã rõ ràng Mẫu

có thể là một bit cố định, một tiến trình,… dùng để mô tả một tập hay một chuỗi các hành động nghi ngờ

Hệ thống sẽ liên tục so sánh hành động của hệ thống hiện tại với một tập các kịch bản xâm nhập đã biết để cố gắng dò ra các kịch bản đang tiến hành Hệ thống này có thể xem xét các hành động hiện tại của hệ thống được bảo vệ trong thời gian thực hoặc có thể là các bản ghi kiểm tra được ghi lại bởi hệ điều hành

Ưu điểm:

o Dễ triển khai

o Cho phản hồi chính xác về cảnh báo

o Yêu cầu ít tài nguyên tính toán

Nhược điểm:

o Mô tả về cuộc tấn công thường ở mức độ thấp, khó hiểu

o Mỗi cuộc tấn công hay biến thể của nó đều cần thêm dấu hiệu đưa vào cơ

sở dữ liệu, nên kích cỡ của nó sẽ trở nên rất lớn

o Dấu hiệu càng cụ thể thì càng tạo ra ít cảnh báo nhầm, nhưng càng khó phát hiện những biến thể của nó

1.4.2 Anomaly based IDS - Hệ thống phát hiện xâm nhập bất thường

Hệ thống dựa trên định nghĩa và mô tả đặc điểm của các hành vi có thể chấp nhận của hệ thống để phân biệt chúng với các hành vi không mong muốn hay bất thường nhằm tìm ra các hành vi bất hợp pháp

Như vậy, hệ thống phát hiện xâm nhập bất thường phải có khả năng phân biệt giữa hiện tượng “bình thường” và hiện tượng “bất thường”

Ưu điểm: Có khả năng nhận biết các dạng tấn công xâm nhập chưa biết

Trang 8

Nhược điểm: Thường sinh ra nhiều cảnh báo sai do định nghĩa quá chung về

 Chỉ đưa ra cảnh báo cho người quản trị mạng xử lý

1.6 Nhu cầu thực tế

Việc so sánh và phát hiện hành vi “bất thường” là rất khó, vì các kiểu tấn công mới có khả năng giả mạo hành động hợp pháp mà không bị phát hiện Do đó, việc nghiên cứu và triển khai một hệ thống IDS phát hiện xâm nhập với các yếu tố:

“thực hiện nhanh, đưa ra cảnh báo chính xác, giá thành hợp lí” là vấn đề cấp thiết trong nghiên cứu cũng như yêu cầu ứng dụng trong thực tế

1.7 Mục tiêu của luận văn

Luận văn tập trung nghiên cứu một số vấn đề sau:

 Nghiên cứu hệ thống phát hiện xâm nhập IDS

 Tìm hiểu máy chủ web trong môi trường Linux Đồng thời, nghiên cứu các cách tấn công phổ biến đối với máy chủ web

 Tìm hiểu một số phần mềm tấn công Web Server phổ biến hiện nay

 Khảo sát, phân tích thuật toán “Bản đồ tự tổ chức”

 Nghiên cứu và cài đặt cách lấy các tham số đặc trưng của máy chủ Web trong hệ thống mạng Qua đó, đề xuất bộ tham số đặc trưng cho hệ thống máy chủ Web

Trang 9

 Xây dựng dấu hiệu bất thường do tấn công qua thực nghiệm, sau đó rút trích thông tin qua “bản đồ tự tổ chức SOM” và cảnh báo tấn công khi có bất thường giống như những bất thường đã được học

1.8 Ý tưởng thực hiện

 Xây dựng web server

 Xác định các tham số liên quan tới hệ thống máy chủ Web cần bảo vệ Cách thức lấy thông tin liên quan tới các tham số đã xác định

 Xây dựng hệ thống mạng để làm Lab, giả lập tấn công

 Xác định phần mềm sinh ra tấn công thử nghiệm

 Triển khai tấn công giả lập và ghi nhận thông tin, kết quả là hệ thống vector để học

 Sử dụng chương trình SOM + vector học + nơron sinh ngẫu nhiên để được nơron sau khi học

 Tấn công thử nghiệm lại và ghi nhận kết quả cảnh báo Qua đó hiệu chỉnh bán kính IDS cho phù hợp nhất

 Bình luận, đánh giá kết quả của IDS

1.9 Nội dung luận văn

Chương 1: Tổng quan

Trình bày tổng quan “Hệ thống phát hiện xâm nhập”, phân loại IDS, giới thiệu ưu điểm và nhược điểm của từng loại IDS Đồng thời, chương này nêu lên mục đích, nội dung của đề tài

Chương 2: Máy chủ Web

Trình bày tổng quan về máy chủ Web Giới thiệu một số lỗ hổng phổ biến trên máy chủ Web Các kỹ thuật phát hiện tấn công, xâm nhập Đồng thời chương này cũng trình bày các kỹ thuật tấn công, xâm nhập

Trang 10

Chương 3: Thuật toán bản đồ tự chức - Self Organizing Map (SOM)

Trình bày tổng quan về kiến trúc của thuật toán bản đồ tự tổ chức

Chương 4: Xây dựng các đặc trưng

Trình bày cách thức lấy thông tin hệ thống máy chủ Web Đề xuất các tham

số đặc trưng Phương pháp xây dựng, cũng như chuẩn hóa, gán trọng số các đặc trưng

Chương 5: Thiết kế, cài đặt thực nghiệm và đánh giá chương trình

Trình bày tổng quan về mô hình chương trình chạy giám sát máy chủ Web Phân tích hệ thống đề xuất, thử nghiệm chương trình IDS với các tấn công đã biết

Chương 6: Kết luận và hướng phát triển

Trang 11

CHƯƠNG 2: MÁY CHỦ WEB (WEB SERVER)

 Nội dung chương 2: Trình bày tổng quan về máy chủ Web Giới thiệu một

số lỗ hổng phổ biến trên Web Server Các kỹ thuật phát hiện tấn công, xâm nhập Đồng thời chương này cũng trình bày các kỹ thuật tấn công xâm nhập

2.1 Tổng quan về máy chủ Web

2.1.1 Máy chủ là gì ?

Máy chủ (server) là một máy tính được nối mạng, có IP tỉnh, có năng lực xử

lý cao và trên máy đó người ta cài đặt các phần mềm để phục vụ cho các máy tính khác (máy trạm) truy cập để yêu cầu cung cấp các dịch vụ và tài nguyên

Hình 2.1: Mô hình máy chủ Web và máy trạm

Trang 12

2.1.3 Hoạt động của máy chủ Web

Các bước cơ bản trong tiến trình truyền tải trang Web đến màn hình của bạn được thể hiện theo mô hình 2.2:

Hình 2.2: Mô hình hoạt động của máy chủ web

Theo mô hình trên, trình duyệt web thực hiện một kết nối tới máy chủ Web, yêu cầu một trang web và nhận lại nó

Ví dụ: khi ta truy cập website http://www.abc.com/my_index.php thứ tự từng bước cơ bản xảy đến đằng sau màn hình như sau:

 Trình duyệt web tách địa chỉ website làm 3 phần:

1 Phần giao thức: “http”

2 Máy chủ tên miền: “www.abc.com”

3 Tên tập tin: “my_index.php”

 Trình duyệt liên hệ với máy chủ tên miền để chuyển đổi tên miền ra địa chỉ

IP (Internet Protocol): "www.abc.com"

 Sau đó, trình duyệt sẽ gửi tiếp một kết nối tới máy chủ có địa chỉ IP tương ứng qua cổng 80

 Dựa trên giao thức HTTP, trình duyệt gửi yêu cầu “GET” đến máy chủ, yêu cầu tập tin (cookies cũng sẽ được gửi kèm theo từ trình duyệt web đến máy chủ): “http://www.abc.com/my_index.php”

 Máy chủ sẽ gửi đoạn văn bản dạng HTML đến trình duyệt web

Trang 13

 Trình duyệt web đọc các thẻ HTML, định dạng trang web và hiển thị ra màn hình

Ngày nay rất nhiều máy chủ Web đưa thêm các chế độ bảo mật trong nhiều tiến trình xử lý

Ví dụ: khi bạn truy cập vào một trang web và trình duyệt đưa ra một hộp hội thoại yêu cầu bạn đưa vào tên truy cập và mật khẩu, lúc này trang web mà bạn truy cập đã được bảo vệ bằng mật khẩu Máy chủ Web hỗ trợ người quản lý trang Web duy trì một danh sách tên và mật khẩu cho phép những người được phép truy cập vào trang web

Đó là tất cả những vấn đề cơ bản mà Máy chủ Web hoạt động để truyền tải các trang Web chuẩn hay còn gọi là trang Web tĩnh Các trang Web tĩnh là những trang Web không thay đổi, trừ khi người tạo ra trang Web đó thay đổi lại

Đối với các trang Web động: máy chủ Web không chỉ đơn giản là “tìm kiếm một tập tin” Nó thực sự là một quá trình xử lý thông tin rồi kết xuất ra trang Web dựa trên các kết quả truy vấn Trong hầu hết các trường hợp trên, máy chủ Web thường sử dụng các đoạn chương trình ASP, JSP, PHP và các đoạn mã CGI scripts

để giải quyết bài toán

2.1.4 Dịch vụ web

Dịch vụ Web (Web Service): là một phương thức tích hợp các ứng dụng trên nền Web Mỗi ứng dụng trên nền Web có thể sử dụng các thành phần khác nhau để tạo thành một dịch vụ Web

Ví dụ như máy chủ chạy một trang Web thương mại điện tử kết nối với cổng thanh toán điện tử qua một giao diện lập trình ứng dụng (API) Nếu ta tạo một ứng dụng Web bởi công nghệ NET của Microsoft thì thành phần trên máy chủ chính là

hệ thống cung cấp trang HTML (IIS: Internet Information System), còn các thành phần thanh toán và các thành phần NET được coi là các cấu kiện bên ngoài

Trang 14

Dịch vụ Web cho phép các tổ chức thực hiện truyền thông dữ liệu mà không cần phải có kiến thức về hệ thống tin học bị che giấu ở phía sau tường lửa Một số dịch vụ web hiện nay có sẵn hoặc thậm chí miễn phí và càng ngày càng hướng dần vào phục vụ các cơ quan và doanh nghiệp

2.2 Một số lỗ hổng phổ biến trên máy chủ Web

Theo thống kê gần đây của tổ chức uy tín The Open Web Application

Security Project (www.owasp.org), đến 75% các cuộc tấn công thành công hiện nay dựa trên các lỗ hổng trong ứng dụng web

Với xu thế phát triển nhanh chóng của ngành thương mại điện tử hiện nay, rất nhiều doanh nghiệp hiện đang sử dụng các ứng dụng Web để cung cấp dịch vụ thương mại trực tuyến, kết nối khách hàng, đối tác và nhân viên một cách hiệu quả nhất Tuy nhiên, ứng dụng Web cũng đem đến những rủi ro mới ảnh hưởng đến sự

an toàn của hệ thống và dữ liệu Đa số các ứng dụng Web có thể bị những lỗi mà các phương cách phòng chống mạng thông thường không bảo vệ được Lỗi và lỗ hổng trong mã nguồn của ứng dụng Web có thể gây ra những hậu quả nghiêm trọng như lộ dữ liệu nhạy cảm, gây tổn thương đến toàn hệ thống hạ tầng Công nghệ thông tin Sự cố bảo mật trong ứng dụng web có thể ảnh hưởng đến danh tiếng, uy tín của công ty đối với khách hàng làm thất thoát tài chính của công ty và các vấn

đề liên quan đến ràng buộc pháp lí

2.2.1 Dữ liệu đầu vào không được kiểm tra

Thông tin và dữ liệu từ các truy cập HTTP không được kiểm tra trước khi được sử dụng bởi ứng dụng Web Tin tặc có thể tận dụng những lỗi này nhằm tấn công các lớp ứng dụng phía sau thông qua ứng dụng Web

Ứng dụng Web sử dụng dữ liệu đầu vào trong các truy cập HTTP nhằm xác định kết quả phản hồi Tin tặc có thể sửa đổi bất kỳ phần nào của một truy xuất HTTP, bao gồm URL, querystring, headers, cookies, form fields, và thậm chí field

ẩn (hidden fields), nhằm vượt qua các cơ chế bảo mật

Trang 15

2.2.2 Lỗi kiểm soát truy cập nguồn tài nguyên

Những giới hạn về quyền truy cập tài nguyên của người sử dụng không được thi hành đúng Tin tặc có thể tận dụng những lỗi này nhằm truy cập vào tài khoản của người khác, xem các tập tin nhạy cảm, hoặc thi hành những chức năng không cho phép

2.2.3 Lỗi liên quan đến quá trình quản lý xác thực và phiên truy cập

Quá trình xác thực và quản lý phiên truy cập không được bảo vệ tốt có thể dẫn đến việc thông tin tài khoản bị mất cắp

Xác thực người dùng trên ứng dụng web thường bao gồm sử dụng một username và password Những phương pháp xác thực khác mạnh hơn bao gồm các giải pháp phần cứng hoặc mềm dựa trên các token mã hóa hoặc dùng phương pháp sinh trắc học (biometrics) Tuy nhiên những phương pháp này có phần hạn chế do giá thành cao Một số lượng lớn lỗi ứng dụng trong các hàm quản lý tài khoản và phiên truy cập có thể dẫn đến mối nguy cơ lộ tài khoản người sử dụng và thậm chí tài khoản của người quản trị

2.2.4 Lỗi Cross Site Scripting

Lỗi Cross-site scripting (thường được gọi tắt là XSS) xảy ra khi một ứng dụng Web bị lợi dụng để gửi dữ liệu xấu (thường là đoạn mã script) đến trình duyệt của người sử dụng Những lỗ hổng này rất phổ biến và xảy ra trong bất cứ phần nào của ứng dụng Web có sử dụng dữ liệu từ người dùng trong các giá trị phản hồi mà không kiểm tra tính hợp lệ

Một tin tặc có thể sử dụng lỗ hổng này để gửi các đoạn mã đến người dùng Trình duyệt trong máy người dùng không thể biết được nên tin hay không tin đoạn

mã nào, và sẽ thi hành đoạn script này Bởi vì trình duyệt tin rằng đoạn mã đến từ một nguồn tin tưởng, đoạn mã script có thể truy cập đến cookies, session tokens, hoặc bất kỳ thông tin nhạy cảm nào được lưu lại trong trình duyệt có liên quan đến

Trang 16

trang web đang truy cập Những đoạn mã này còn có thể sửa đổi nội dung trang web

2.2.5 Lỗi tràn bộ đệm

Một số module của ứng dụng Web khi được phát triển bằng những ngôn ngữ không kiểm tra dữ liệu đầu vào có thể bị crashed, và trong một số trường hợp, có thể bị lợi dụng để chiếm đoạt quyển kiểm soát của một process hoặc toàn bộ máy chủ Những module này có thể bao gồm CGI, thư viện, drivers, và những module của máy chủ

Tin tặc sử dụng lỗi tràn bộ đệm nhằm ảnh hưởng đến dòng lệnh thực thi của ứng dụng Web Bằng cách gửi một đoạn mã được thiết kế đặc biệt đến ứng dụng, tin tặc có thể làm cho ứng dụng Web thi hành bất kỳ đoạn mã nào, điều này tương đương với việc chiếm quyền làm chủ máy server

2.2.6 Lỗi Injection

Lỗi injection cho phép tin tặc lợi dụng lỗ hổng trong ứng dụng Web làm phương tiện để gửi các đoạn mã nguy hiểm đến hệ thống Những cuộc tấn công dạng này bao gồm các mã gọi hàm đến hệ điều hành, gọi các ứng dụng qua lệnh shell, và các hàm gọi đến cơ sở dữ liệu (SQL injection) Những đoạn mã nguy hiểm được viết bằng perl, python và ngôn ngữ khác có thể được chuyển đến và thực thi bởi ứng dụng web, hệ điều hành hoặc các ứng dụng khác

Một trong những dạng phổ biến nhất của lỗi injection là lỗi sql injection Lỗi

này xảy ra khi ứng dụng sử dụng những dữ liệu đầu vào không được kiểm tra làm tham số để xây dựng chuỗi lệnh SQL Bằng cách sử dụng những đoạn mã SQL đặc biệt, hacker có thể gây ra những hậu quả nghiêm trọng như:

 Vượt qua hệ thống xác thực login mà không cần sử dụng password hoặc username

 Truy cập vào một phần hoặc tất cả các thông tin trong CSDL

 Lấy được thông tin về cấu trúc của cơ sở dữ liệu

Trang 17

 Sửa đổi hoặc xóa thông tin trong CSDL

 Chạy các lệnh trong hệ điều hành trên máy chủ CSDL

2.2.7 Quy trình quản lý có lỗi

Quy trình xử lý báo lỗi có thể gây ra nhiều vấn đề bảo mật cho một trang Web Vấn đề thông thường nhất là khi các thông báo lỗi có chứa các thông tin nhạy cảm như stack traces, thông tin cơ sở dữ liệu, và các mã lỗi được thông báo cho người dùng Những lỗi này cung cấp các thông tin về hệ thống, ứng dụng ở mức độ thấp và thông tin này phải được bảo mật Sử dụng những thông tin này, hacker có thể dò tìm ra những lỗi khác của ứng dụng

2.2.8 Lưu trữ thiếu an toàn

Đa số các ứng dụng Web cần lưu trữ dữ liệu nhạy cảm, trong cơ sở dữ liệu hoặc trong một tập tin nào đó trong hệ thống Thông tin nhạy cảm bao gồm: mật khẩu, số thẻ tín dụng, thông tin tài khoản, hoặc các thông tin cần bảo vệ khác Các

cơ chế mã hóa thường được sử dụng để bảo vệ những thông tin này Mặc dù sử dụng các hàm mã hóa không khó cho các lập trình viên, tuy nhiên các lập trình viên vẫn thường mắc những lỗi cơ bản khi áp dụng vào ứng dụng Web do không hiểu rõ hết các đặc điểm mã hóa Những lỗi thông thường bao gồm:

 Không mã hóa dữ liệu quan trọng như khóa và mật khẩu

 Lưu trữ các khóa bảo mật trong bộ nhớ bằng các cơ chế không an toàn

 Cơ chế tạo số ngẫu nhiên không đảm bảo

 Sử dụng sai thuật toán

 Tạo một thuật toán mã hóa không đảm bảo

2.2.9 Cấu hình máy chủ thiếu an toàn

Cấu hình của máy chủ và các phần mềm hỗ trợ dịch vụ web là một yếu tố quan trọng trong vấn đề bảo mật của ứng dụng Máy chủ cung cấp nền tản phục vụ cho việc cung cấp nội dung và các dịch vụ mà ứng dụng web cần sử dụng, bao gồm lưu trữ, dịch vụ directory, email Do là nền tản cung cấp các chức năng cơ bản cho

Trang 18

ứng dụng Những vấn đề về cấu hình của máy chủ có thể dẫn đến vấn đề bảo mật của ứng dụng

Theo các thống kê hiện nay (tham khảo www.owasp.com), các lỗ hổng liên quan đến cấu hình máy chủ bao gồm:

 Các phần mềm và hệ điều hành trên máy chủ không được cập nhật với bản

vá lỗi bảo mật mới nhất

 Những tập tin mặc định, tập tin tạo ra để test như script, tập tin cấu hình không được xóa đi trong thư mục của trang Web Những tập tin này thường có độ bảo mật yếu và có thể chứa những thông tin quan trọng

 Không phân đúng quyền cho các thư mục và tập tin trong trang Web

 Phần mềm Web Server đăng quá nhiều thông tin trong trang báo lỗi

2.3 Kỹ thuật tấn công và xâm nhập

Theo [7] [10] khi một mạng máy tính bị hacker tấn công nó sẽ chiếm một lượng lớn tài nguyên trên máy chủ như: dung lượng ổ cứng, bộ nhớ RAM, CPU, băng thông Khi đó, máy chủ sẽ không thể đáp ứng hết những yêu cầu từ những máy trạm của những người sử dụng, từ đó máy chủ có thể sẽ nhanh chóng bị ngừng hoạt động, hư hỏng hoặc bị khởi động lại gây thiệt hại lớn về tài chính và ảnh hưởng đến uy tính của các công ty và tổ chức

Dựa vào những lỗ hổng bảo mật ứng dụng Web đã nêu ở trên, các hacker sử dụng nhiều kỹ thuật để tấn công vào hệ thống mạng như: Trojans, backdoor, sniffers, exploits, buffer overflows, SQL injection, Deny of Service (DoS),…

Mục đích kẻ tấn công là làm sao để khai thác một trong bốn đặc tính về bảo mật:

- Tính bí mật

- Tính xác thực

- Tính toàn vẹn

Trang 19

 Tấn công từ bên ngoài: tấn công từ bên ngoài Internet hay các kết nối truy cập từ xa

Có 5 pha tấn công, xâm nhập mà các kẻ tấn công thường dùng:

* Pha 1: Khảo sát thu thập thông tin

Thu thập thông tin về nơi cần tấn công như phát hiện các host, địa chỉ IP, các dịch vụ mạng

* Pha 2: Dò tìm

Sử dụng các thông tin thu thập được từ pha 1 để sử dụng tìm kiếm thêm thông tin lỗ hổng, điểm yếu của hệ thống mạng Các công cụ thường được sử dụng cho quá trình này là: các công cụ dùng quét cổng, quét dãy địa chỉ IP, dò tìm lỗ hổng,…

Trang 20

* Pha 3: Xâm nhập

Các lỗ hổng, điểm yếu được dò tìm trong 2 pha trên được sử dụng khai thác

để xâm nhập vào hệ thống Ở pha này kẻ tấn công có thể dùng các kỹ thuật như: tràn vùng đệm dựa trên stack, từ chối dịch vụ (DoS – Denial of Service) và bắt cóc

phiên làm việc (session hijacking)

* Pha 4: Duy trì xâm nhập

Một khi kẻ tấn công đã xâm nhập được vào hệ thống, bước tiếp theo là làm sao để duy trì các xâm nhập này để có thể khai thác và xâm nhập tiếp trong tương lai Một vài kỹ thuật như backdoors, Trojans Một khi kẻ tấn công đã làm chủ hệ thống chúng có thể sử dụng hệ thống để tấn công vào hệ thống khác, trường hợp này hệ thống bị lợi dụng gọi là: zombie system

* Pha 5: Che đậy, xóa dấu vết

Một khi kẻ tấn công đã xâm nhập và cố gắng duy trì xâm nhập Bước tiếp theo là phải làm sao xóa hết dấu vết để không còn chứng cứ pháp lý xâm nhập Kẻ tấn công phải xóa các tập tin log, xóa các cảnh báo từ hệ thống phát hiện xâm nhập

Pha 2 (dò tìm) và pha 3 (xâm nhập) kẻ tấn công thường làm lưu lượng, kết nối mạng thay đổi khác với lúc mạng bình thường rất nhiều Nếu phân tích kỹ các bất thường này để rút trích ra các đặc trưng hữu ích của mạng có thể từ đó phân tích, phát hiện các xâm nhập như: quét cổng, quét dãy địa chỉ IP, tấn công từ chối dịch vụ (DoS),…

Hầu hết các cuộc tấn công đều tiến hành tuần tự 5 pha trên Làm sao để nhận biết tấn công, xâm nhập ngay từ hai pha đầu tiên (khảo sát thông tin và dò tìm thông tin) là hết sức quan trọng, vì sẽ hạn chế tấn công, xâm nhập ở những pha tiếp theo Ngay tại pha thứ 3 là xâm nhập, pha này không dễ dàng đối với kẻ tấn công Do vậy, khi không thể xâm nhập được vào hệ thống, để phá hoại có nhiều khả năng kẻ

Trang 21

tấn công sẽ sử dụng tấn công từ chối dịch vụ để ngăn cản không cho các người dùng hợp lệ truy xuất tài nguyên phục vụ công việc

Khảo sát thông tin, dò tìm thông tin, tấn công từ chối dịch vụ, cũng như virus,… thông thường có tính chất hướng thời gian và có thể sử dụng phương pháp khai thác dữ liệu để nhận dạng chúng Trong những phần sau, đề tài sẽ trình bày ứng dụng thuật toán Bản đồ tự tổ chức – SOM để nhận dạng một cách hiệu quả, theo thời gian thực những dạng tấn công này

Hình 2.3: 5 pha tấn công, xâm nhập

2.4 Phân loại tấn công đối với máy chủ web

Theo [6] có thể phân loại tấn công, xâm nhập thành 5 nhóm sau đây:

2.4.1 U2R (User to Root)

Người tấn công sử dụng tài khoản người dùng bình thường để truy cập vào

hệ thống và tìm cách nâng quyền của mình lên cao hơn Có thể kẻ tấn công có được

Trang 22

tài khoản nhờ sniff mật khẩu, dùng dictionary attack hay social engineering Các cách tấn công phổ biến của dạng này là buffer overflow

2.4.2 R2L (Remote to Local)

R2L là trường hợp người tấn công có khả năng gửi gói dữ liệu mạng đến hệ thống từ xa nhưng không có tài khoản truy cập vào hệ thống này Và họ cố gắng để truy cập vào hệ thống bằng việc khai thác lỗ hổng, đoán tài khoản và mật khẩu Một

số tấn công ở dạng này là dictionary, sendmail…

2.4.3 DoS (Land, SYN flood, mailbomb, smurf, teardrop…)

Gồm DoS và DDoS:

Tấn công dùng tài nguyên hệ thống làm hệ thống không đáp ứng được yêu cầu người dùng hợp lệ Dạng tấn công này có thể tấn công trên các máy chủ, ứng dụng hay toàn bộ hệ thống mạng

Tấn công từ chối dịch vụ có thể phân làm 2 loại:

 DoS đơn giản: tấn công từ một hệ thống đến một hệ thống

 Distributed DoS (DDoS): tấn công từ nhiều hệ thống đến một hệ thống

* Phương pháp tấn công DoS:

Làm tắt nghẽn mạng với lưu lượng gửi đến mạng rất lớn, vì vậy chúng ngăn không cho các lưu lượng hợp lệ truyền đi trên mạng

o Ngăn các kết nối giữa 2 thiết bị, dẫn đến ngăn chặn truy cập đến dịch vụ

o Ngăn chặn một máy tính hay một thiết bị nào đó không truy cập được dịch

vụ cần thiết

o Ngăn việc cung cấp dịch vụ cho một hệ thống hay một máy tính hợp lệ

Có nhiều tấn công DoS được giới thiệu trong [11] như: SYN Flooding, smurf, teardrop…

Trang 23

Như vậy, qua khảo sát điển hình tấn công DoS và dò tìm, ta thấy lưu lượng, kết nối mạng với một số đặc trưng như băng thông, số lượng kết nối đến máy chủ tăng vọt Đây cũng là một cơ sở để lựa chọn đặc trưng phù hợp để phát hiện tấn công, xâm nhập hướng thời gian trên mạng

2.4.4 Probes

Probes là loại tấn công dò tìm thông tin trên mạng

* Dò tìm thông tin có thể chia làm 3 loại sau:

Dò tìm cổng: xác định cổng và dịch vụ nào đang mở Một số cổng thường ứng với các dịch vụ: FPT (21), Telnet (23), HTTP (80), SMTP (25), POP3 (110), HTTPS (443)

Dò tìm mạng: xác định dãy IP của mạng

Dò tìm điểm yếu: Dò các điểm yếu của hệ thống

* Dưới đây là một số dạng dò tìm phổ biến:

SYN Scan: dạng quét này không hoàn thành quá trình “bắt tay 3 bước” trong TCP (TCP/IP three-way handshake) Kẻ tấn công gửi gói SYN đến máy cần thăm

dò, nếu nhận phản hồi bằng gói SYN/ACK là có thể đoán cổng đang mở, nếu nhận gói RST có thể là cổng không mở

Hình 2.4: Quy trình bắt tay 3 bước

Trang 24

XMAS: gửi gói dữ liệu với gói FIN, URG, PSH Nếu cổng mở thì không có trả lời, nhưng nếu cổng đóng thì máy bị quét sẽ trả lời bằng gói RST/ACK

FIN: tương tự như XMAS nhưng chỉ cờ FIN được bật lên

Nmap: phần mềm nổi tiếng về dò tìm thông tin (Network Mapper-tham khảo tại trang http://insecure.org/nmap/)

2.5 Kết luận

Các hacker thường sử dụng những kỹ thuật tấn công dựa vào những lỗ hổng trong bảo mật Web Server Theo khảo sát hầu hết các cuộc tấn công đều làm ảnh hưởng đến tài nguyên hệ thống máy như: CPU, bộ nhớ, lưu lượng mạng,… đây củng là cơ sở để tác giả đề xuất những tham số đặt trưng trong chương 4

Trang 25

CHƯƠNG 3: THUẬT TOÁN BẢN ĐỒ TỰ TỔ CHỨC

 Nội dung chương 3: Trình bày tông quan về kiến trúc của thuật toán “bản

đồ tự tổ chức”

3.1 Giới thiệu

Thuật toán bản đồ tự tổ chức - Self Organizing Map (SOM) là một mạng Nơron nhân tạo (Artificial Neural Networks – ANN), được huấn luyện (trained) sử

dụng kỹ thuật học không giám sát (Unsupervised learning) để biểu diễn dữ liệu với

số chiều (dimension) thấp hơn nhiều (thường là 2 chiều) so với dữ liệu đầu vào nhiều chiều (thường số chiều lớn) Kết quả của SOM gọi là bản đồ (Map) [10] Mô hình đầu tiên được mô tả bởi Giáo sư người Phần Lan Teuvo Kohonen vào đầu những năm 80, thường được gọi là bản đồ Kohonen hay mạng Kohonen

SOM là một ANN, tuy nhiên SOM khác với các ANN là không sử dụng các lớp ẩn (hidden layers) chỉ sử dụng input và output layer SOM sử dụng khái niệm láng giềng (neighborhood) để giữ lại đặc trưng của các dữ liệu đầu vào trên bản đồ (có nghĩa là các training sample tương tự nhau thì được đặt gần nhau trên bản đồ)

Trang 26

tự động (Control Engineering), hóa - sinh trắc học (Biomedical Sciences and Chemistry), phân tích tài chính (Financial Analysis) và xử lý ngôn ngữ tự nhiên (Natural Language Processing)

Các thuộc tính cơ bản nhằm phân biệt SOM với các mạng nơron khác là nó

sử dụng ký số thay cho ký tự, không tham số (non-parametric), và học không hướng dẫn Phương pháp dùng số tự nhiên cho phép SOM xem xét, xử lý dữ liệu số tự nhiên thống kê được và nhằm để biểu diễn các mối quan hệ đã được chọn lọc Bởi

do SOM yêu cầu học không giám sát và là một dạng non-parametric nên nó có thể tìm ra cả những cấu trúc không hề mong muốn từ dữ liệu đã cho

Trong ứng dụng phát hiện tấn công, xâm nhập máy chủ Web, SOM có thể học các thông số trong trạng thái bất thường (trạng thái Web Server bị tấn công, xâm nhập) của CPU, bộ nhớ chính, các lưu lượng gói tin trong mạng, số lượng gói tin lỗi phát sinh trong khoảng thời gian thực,… Ngoài ra khi dùng SOM ta biết được mật độ phân bố của các vectơ đầu vào một cách trực quan

SOM sử dụng cạnh tranh mềm (soft) để gom cụm dữ liệu Có nghĩa là chẳng những vectơ trọng tâm của nơron chiến thắng được cập nhật, mà vectơ trọng tâm các nơron lân cận (láng giềng) của nơron chiến thắng cũng được cập nhật Trong cạnh tranh cứng (hard) chỉ duy nhất vectơ trọng tâm của nơron chiến thắng được cập nhật

Hình 3.2: Vectơ trọng số của nơron chiến thắng (màu sậm) và các vectơ trọng số của những nơron lân cận được cập nhật hướng về mẫu dữ liệu đầu vào x

Trang 27

3.2 Kiến trúc của SOM

 Input vector: Là các mẫu dữ liệu huấn luyện có kích thước n

 Output Layer: Gồm các node (nơron) được bố trí trên một bản đồ kích

thước X xY Mỗi nơron có vị trí xác định trên bản đồ, tại mỗi nơron lưu giữ một vector trọng số (weight vector) có số chiều bằng với số chiều của input vector

 Ma trận trọng số (weight matrix): wij kết nối giữa input vector và các nơron

Hình: 3.3: Kiến trúc của SOM

3.3 Thuật toán SOM

Xét một tập dữ liệu là các vectơ trong không gian n chiều:

(3.1) Thông thường SOM gồm M nơron nằm trong một bản đồ (thường có kích thước 2 chiều) Một nơron thứ i là một vectơ mẫu có kích thước p:

(3.2)

Trang 28

Các nơron trong bản đồ có liên kết đến các nơron lân cận bằng một quan hệ láng giềng Các láng giềng liền kề là các nơron lân cận tuỳ theo bán kính lân cận của nơron thứ i

Ni (d) = { j,di,j < d } với d là bán kính lân cận Các nơron lân cận tùy thuộc vào bán kính, được sắp xếp trong lưới theo hình chữ nhật hoặc hình lục giác Số các lân cận xác định trọng tâm của ma trận kết quả,

có ảnh hưởng đến độ chính xác và khả năng sinh ma trận của SOM

Hình 3.4: Những vùng lân cận của nơron chiến thắng

Trong thuật toán SOM, các quan hệ hình học và số các nơron là cố định ngay

từ đầu Số lượng nơron thường được chọn đủ lớn nếu có thể, bằng cách điều khiển kích thước lân cận cho phù hợp Nếu kích thước lân cận được lựa chọn là phù hợp thì ma trận không bị mất mát thông tin nhiều ngay cả khi số các nơron vượt quá số các vectơ đầu vào

Trước khi huấn luyện các giá trị ban đầu được đưa ra là các vectơ trọng số SOM là không phụ thuộc nhiều đối với dữ liệu ban đầu (dữ liệu có thể bị thiếu), nhưng thuật toán SOM vẫn hội tụ Dùng một trong ba thủ tục khởi tạo điển hình sau:

Trang 29

 Khởi tạo ngẫu nhiên, vectơ trọng số ban đầu được gán giá trị ngẫu nhiên

3.4 Xác định đơn vị phù hợp nhất BMU (Best Matching Unit)

Trước khi huấn luyện, các trọng số của mỗi nút phải được khởi tạo với giá trị ngẫu nhiên trong đoạn [0,1]

Trong mỗi bước huấn luyện, chọn ngẫu nhiên một vectơ x trong tập dữ liệu ban đầu Tính toán khoảng cách giữa x đến tất cả các vectơ mẫu, trong đó c là đơn

vị có mẫu gần x nhất gọi là BMU (Best Matching Unit), được xác định như sau:

(3.3) Với || || là độ đo khoảng cách

Sau khi tìm được BMU, vectơ trọng số của SOM được cập nhập lại Vectơ trọng số của BMU và các lân cận hình thái của nó di chuyển dần đến vectơ trong không gian đầu vào

Hình 3.5: BMU và các node lân cận

Trang 30

3.5 Cập nhật trọng số và lân cận của BMU

Vector của nơron chiến thắng và lân cận được cập nhật theo phương trình sau:

hci : lân cận nhân (kelnel)

Lân cận nhân đóng vai trò trung tâm, để hội tụ thì h ci(t)0 khi t 

Với c là chỉ mục của BMU thỏa điều kiện sau:

( t h r r t t

Trang 32

Hàm tốc độ học  (t ) thường dùng là một hàm tuyến tính hay một hàm tỷ lệ nghịch với thời gian, giảm theo thời gian, t là tốc độ học biểu thị mức độ học hỏi nhiều hay ít của các nơron trong vùng lân cận (0 t 1), chúng ta thường dùng các hàm tốc độ học sau:

t       

0 0

005 0 )

t

10 1

Trang 33

Các hàm tốc độ học

0 0.2

Việc huấn luyện thường được tiến hành trong hai giai đoạn Giai đoạn đầu,

có liên quan đến việc sử dụng giá trị ban đầu α đủ lớn và các bán kính lân cận Trong giai đoạn sau giá trị α và bán kính lân cận đủ nhỏ ngay từ khi bắt đầu Thủ tục này phù hợp với việc điều chỉnh xấp xỉ ban đầu của SOM trong cùng một không gian giống như dữ liệu đầu vào và sau đó điều chỉnh tốt trên ma trận

3.6 Quá trình học của SOM

Quá trình huấn luyện cho SOM là huấn luyện cạnh tranh nên mỗi tập huấn luyện sẽ có một nơron chiến thắng Nơron chiến thắng này sẽ có trọng số được điều chỉnh sao cho ngay lập tức nó sẽ tác động trở lại mạnh mẽ hơn trong dữ liệu đầu vào ở lần tiếp theo Sự khác nhau giữa các nơron chiến thắng sẽ dẫn tới sự khác nhau giữa các mẫu đầu vào tiếp theo

Đầu vào:

1 Xác định cấu trúc và số dòng, số cột bản đồ

2 Đưa vào tập dữ liệu học gồm n chiều

3 Đưa vào tổng thời kỳ học

Trang 34

4 Đưa vào epsilon nếu lỗi lượng tử trung bình sau một số bước học nhỏ hơn epsilon thì dừng, thường thì sau mỗi thời kỳ học lỗi lượng tử trung bình sẽ được tính toán và so sánh với epsilon

5 Chọn phương thức khởi tạo trọng số cho các vectơ trọng số của các nơron trên bản đồ: ngẫu nhiên, hay ngẫu nhiên từ tập dữ liệu học

6 Đưa vào hàm lân cận, thường dùng là hàm Gaussian:   

Bước 1: Khởi tạo bước học đầu tiên t=0

Bước 2: Khởi tạo ngẫu nhiên các nơron

Bước 3: Chọn ngẫu nhiên vectơ x i từ tập dữ liệu đầu vào

Bước 4: Tính khoảng cách Euclide từ vectơ x i đến các nơron trên bản đồ

Bước 5: Chọn nơron chiến thắng (BMU) là nơron có vectơ trọng số gần vectơ xi nhất

Bước 6: Cập nhật trọng số của các nơron chiến thắng bằng hàm lân cận nhân

và hàm tốc độ học cho trước

Bước 7: Hiệu chỉnh trọng số vectơ của nơron chiến thắng và nơron lân cận bằng công thức: mi( t  1 )  mi( t )  hci( t )  x ( t )  mi( t ) 

Bước 8: Gán t=t+1 Nếu t > T hay lỗi lượng tử trung bình < Epsilon thì

DỪNG thuật toán Ngược lại, quay về bước 3

Trang 35

Hình 3.9: Mô hình huấn luyện SOM

Thực hiện huấn luyện, điều chỉnh trọng số dựa vào nơron thắng

Tính toán lại tỉ lệ sai số, ghi lại những giá trị đã được cải thiện

Cải thiện tỉ lệ sai số là tầm thường?

Ma trận trọng số này đã tốt nhất chưa?

Nếu có ma trận trọng số tốt hơn của ma trận trọng

số tốt nhất?

Gán ma trận trọng số này thành

ma trận trọng số tốt nhất

Đã quá số chu kỳ xác định?

Yes

No

Yes Yes

Trang 36

* Lỗi lượng tử trung bình giữa các vectơ dữ liệu và các vectơ trọng số của nơron trên bản đồ được tính theo công thức sau:

mc : vectơ trọng số BMU

* Độ đo lỗi hình học (lỗi tôpô): là phần trăm các vectơ dữ liệu đầu vào có nơron chiến thắng trong lần học thứ nhất và nơron chiến thắng trong lần học thứ hai không phải là các đơn vị nằm cận nhau trên bản đồ:

1

Với:

là vectơ đặc trưng của mẫu huấn luyện

u(xi) = 1, nếu nơron chiến thắng trong lần học thứ nhất và nơron chiến thắng trong lần học thứ hai không phải là các đơn vị nằm cận nhau trên bản đồ, ngược lại bằng u(xi) = 0

3.8 Các phương pháp trực quan hóa “bản đồ tự tổ chức”

Thuật toán SOM với những ưu điểm của nó, đã trở thành công cụ có ích trong việc học không giám sát Đó là, tạo ra hàm phân bố xác suất cho tập dữ liệu ban đầu, dễ giải thích và quan trọng nhất là trực quan hoá tốt [9] Tùy theo vấn đề cần giải quyết, các chuyên gia có thể chọn các phương pháp khác nhau để phân tích

dữ liệu đầu ra Thế nhưng với phương pháp SOM có thể làm nhiều công việc cùng một lúc và cho kết quả tương đương với việc kết hợp nhiều phương pháp khác với nhau [13] Như đã trình bày, SOM rất hiệu quả trong các tiến trình huấn luyện và

Trang 37

rút gọn kích thước dữ liệu Nếu tích hợp SOM với các phương pháp khác có thể sinh luật

Trực quan hoá: rất có ý nghĩa trong việc học không giám sát, là yếu tố quan

trọng trong báo cáo kết quả hoặc “tạo” tri thức Các minh hoạ trực quan dùng để hiểu thấu đáo tập dữ liệu và tóm tắt cấu trúc tập dữ liệu Có thể khẳng định điểm mạnh của SOM là phương pháp trực quan hoá Các kỹ thuật trực quan hoá dùng SOM gồm:

- Trực quan hoá ma trận: gồm trực quan hoá các thành phần (component

planes) của vectơ và sự tương quan giữa chúng; trực quan hoá ma trận hợp nhất khoảng cách U (unified distance matrix – U Matrix) để biểu diễn cấu trúc cụm của

dữ liệu, ánh xạ Sammon [11] thể hiện hình ảnh của ma trận trong không gian đầu vào, các màu hoặc nhãn giống nhau thể hiện các vectơ ở gần nhau Các biểu đồ dữ liệu và phương pháp chiếu tập dữ liệu cho mục đích trực quan

- Trực quan hoá đối tượng: thực chất là áp dụng SOM để chọn lọc đặc tính

nổi trội của các thành phần dữ liệu, bằng cách đánh màu tự động cho mỗi đơn vị của ma trận hoặc ấn định màu bằng tay Mỗi điểm của đối tượng được đánh dấu bằng màu phù hợp với màu BMU của điểm đó Những nơron có màu hoặc nhãn giống nhau sẽ ở vị trí gần nhau trên bản đồ

Hình 3.10: Vị trí các nơron sau huấn luyện

Trang 38

3.9 Ngưỡng cảnh báo

Để đánh giá hiệu quả tính cảnh báo của hệ thống phát hiện xâm nhập, ta dùng các độ đo sau: độ chính xác (accuracy), độ đo truy hồi (recall), độ rõ ràng (precision)

Ta đặt:

o TN (True Negative): trường hợp mạng bình thường và IDS không cảnh báo

o TP (True Positive): trường hợp mạng bị tấn công và IDS có cảnh báo

o FN (False Negative): trường hợp mạng bị tấn công nhưng IDS không cảnh báo

o FP (False Positive): trường hợp mạng bình thường nhưng IDS lại cảnh báo tấn công

Một hệ thống dự báo tốt phải đảm bảo accuracy, recall, precision cao:

FP FN

TP TN

TP TN

Nếu máy chủ xảy ra tình trạng FP sẽ ảnh hưởng đến nhân viên trong công ty,

cơ quan vì tình trạng cảnh báo sai

Do đó phải tìm ngưỡng cảnh báo cho phủ hợp giữa FN và FP

Trang 39

Phương pháp này so sánh mẫu dữ liệu với nơron trên SOM nhằm nhận dạng tấn công, nếu dữ liệu so sánh nằm trong vùng bán kính IDS thì sẽ phát có cảnh báo tấn công

3.11 Ưu điểm và nhược điểm của SOM

Ưu điểm:

Giải thuật SOM được cài đặt tương đối đơn giản và dễ hiểu SOM được sử dụng trong việc gom cụm các loại dữ liệu và trực quan hóa chúng trên các bản đồ

nhằm đơn giản hóa quá trình khai thác và thu thập dữ liệu

SOM rất có hiệu quả trong quá trình phân tích đòi hỏi trí thông minh để đưa

ra quyết định nhanh chóng trên thị trường Nó giúp cho người phân tích hiểu vấn đề hơn trên một tập dữ liệu tương đối lớn

Có khả năng biểu diễn dữ liệu đa chiều dùng trong trình bày và làm báo cáo

Xác định các cụm dữ liệu (ví dụ các nhóm khách hàng) giúp cho việc tối ưu phân bố nguồn lực (quảng cáo, tìm kiếm sản phẩm, .)

Có thể dùng để phát hiện các lỗi dữ liệu

Nhược điểm:

Do sự khởi tạo ngẫu nhiên nên kết quả cuối cùng của bản đồ sẽ khác nhau

Trang 40

Chi phí cho việc tính toán khá cao khi số chiều của dữ liệu tăng lên

SOM tự tổ chức dữ liệu trong các nơron sao cho các dữ liệu gần nhau được phân bố trong những nơron gần nhau trên bản đồ Đối với phát hiện tấn công trên mạng có thể cho SOM học từ tập dữ liệu bình thường hay bất thường Ứng dụng SOM học từ tập dữ liệu bất thường sẽ cho cảnh báo tấn công nhanh và chính xác Vì vậy, luận văn này đã đi theo hướng ứng dụng SOM học từ tập dữ liệu bất thường

Ngày đăng: 18/12/2013, 14:33

HÌNH ẢNH LIÊN QUAN

Hình 1.1: Số Web Server bi tấn công từ năm 2003 đến 2011. - Ứng dụng bản đồ tự tổ chức   self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ
Hình 1.1 Số Web Server bi tấn công từ năm 2003 đến 2011 (Trang 2)
Hình 1.2: Mô hình hoạt động của 1 hệ thống IDS. - Ứng dụng bản đồ tự tổ chức   self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ
Hình 1.2 Mô hình hoạt động của 1 hệ thống IDS (Trang 4)
Hình 1.3: Sự khác nhau giữa Misuse Detection và Anomaly Detection - Ứng dụng bản đồ tự tổ chức   self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ
Hình 1.3 Sự khác nhau giữa Misuse Detection và Anomaly Detection (Trang 6)
Hình 2.2: Mô hình hoạt động của máy chủ web. - Ứng dụng bản đồ tự tổ chức   self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ
Hình 2.2 Mô hình hoạt động của máy chủ web (Trang 12)
Hình 2.3: 5 pha tấn công, xâm nhập. - Ứng dụng bản đồ tự tổ chức   self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ
Hình 2.3 5 pha tấn công, xâm nhập (Trang 21)
Hình 3.1: Mô hình mạng Kohonen. - Ứng dụng bản đồ tự tổ chức   self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ
Hình 3.1 Mô hình mạng Kohonen (Trang 25)
Hình 3.4: Những vùng lân cận của nơron chiến thắng - Ứng dụng bản đồ tự tổ chức   self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ
Hình 3.4 Những vùng lân cận của nơron chiến thắng (Trang 28)
Hình 3.8: Các hàm tốc độ học [7]. - Ứng dụng bản đồ tự tổ chức   self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ
Hình 3.8 Các hàm tốc độ học [7] (Trang 33)
Hình 3.9: Mô hình huấn luyện SOM - Ứng dụng bản đồ tự tổ chức   self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ
Hình 3.9 Mô hình huấn luyện SOM (Trang 35)
Hình 3.10: Vị trí các nơron sau huấn luyện - Ứng dụng bản đồ tự tổ chức   self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ
Hình 3.10 Vị trí các nơron sau huấn luyện (Trang 37)
Hình 4.1: Mô hình Von Neumann - Ứng dụng bản đồ tự tổ chức   self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ
Hình 4.1 Mô hình Von Neumann (Trang 44)
Hình 4.6: Thông số icmp, udp, tcp khi Web Server đang bị tấn công. - Ứng dụng bản đồ tự tổ chức   self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ
Hình 4.6 Thông số icmp, udp, tcp khi Web Server đang bị tấn công (Trang 52)
Hình 5.1: Mô hình tổng quát đề xuất - Ứng dụng bản đồ tự tổ chức   self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ
Hình 5.1 Mô hình tổng quát đề xuất (Trang 59)
Hình 5.2: Màn hình cảnh báo tấn công xâm nhập. - Ứng dụng bản đồ tự tổ chức   self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ
Hình 5.2 Màn hình cảnh báo tấn công xâm nhập (Trang 60)
Hình 5.3: Sơ đồ thu thập dữ liệu các vectơ huấn luyện - Ứng dụng bản đồ tự tổ chức   self organizing map (SOM) nhằm phát hiện tấn công web server qua hành vi luận văn thạc sĩ
Hình 5.3 Sơ đồ thu thập dữ liệu các vectơ huấn luyện (Trang 61)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w