Tải bản đầy đủ (.pdf) (56 trang)

Nghiên cứu cải thiện khả năng phát hiện tấn công mạng bằng kỹ thuật DEEP LEARNING (Luận văn thạc sĩ)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.9 MB, 56 trang )

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
---------------------------------------

TÔ TRỌNG TÍN

NGHIÊN CỨU CẢI THIỆN
KHẢ NĂNG PHÁT HIỆN TẤN CÔNG MẠNG
BẰNG KỸ THUẬT DEEP LEARNING

LUẬN VĂN THẠC SĨ KỸ THUẬT
(Theo định hướng ứng dụng)

TP.HCM - 2018


HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
---------------------------------------

TÔ TRỌNG TÍN

NGHIÊN CỨU CẢI THIỆN
KHẢ NĂNG PHÁT HIỆN TẤN CÔNG MẠNG
BẰNG KỸ THUẬT DEEP LEARNING
CHUYÊN NGÀNH :

HỆ THỐNG THÔNG TIN

MÃ SỐ : 8480104

LUẬN VĂN THẠC SĨ KỸ THUẬT
(Theo định hướng ứng dụng)


NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS. TRẦN VĂN LĂNG

TP.HCM – 2018


i

LỜI CAM ĐOAN
Trong quá trình thực hiện luận văn, dưới sự hướng dẫn trực tiếp của PGS.TS.
Trần Văn Lăng, tôi đã nghiên cứu và hoàn thành luận văn với sự nổ lực nghiên cứu
của bản thân. Do đó, tôi xin cam đoan rằng nội dung trong luận văn này là do tôi
thực hiện dưới sự hướng dẫn của PGS.TS. Trần Văn Lăng và mọi tham khảo được
sử dụng trong luận văn đều có trích dẫn nguồn cụ thể, rõ ràng, trung thực về tên tác
giả, tên công trình nghiên cứu, thời gian và địa điểm công bố.
Mọi sao chép không hợp lệ hoặc vi phạm quy chế đào tạo tôi xin chịu hoàn
toàn trách nhiệm./.
TP HCM , ngày 10 tháng 11 năm 2017
HỌC VIÊN THỰC HIỆN LUẬN VĂN

Tô Trọng Tín


ii

LỜI CẢM ƠN
Trước hết tôi xin gởi lời cảm ơn chân thành đến ban giám hiệu và tập thể thầy
cô học viện Công Nghệ Bưu Chính Viễn Thông nói chung và cở sở tp.HCM nói riêng
đã quan tâm tổ chức và giảng dạy khóa cao học công nghệ thông tin và tạo môi trường
thuận lợi cho chúng tôi được học tập và nghiên cứu chuyên sâu về CNTT.
Xin cảm ơn bạn bè và đồng nghiệp đã động viên, giúp đỡ cũng như tạo điều

kiện thuận lợi cho tôi trong quá trình thực hiện luận văn.
Đặc biệt tôi xin gởi lời cảm ơn sâu sắc đến thầy giáo hướng dẫn khoa học –
PGS.TS Trần Văn Lăng - đã tận tình chỉ bảo, hướng dẫn cho tôi trong quá trình nghiên
cứu và thực hiện luận văn.
Cuối cùng, tôi biết ơn gia đình đã tạo mọi điều kiện thuận lợi cho tôi yên tâm
trong suốt thời gian nghiên cứu và hoàn thành luận văn cao học này.
TP HCM , ngày 10 tháng 11 năm 2017
HỌC VIÊN THỰC HIỆN LUẬN VĂN

Tô Trọng Tín


iii

MỤC LỤC
LỜI CAM ĐOAN ....................................................................................................... i
LỜI CẢM ƠN ............................................................................................................ ii
DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT ................................................v
DANH SÁCH HÌNH VẼ .......................................................................................... vi
DANH SÁCH BẢNG ............................................................................................. viii
MỞ ĐẦU .....................................................................................................................1
CHƯƠNG 1 - TỔNG QUAN HỆ THỐNG PHÁT HIỆN ..........................................4
XÂM NHẬP................................................................................................................4
1.1

Tổng quan về tấn công mạng.........................................................................4

1.1.1 Khái niệm về tấn công mạng [8] ................................................................4
1.1.2 Các kiểu tấn công mạng .............................................................................4
1.2


Tổng quan về hệ thống phát hiện xâm nhập IDS ..........................................6

1.2.1 Các thành phần chính của IDS ...................................................................7
1.2.2 Chức năng của IDS [10] .............................................................................8
1.2.3 Quy trình hoạt động của IDS .....................................................................9
1.2.4 Phân loại IDS ...........................................................................................10
1.3

Tiểu kết chương 1 ........................................................................................13

CHƯƠNG 2 - MÔ HÌNH MẠNG NEURAL ...........................................................14
VÀ PHƯƠNG PHÁP HỌC SÂU .............................................................................14
2.1

Tổng quan về mạng Neural .........................................................................14

2.1.1 Phân loại mạng Neural .............................................................................16
2.1.2 Thuật toán học trong mạng Neural...........................................................18
2.1.3 Thuật toán lan truyền ngược ( Back propagation) [16] ............................20
2.2

Học sâu ( Deep Learning ) ...........................................................................22

2.2.1 Khái niệm cơ bản .....................................................................................22
2.2.2 Kiến trúc mạng neural hồi quy (RNN) .....................................................23
2.2.3 Thuật toán lan truyền ngược liên hồi (BPTT) ..........................................26
2.2.4 Mô hình mạng LSTM (Long – short term memory) [3][6][17] ...............30
2.3


Tiểu kết chương 2 ........................................................................................34

CHƯƠNG 3 - THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ .................................35
3.1

Yêu cầu của hệ thống phát hiện xâm nhập ..................................................35


iv

3.2

Thiết lập thử nghiệm IDS sử dụng mô hình mạng neural sâu .....................35

3.2.1 Thư viện hỗ trợ .........................................................................................36
3.2.2 Bộ dữ liệu huấn luyện KDD99 .................................................................36
3.2.2 Các phương pháp đánh giá .......................................................................38
3.2.3 Model setup ..............................................................................................39
3.3

Một số kết quả và đánh giá ..........................................................................42

KẾT LUẬN ...............................................................................................................44
DANH MỤC TÀI LIỆU THAM KHẢO ...............................................................45


v

DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT
Viết tắt


Tiếng Anh

Tiếng Việt

DNN

Deep Neural Network

Mạng neural sâu

ANN

Artifical Neural Network

Mạng neural nhân tạo

IDS

Intrusion Detection System

Hệ thống phát hiện xâm nhập
Cơ sở dữ liệu

CSDL
Dos

Denial of Service

Tấn công từ chối dịch vụ


LSTM

Long-Short term memory

Bộ nhớ dài- ngắn hạn

RNN

Recurrent Neural Network

Mạng neural hồi quy

GPU

Graphics Processing Unit

Bộ xử lý đồ họa

CPU

Central Processing Unit

Bộ xử lý trung tâm

IPS

Internet Service Provider

Trung tâm cung cấp dịch vụ


LAN

Local Area Network

Mạng cục bộ

VPN

Virtual Private Network

Mạng riêng ảo

NIDS

Network Based IDS

IDS trên mạng

HIDS

Host Based IDS

IDS trên máy tính

OSI

Open Systems Interconnection

Mô hình tham chiếu


UDP

User Datagram Protocol

Giao thức cốt lỗi

HTTP

HyperText Transfer Protocol

Giao thức truyền siêu văn bản

FTP

File Transfer Protoco

Giao thức truyền file

API

Application Programming Interface Giao diện lập trình ứng


vi

DANH SÁCH HÌNH VẼ
Hình 1.1 : Các thành phần Ids .................................................................................. 7
Hình 1.2: Quy trình hoạt động IDS ........................................................................ . 10
Hình 1.3 : Hệ thống IDS đặt sau firewall ................................................................. 11

Hình 1.4 : Hệ thống IDS đặt giữa router và firewall ................................................ 12
Hình 2.1 : Ma trận đầu vào và ma trận trọng số....................................................... 14
Hình 2.2 : Kiến trúc mạng neural nhân tạo .............................................................. 14
Hình 2.3 : Mô hình mạng neural 1 lớp ..................................................................... 17
Hình 2.4 : Mô hình mạng neural nhiều lớp .............................................................. 17
Hình 2.5 : Mô hình mạng neural truyền thẳng ......................................................... 18
Hình 2.6 : Mô hình mạng neural hồi quy ................................................................. 18
Hình 2.7 : Mô tả tiến trình học của neural ............................................................... 19
Hình 2.8. Cấu trúc của thuật toán Back propagation ............................................... 22
Hình 2.9: Mạng neural hồi quy được dàn trải theo mỗi bước thời gian .................. 24
Hình 2.10. Quá trình truyền ngược trên chuỗi dữ liệu ............................................. 27
Hình 2.11. biểu đồ tanh và đạo hàm......................................................................... 29
Hình 2.12. Các mô-đun lặp trong 1 nút mạng RNN ................................................ 30
Hình 2.13. Các mô-đun lặp trong 1 nút mạng LSTM .............................................. 30
Hình 2.14. Miêu tả trạng thái tế bào ........................................................................ 31
Hình 2.15. Dữ liệu được truyền qua cổng quên ....................................................... 32
Hình 2.16. Dữ liệu truyền qua cổng đầu vào ........................................................... 32
Hình 2.17. Dữ liệu được truyền qua thanh trạng thái .............................................. 32
Hình 2.18. Dữ liệu đi qua các cổng và hội tụ ở đầu ra............................................. 33
Hình 2.19. peephole connection thêm vào ............................................................... 33
Hình 2.20. Hợp quyết định thêm vào và bỏ đi cùng nhau ....................................... 34
Hình 2.21. Mô hình mạng GRU ............................................................................... 34
Hình 3.1. Mô hình IDS sử dụng RNN ..................................................................... 35
Hình 3.2. Bảng phân loại tấn công ........................................................................... 37
Hình 3.3. Tỷ lệ các loại tấn công trong tập dữ liệu .................................................. 38


vii

Hình 3.4. Tỷ lệ các nhóm tấn công trong tập dữ liệu ............................................... 38

Hình 3.5. minh họa trích xuất 5 trafic trong tập dữ liệu KDD99 ............................. 40
Hình 3.6. minh họa dịch 5 trafic trong tập dữ liệu KDD99 ..................................... 40
Hình 3.7. Tỷ lệ DR và FAR khi thay đổi learning rate ............................................ 41
Hình 3.8. Tỷ lệ DR và FAR khi thay đổi lớp ẩn ...................................................... 41
Hình 3.9. Liệt kê các loại tấn công phát hiện được.................................................. 42
Hình 3.10. Các loại tấn công dự đoán được so với tấn công thật sự........................ 42
Hình 3.11. Confusion matrix .................................................................................... 42
Hình 3.12. Confusion matrix được chuẩn hóa ......................................................... 43


viii

DANH SÁCH BẢNG
Bảng 3.1. So sánh hiệu suất giữa các thuật toán học

43


1

MỞ ĐẦU
Hệ thống phát hiện tấn công mạng (Intrusion Detection System) là một công
cụ mạnh mẽ và hiệu quả trong công việc phát hiện và phòng chống tấn công trước
các hành vi truy cập mạng của người sử dụng. Năm 1997 khái niệm về hệ thống IDS
được phổ biến ra toàn thế giới, các hệ thống IDS lúc đó phân tích và dự báo các cuộc
tấn công mạng chủ yếu qua cơ cở dữ liệu bằng cách so sánh các bảng ghi có sẵn trong
CSDL và lưu lượng mạng, để việc phát hiện tấn công đạt hiệu quả cao thì CSDL này
cần phải thường xuyên được cập nhật (được thực hiện bằng phương pháp thủ công
hoặc tự động trong khoảng thời gian nhất định) điều đó tạo nên sự khó khăn trong
điều kiện bùng nổ lưu lượng mạng như hiện nay (năm 2009, chỉ tính riêng ở Việt

Nam tổng băng thông kết nối trong nước đạt 89.090 Mbps, lưu lượng trao đổi qua
trung chuyển VNIX đạt 40.489.689 Gbps).
Lý do chọn đề tài : Trước sự tiến bộ của thông tin và truyền thông, những mối
đe dọa an ninh mạng cũng tăng lên rất nhiều, hệ thống phát hiện tấn công mạng (IDS)
là 1 trong những vấn đề bảo mật đáng quan tâm ngày hôm nay. Những cảnh báo chậm
chạp và sai lệch của hệ thống IDS sẽ tạo nên ảnh hưởng nghiêm trọng đến kinh tế và
chính trị, để đạt hiệu quả cao hơn và tốc độ phát hiện nhanh hơn chúng ta phải nghiên
cứu và áp dụng các kỹ thuật phân loại, so sánh mới và tiến bộ hơn, hiện nay có một
hướng tiếp cận đã khắc phục được các hạn chế cũ là kỹ thuật máy học (machine
learning), và hơn nữa là kỹ thuật học sâu (deep learning) dựa trên các thuật toán máy
học. Nội dung của đề tài là thử nghiệm mô hình IDS với cách tiếp cận sâu, nghiên
cứu kỹ thuật LSTM đối với mạng lưới thần kinh hồi quy (Recurrent neural network)
và đào tạo mô hình này với bộ dữ liệu KDD99, so sánh và đánh giá được ưu, nhược
điểm với các thuật toán học tập khác.
Các công nghệ đã có : từ năm 2003, khi mà hệ thống IDS truyền thống thể
hiện những khuyết điểm trong chức năng nhận dạng các cuộc tấn công mạng, một làn
sóng nghiên cứu về các kỹ thuật học máy được khơi dậy, điển hình là :


2

- Kỹ thuật thống kê, khai thác và phân tích dữ liệu kiểm toán ( ADAM - Audit
data analysis and mining), kỹ thuật này chủ yếu sử dụng các kỹ thuật khai phá dữ liệu
như ứng dụng các luật kết hợp và kỹ thuật phân lớp vào việc khám phá các mẫu dị
thường trong tập dữ liệu lớn.
- Mô hình máy vector hỗ trợ (SVM) một lớp ( Vladimir N. Vapnik, 1995) được
áp dụng vào hệ thống IDS phát hiện bất thường cùng với kỹ thuật phân cụm để giảm
thiểu số chiều dữ liệu trích xuất được từ Payload [1].
- Mô hình neural network (Fox, Henning, Reed và Simmonian ,1990) với việc
mô phỏng trí tuệ con người trong xử lý thông tin, đây là một mô hình máy học đặc

biệt bởi cấu trúc mạng neural gồm 3 lớp : đầu vào layer, hidden layer và đầu ra layer,
với cấu trúc này chúng ta có thể tùy biến các hidden layer sao cho có thể khống chế
độ phức tạp và số chiều của dữ liệu thích hợp với mục đích phân tích dữ liệu mà
chúng ta đang hướng đến, đồng thời đối với việc xử lý các PE (processing element)
chúng ta sẽ tạo ra các biến thể độc đáo có những ưu điểm riêng vượt trội so với mô
hình truyền thống [6] .
- Ngoài ra còn có các kỹ thuật học máy được ứng dụng vào IDS như kỹ thuật
Decision Tree, n-gram...
Những vấn đề còn tồn tại : khi ứng dụng các kỹ thuật máy học vào hệ thống
IDS thì hệ thống có thể tự cập nhật bộ trọng số mà chúng đã học tập được trong quá
trình phân loại tấn công, không cần người quản trị phải cập nhật nữa nhưng ở giai
đoạn huấn luyện người quản trị hay các feature engineer phải thu thập các bộ dữ liệu
lớn và điều chỉnh lại các feature sao cho đúng chuẩn, chọn lọc các feature phù hợp
với mô hình hiện tại, thêm các feature mới vào dữ liệu, xử lý các thuộc tính bị thiếu
dữ liệu, thay đổi kiểu dữ liệu của feature và chuẩn hóa toàn bộ feature trong cơ sở dữ
liệu. Đây là một công cuộc cần rất nhiều thời gian và sự chính xác để có thể tối ưu
khả năng nhận dạng và học tập của hệ thống, ngoài ra khuyết điểm là đối với những
tập dữ liệu khổng lồ và liên tục như đã nói ở trên thì hệ thống sẽ cần rất nhiều thời
gian cũng như sức mạnh phần cứng để phân tích và xử lý.


3

Giải pháp : năm 2006 - Geoffrey Hinton đã đưa ra thuật ngữ "deep learning"
để giải thích các thuật toán mới cố gắng để mô hình dữ liệu trừu tượng hóa ở mức
cao bằng cách sử dụng nhiều lớp xử lý với cấu trúc phức tạp hoặc bằng các cách khác
bao gồm nhiều biến đổi phi tuyến [2]. Deep learning hay “học sâu” là một họ của
phương pháp máy học nhưng chúng phân tích sâu vào cấu trúc xử lý dữ liệu của các
kỹ thuật máy học đã có hơn là tạo ra một kiến trúc hoàn toàn mới và kỹ thuật deep
learning phổ biến nhất được xây dựng trên mô hình neural network. Ưu điểm của kỹ

thuật deep learning là chúng xử lý được thông tin ở dạng dữ liệu thô, vì cấu trúc gồm
nhiều lớp xử lý nên mỗi lớp sẽ đóng vai trò như một feature, dữ liệu không cần thiết
sẽ dần bị lọc bớt khi truyền qua đó ngoài ra bản thân các lớp xử lý sử dụng các thuật
toán thống kê với quy mô lớn chạy xuyên suốt quá trình xử lý nên chúng có thể tự
động điều chỉnh kết quả đầu ra để cải thiện khả năng dự đoán [7].
Với những ưu điểm và tiện lợi của mạng neural sâu, tôi chọn đề tài “NGHIÊN
CỨU CẢI THIỆN KHẢ NĂNG PHÁT HIỆN TẤN CÔNG MẠNG BẰNG KỸ
THUẬT DEEP LEARNING“ để nghiên cứu và thử nghiệm một hướng tiếp cận mới
về máy học vào công việc phát hiện tấn công mạng.


4

CHƯƠNG 1 - TỔNG QUAN HỆ THỐNG PHÁT HIỆN
XÂM NHẬP
1.1

Tổng quan về tấn công mạng

1.1.1 Khái niệm về tấn công mạng [8]
Tấn công mạng là tác động hoặc là trình tự liên kết giữa các tác động với nhau
để phá hủy, dẫn đến việc hiện thực hóa các nguy cơ bằng cách lợi dụng đặc tính dễ
bị tổn thương của các hệ thống thông tin. Theo một cách khác tấn công mạng có thể
được định nghĩa là bất kì hành động nào cố gắng làm tổn hại sự toàn vẹn, bí mật, tính
sẵn sàng của một tài nguyên hoặc đi ngược lại mục tiêu bảo mật của một tài nguyên
nào đó.

1.1.2 Các kiểu tấn công mạng
- Cài đặt spyware, keylogger, backdoor : Hay còn gọi là tấn công thành lập
“cửa sau”, là cách tấn công cài đặt các ứng dụng cho phép truy cập từ xa vào máy

tính nạn nhân. Trong loại vi phạm này, hacker sử dụng các loại phần mềm gián điệp
được thiết kế, lập trình rất tinh vi, hoạt động ở chế độ ẩn có các chức năng như: điều
khiển từ xa, tự động cập nhật lệnh mới, ghi thông tin gõ bàn phím, duyệt và lấy cắp
dữ liệu, chụp ảnh màn hình, mở micro ghi tín hiệu thoại, mã hóa dữ liệu và gửi vào
email được lưu trên một máy chủ trung gian để giấu nguồn gốc của hacker....Hacker
quốc tế thường sử dụng thư rác giả mạo thông báo của các website mua bán trực
tuyến hoặc các dịch vụ như Twitter, Facebook và Windows Live, lừa người dùng
bằng những đường link thông báo khuyến mãi gắn mã độc.
- Tấn công từ chối dịch vụ DDoS- Botnet : Một cuộc tấn công từ chối dịch vụ
(DOS) ngăn cản người dùng hợp pháp truy cập vào các dịch vụ hoặc thông tin. Nó
thành công khi một kẻ tấn công làm quá tải một máy chủ với yêu cầu nhiều hơn các
máy chủ có thể xử lý. DDos là chỉ một kẻ nào đó tấn công kiểm soát máy tính và sử
dụng chúng để làm tràn một email đặc biệt với các tin nhắn hoặc một trang web có
khối dữ liệu khổng lồ. Các tấn công DoS bao gồm TCP-SYN Flood, ICMP/UDP
Flood, Smurf, Ping of Death, Teardrop, Mailbomb, Apache2. Hiện nay, hàng loạt


5

phần mềm độc hại (malware) rất nguy hiểm như Zeus, SpyEye, Filon, Clod Bugat,
Kraken, Grum, Bobax... Ví dụ như, Grum là mạng Botnet để phát tán thư rác, hoạt
động theo chế độ ẩn của rootkit lây nhiễm vào khóa registry AutoRun, để luôn luôn
được kích hoạt và phát tán hàng chục tỷ thư rác mỗi ngày.
- Tấn công lỗ hổng bảo mật web : Loại thứ nhất là các tấn công như SQL
injection. Đặc biệt, các website sử dụng chung server hoặc chung hệ thống máy chủ
của nhà cung cấp dịch vụ ISP dễ bị trở thành cầu nối tấn công sang các đích khác;
Thứ hai là tấn công vào mạng nội bộ LAN thông qua VPN. Thứ ba là hình thức tấn
công vào cơ sở dữ liệu của trang web với mục đích lấy cắp dữ liệu, phá hoại, thay đổi
nội dung. Hacker xâm nhập vào cơ sở dữ liệu của trang web, từng bước thay đổi
quyền điều khiển website và tiến tới chiếm toàn quyền điều khiển trang web và cơ sở

dữ liệu.
- Sử dụng Proxy tấn công mạng : Proxy server là một Internet server làm nhiệm
vụ chuyển tiếp, kiểm soát thông tin và bảo đảm an toàn cho việc truy cập Internet của
máy khách hàng sử dụng dịch vụ internet. Proxy có địa chỉ IP và một cổng truy cập
cố định, làm server trung gian giữa máy trạm yêu cầu dịch vụ và máy chủ cung cấp
tài nguyên. Khi có một yêu cầu từ một máy trạm, trước tiên yêu cầu này được chuyển
tới proxy server để kiểm tra. Nếu dịch vụ này đã được ghi nhớ (cache) sẵn trong bộ
nhớ, proxy sẽ trả kết quả trực tiếp cho máy trạm mà không cần truy cập tới máy chủ
chứa tài nguyên. Nếu không có cache, proxy sẽ kiểm tra tính hợp lệ của các yêu cầu,
nếu yêu cầu hợp lệ, proxy thay mặt máy trạm chuyển tiếp tới máy chủ chứa tài
nguyên. Kết quả sẽ được máy chủ cung cấp tài nguyên trả về qua proxy và proxy sẽ
trả kết quả về cho máy trạm. Hacker luôn ẩn danh khi thực hiện các cuộc tấn công
website, upload hoặc download dữ liệu, bằng cách sử dụng Proxyserver; Bên cạnh
đó, người dùng cũng có nhu cầu sử dụng Proxy để bảo vệ thông tin cá nhân hợp pháp.
Với chức năng ẩn danh, Proxy cũng được sử dụng để truy cập vào các tài
nguyên bị firewall cấm, khi muốn vào một trang web bị chặn, để che giấu địa chỉ IP
thật của trang web đó, có thể truy cập vào một proxy server, thay máy chủ của trang
web giao tiếp với máy tính của người sử dụng. Khi đó, firewall chỉ biết Proxy Server


6

và không biết địa chỉ trang web thực đang truy cập. Proxy Server không nằm trong
danh sách cấm truy cập (Access Control List – ACL) của firewall nên firewall không
thể chặn truy cập này. Phần lớn HTTP Proxy chỉ có tác dụng cho dịch vụ HTTP (web
browsing), còn SOCKS Proxy có thể được sử dụng cho nhiều dịch vụ khác nhau
(HTTP, FTP, SMTP, POP3...).
- Tấn công trên tầng ứng dụng : Đây là cách tấn công lợi dụng các lỗ hổng
phần mềm ứng dụng trên các máy chủ như Email, PostScript, FTP... để lấy quyền
truy nhập vào hệ thống như quyền quản trị, quyền điều khiển hệ thống và từ đó kiểm

soát hệ thống để tiến hành hoạt động phá hoại. Cách tấn công điển hình trên tầng ứng
dụng là dùng phần mềm Trojan; Các đoạn chương trình này được cấy ghép hoặc thay
thế những đoạn chương trình khác nằm trong một ứng dụng dùng chung, cung cấp
tính năng phổ biến phục vụ người dùng nhưng có thêm chức năng chỉ có hacker biết
(theo dõi quá trình đăng nhập hệ thống mạng, lấy trộm thông tin tài khoản, password
hoặc thông tin nhạy cảm khác). Hacker cũng có thể thay đổi một số tính năng của
ứng dụng như cấu hình hệ thống thư điện tử luôn gửi một bản copy đến địa chỉ hacker
cho phép hacker có thể đọc được toàn bộ thông tin trao đổi của doanh nghiệp với các
đối tác qua thư điện tử....
- Tấn công khai thác mối quan hệ tin cậy : Khi hệ thống A và hệ thống B có
mối quan hệ tin cậy nhau, các điểm yếu của hệ thống B có thể bị hacker lợi dụng, để
tấn công vào hệ thống A, vì các truy cập từ hệ thống B vào hệ thống A được xem là
hợp lệ. Để ngăn chặn tấn công lợi dụng mối quan hệ tin cậy, người quản trị hệ thống
phải hạn chế các mối quan hệ tin cậy từ hệ thống mạng bên trong với hệ thống mạng
bên ngoài.

1.2

Tổng quan về hệ thống phát hiện xâm nhập IDS
Hệ thống phát hiện xâm nhập (IDS) là một loại thiết bị hoặc phần mềm bảo

mật thiết yếu để đi kèm với các bộ phận bảo mật như tường lửa và các phần mềm
chống virus, được thiết kế để tự động cảnh báo các quản trị viên khi ai đó hoặc cái gì
đó đang cố gắng xâm nhập hệ thống thông tin thông qua các hoạt động nguy hiểm
hoặc vi phạm chính sách bảo mật, những hệ thống này sẽ không đạt hiệu quả tốt nếu


7

sử dụng riêng lẻ vì mỗi loại được thiết kế riêng để chống lại kẻ tấn công trong các

khu vực tập trung cụ thể. IDS hoạt động bằng cách theo dõi hoạt động của hệ thống
thông qua việc kiểm tra các lỗ hổng trong hệ thống, tính toàn vẹn của các tệp tin và
tiến hành phân tích các mẫu dựa trên các cuộc tấn công đã biết. Nó cũng tự động theo
dõi lưu lượng mạng để tìm kiếm các mối đe dọa mới nhất có thể dẫn đến một cuộc
tấn công trong tương lai. Điểm khác biệt của IDS và hệ thống tường lửa là mặc dù cả
hai đều liên quan đến bảo mật nhưng tường lửa theo dõi sự xâm nhập từ bên ngoài
thông qua các địa chỉ bị cấm trong header của gói tin và ngăn chặn chúng xảy ra
nhưng không phát hiện được các cuộc xâm nhập từ thông tin gói tin và bên trong
mạng nội bộ; Bên cạnh đó IDS sẽ đánh giá sự xâm nhập đáng ngờ khi nó đã, đang và
sắp diễn ra đồng thời phát ra cảnh báo, nó theo dõi được các cuộc xâm nhập bằng
cách rà soát và tìm kiếm dấu hiệu tấn công từ nội dung gói tin lưu thông bên trong
một hệ thống [9].

1.2.1 Các thành phần chính của IDS

Hình 1.1: Các thành phần Ids

1. Trung tâm điều khiển (The Command Console)
Trung tâm điều khiển là nơi mà IDS được giám sát và quản lí. Nó duy trì kiểm
soát thông qua các thành phần của IDS và có thể được truy cập từ bất cứ nơi nào.
Trung tâm điều khiển duy trì một số kênh liên lạc với bộ cảm biến (Network Sensor)
qua một đường mã hóa và nó là một máy chuyên dụng.
2. Bộ cảm biến (Network Sensor)


8

Bộ cảm biến là chương trình chạy trên các thiết bị mạng hoặc máy chuyên
dụng trên các đường mạng thiết yếu. Bộ cảm biến có một vai trò quan trọng vì có
hàng nghìn mục tiêu cần được giám sát trên mạng. Ngoài ra bộ cảm biến còn được

tích hợp với thành phần sưu tập dữ liệu - một bộ tạo sự kiện. Cách sưu tập này được
xác định bởi chính sách tạo sự kiện để định nghĩa chế độ lọc thông tin sự kiện. Bộ tạo
sự kiện (hệ điều hành, mạng, ứng dụng) cung cấp một số chính sách thích hợp cho
các sự kiện, có thể là một bản ghi các sự kiện của hệ thống hoặc các gói mạng. Số
chính sách này cùng với thông tin chính sách có thể được lưu trong hệ thống được
bảo vệ hoặc ở bên ngoài. Trong trường hợp nào đó, ví dụ, khi luồng dữ liệu sự kiện
được truyền tải trực tiếp đến bộ phân tích mà không có sự lưu giữ dữ liệu nào được
thực hiện. Vai trò của bộ cảm biến là dùng để lọc thông tin và loại bỏ dữ liệu không
tương thích đạt được từ các sự kiện liên quan với hệ thống bảo vệ, vì vậy có thể phát
hiện được các hành động nghi ngờ.
3. Thành phần cảnh báo
Thành phần cảnh báo có chức năng gửi những cảnh báo tới người quản trị.
Trong các hệ thống IDS hiện đại, lời cảnh báo có thể ở dưới nhiều dạng như: cửa sổ
pop-up, tiếng chuông, email, SNMP.

1.2.2 Chức năng của IDS [10]
- Bảo vệ tính toàn vẹn (integrity) của dữ liệu, bảo đảm sự nhất quán của dữ
liệu trong hệ thống. Các biện pháp đưa ra ngăn chặn được việc thay đổi bất hợp pháp
hoặc phá hoại dữ liệu. Bảo vệ tính bí mật, giữ cho thông tin không bị lộ ra ngoài. Bảo
vệ tính khả dụng, tức là hệ thống luôn sẵn sàng thực hiện yêu cầu truy nhập thông tin
của người dùng hợp pháp.
- Bảo vệ tính riêng tư, tức là đảm bảo cho người sử dụng khai thác tài nguyên
của hệ thống theo đúng chức năng, nhiệm vụ đã được phân cấp, ngăn chặn được sự
truy nhập thông tin bất hợp pháp.
- Cung cấp thông tin về sự xâm nhập, đưa ra những chính sách đối phó, khôi
phục, sửa chữa…
- Chức năng quan trọng nhất là: giám sát – cảnh báo – bảo vệ


9


Giám sát: Giám sát lưu lượng mạng các hoạt động bất thường và các hoạt động
khả nghi.
Cảnh báo: Khi đã biết được các hoạt động bất thường của một (hoặc một
nhóm) truy cập nào đó, IDS sẽ đưa ra cảnh báo cho hệ thống và người quản trị.
Bảo vệ: Dùng những thiết lập mặc định và những cấu hình từ nhà quản trị mà
có những hành động thiết thực chống lại kẻ xâm nhập và phá hoại
- Chức năng mở rộng:
Phân biệt tấn công bên trong và bên ngoài : Đây là chức năng rất hay của IDS,
nó có thể phân biệt được đâu là những truy cập hợp lệ (không hợp lệ) từ bên trong và
đâu là cuộc tấn công từ bên ngoài vào hệ thống.
Phát hiện : Dựa vào sự so sánh lưu lượng mạng hiện tại với Baseline, IDS có
thể phát hiện ra những dấu hiệu bất thường và đưa ra các cảnh báo và bảo vệ ban đầu
cho hệ thống.

1.2.3 Quy trình hoạt động của IDS
1. Một host tạo ra một gói tin mạng, gói tin này không khác gì so với một gói
tin khác đã tồn tại và được gởi từ host khác trong mạng.
2. Các cảm biến trong mạng đọc các gói tin trong khoảng thời gian trước khi
nó được gửi ra khỏi mạng cục bộ (cảm biến này cần phải được đặt sao cho nó có thể
đọc tất cả các gói tin).
3. Chương trình phát hiện nằm trong bộ cảm biến kiểm tra xem có gói tin nào
có dấu hiệu vi phạm hay không.Khi có dấu hiệu vi phạm thì một cảnh báo sẽ được
tạo ra và gửi đến giao diện điều khiển.
4. Khi giao diện điều khiển lệnh nhận được cảnh báo nó sẽ gửi thông báo cho
một người hoặc một nhóm đã được chỉ định từ trước(thông wa email,cửa sổ
popup,trang web v.v…).
5. Phản hồi được khởi tạo theo quy định ứng với dấu hiệu xâm nhập này.
6. Các cảnh báo được lưu lại để tham khảo trong tương lai (trên địa chỉ cục bộ
hoặc trên cơ sở dữ liệu).

7. Một báo cáo tóm tắt về chi tiết của sự cố được tạo ra.


10

8. Cảnh báo được so sánh với các dữ liệu khác để xác định xem đây có phải
là cuộc tấn công hay không.

Hình 1.2: Quy trình hoạt động IDS

1.2.4 Phân loại IDS
Hệ thống IDS được chia làm 2 loại cơ bản:
- Network-based IDS (NIDS): NIDS được sử dụng trên một mạng chuyển
mạch mà trong đó các cổng mở rộng không được kích hoạt, bằng cách thiết kế một
chức năng chuyển đổi trên nguyên tắc chỉ truyền gói tin trực tiếp đến người nhận dự
định của gói mà không phải gửi cho toàn bộ mạng. NIDS sẽ quét bất kỳ lưu lượng
truy cập nào được truyền qua đoạn mạng đó, nó có chức năng tương tự như các ứng
dụng chống virus cao cấp và nó sử dụng phương pháp tệp chữ ký hoặc mẫu để so
sánh mỗi gói truyền cho các mẫu có thể xảy ra bên trong tệp chữ ký


11

Hình 1.3 : Hệ thống IDS đặt sau firewall (nguồn: google.com)

Ưu điểm:
+ Quản lý được cả một network segment (gồm nhiều host)
+ Trong suốt với người sử dụng lẫn kẻ tấn công
+ Cài đặt và bảo trì đơn giản, không ảnh hưởng tới mạng
+ Tránh DOS ảnh hưởng tới một host nào đó

+ Có khả năng xác định lỗi ở tầng Network
+ Độc lập với OS
Nhược điểm:
+ Có thể xảy ra trường hợp báo động giả
+ Không thể phân tích các dữ liệu đã được mã hóa (VD: SSL, SSH, IPSec…)
+ NIDS đòi hỏi phải được cập nhật các signature mới nhất để thực sự an toàn
+ Có độ trễ giữa thời điểm bị tấn công với thời điểm phát báo động. Khi báo
động được phát hiện, hệ thống có thể đã bị tổn hại.
+ Không cho biết việc tấn công có thành công hay không
+ Hạn chế lớn nhất là giới hạn băng thông. Những bộ dò mạng phải nhận tất
cả các lưu lượng mạng, sắp xếp lại những lưu lượng đó và phân tích chúng. Khi tốc
độ mạng tăng lên thì khả năng của đầu dò cũng phải tăng theo.
- Host-based IDS (HIDS): Hệ thống phát hiện xâm nhập máy chủ được cài
đặt cục bộ trên các máy chủ làm cho nó trở thành một hệ thống rất linh hoạt so với
NIDS. HIDS có thể được cài đặt trên nhiều loại máy khác nhau như máy chủ, máy
trạm và máy tính xách tay, làm như vậy sẽ mang lại một lợi thế mà NIDS không có.
Lưu lượng truyền đến host được phân tích và truyền đến máy chủ lưu trữ nếu không


12

có các gói dữ liệu độc hại tiềm ẩn trong quá trình truyền dữ liệu. HIDS thường được
đặt trên các host quan trọng và các server trong vùng DMS

Hình 1.4 : Hệ thống IDS đặt giữa router và firewall (nguồn : google.com)

Ưu điểm:
+ Có khả năng xác định user liên quan tới event
+ HIDS có khả năng phát hiện tấn công diễn ra trên một máy, NIDS thì
không

+ Có thể phân tích các dữ liệu mã hóa
+ 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:
+ Thông tin từ HIDS là không đáng tin cậy ngay khi sự tấn công vào host
này thành công
+ Khi OS bị sập do tấn công, đồng thời HIDS cũng sập
+ HIDS phải được thiết lập trên từng host cần giám sát
+ HIDS không có khả năng phát hiện các cuộc dò quét mạng (Nmap, Netcat
…)
+ HIDS cần tài nguyên trên host để hoạt động
+ HIDS có thể không hiệu quả khi bị DOS.


13

1.3

Tiểu kết chương 1
Chương 1 đã nêu lên những nội dung cơ bản về các cuộc tấn công mạng và

IDS: phân loại tấn công và đặc điểm nhận biết tấn công mạng, vai trò, đặc điểm và
khả năng phát hiện và phòng chống xâm nhập, giám sát lưu lượng, giám sát trạng thái
hoạt động của thiết bị và dịch vụ trong hệ thống mạng.


14

CHƯƠNG 2 - MÔ HÌNH MẠNG NEURAL
VÀ PHƯƠNG PHÁP HỌC SÂU

2.1

Tổng quan về mạng Neural
Mạng neural nhân tạo (Artificial Neural Network) được xây dựng từ các neural

( còn gọi là một đơn vị xử lý hay một node) và chúng được nối với nhau bởi các liên
kết. Mỗi liên kết kèm theo một trọng số nào đó, đặc trưng cho tính kích hoạt/ ức chế
giữa các neural. ý tưởng cơ bản đằng sau mạng neural là để mô phỏng rất nhiều các
tế bào não kết nối chặt chẽ bên trong một máy tính để nó có thể học, nhận ra các mô
hình và ra quyết định theo cách giống như con người.
Thông thường các neural có nhiều đầu vào. Một neural có R đầu vào x1, x2...,
xR sẽ có các trọng số tương ứng w1, w2,..., wR tạo thành một ma trận W và được gọi
là ma trận trọng số.

Hình 2.1: Ma trận đầu vào và ma trận trọng số [8]

Hình 2.2: Kiến trúc mạng neural nhân tạo (nguồn google.com)


15

Một mạng thần kinh điển hình có từ vài chục đến hàng trăm, hàng nghìn,
thậm chí hàng triệu tế bào thần kinh nhân tạo được gọi là các đơn vị được sắp xếp
trong một loạt các lớp, mỗi lớp liên kết với các lớp ở hai bên. Một lớp chứa các đơn
vị đầu vào được thiết kế để nhận các hình thức thông tin từ thế giới bên ngoài và
mạng sẽ cố gắng tìm hiểu, nhận dạng, hoặc xử lý chúng. Các đơn vị khác ở phía đối
diện của mạng và báo hiệu nó phản ứng như thế nào với thông tin đã học được gọi
là đơn vị đầu ra [15].
Mỗi đầu ra của một neural được thể hiện qua công thức sau :
(L)


yi

= f(w (L)T y (L−1) + b (L) )

Khi hàm kích hoạt f() được áp dụng cho một ma trận (hoặc vector), ta hiểu
rằng nó được áp dụng cho từng thành phần của ma trận đó. Sau đó các thành phần
này được sắp xếp lại đúng theo thứ tự để được một ma trận có kích thước bằng với
ma trận đầu vào. Việc lựa chọn hàm kích hoạt có tác động lớn đến kết quả của
mạng neural nhân tạo vì kết quả xử lý tại các neural (Đầu ra) đôi khi rất lớn, vì vậy
hàm kích hoạt được sử dụng để xử lý đầu ra này trước khi chuyển đến layer tiếp
theo. Hàm kích hoạt được sử dụng phổ biến trong mạng neural nhân tạo là sigmoid
(logical activation) function.

f(s) =

1
1+ⅇ−s

Kết quả của hàm Sigmoid thuộc khoảng [0,1] nên còn gọi là hàm chuẩn hóa
(Normalized Function), Nếu đầu vào lớn, hàm số sẽ cho đầu ra gần với 1 [15]. Với
đầu vào nhỏ (rất âm), hàm số sẽ cho đầu ra gần với 0, hàm số này được sử dụng
nhiều trong quá khứ vì có đạo hàm rất đẹp nhưng những năm gần đây, hàm số này ít
khi được sử dụng, nó có một nhược điểm cơ bản là khi đầu vào có trị tuyệt đối lớn
(rất âm hoặc rất dương) gradient của hàm số này sẽ rất gần với 0 điều này đồng
nghĩa với việc các hệ số tương ứng với neural đang xét sẽ gần như không được cập
nhật.



×