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

Khóa luận tốt nghiệp An toàn thông tin: Xây dựng hệ thống phát hiện và ngăn chặn mã độc tự động

90 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 đề Xây dựng hệ thống phát hiện và ngăn chặn mã độc tự động
Tác giả Huynh Gia Huy, Truong Tan Sang
Người hướng dẫn ThS. Nguyen Duy
Trường học Trường Đại học Công nghệ Thông tin
Chuyên ngành An Toàn Thông Tin
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2022
Thành phố TP. Ho Chi Minh
Định dạng
Số trang 90
Dung lượng 40,57 MB

Nội dung

Hệ thống cung cấp các tính năng phát hiện mã độc dựa trên signature thông qua SquidClamAV, có khả năng phân tích động các tập tin sử dung Cuckoo Sandbox, và tích hợp Snort IPS giúp ngăn

Trang 1

ĐẠI HỌC QUÓC GIA TP HÒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA MẠNG MÁY TÍNH VÀ TRUYÈN THÔNG

HUYNH GIA HUY - TRUONG TAN SANG

KHOA LUAN TOT NGHIEP

XAY DUNG HE THONG PHAT HIEN VA NGAN CHAN

MA DOC TU DONG

Building up an automatic malware detection and prevention system

KY SU NGANH AN TOAN THONG TIN

TP HO CHi MINH, 2022

Trang 2

ĐẠI HỌC QUỐC GIA TP HÒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

KHOA MẠNG MÁY TÍNH VÀ TRUYÈN THÔNG

HUYNH GIA HUY - 18520829 TRUONG TAN SANG - 18521336

KHOA LUAN TOT NGHIEP

XAY DUNG HE THONG PHAT HIEN VA NGAN CHAN

MA DOC TU DONG

Building up an automatic malware detection and prevention system

KY SU NGANH AN TOAN THONG TIN

GIANG VIEN HUONG DAN

ThS NGUYEN DUY

TP HO CHi MINH, 2022

Trang 3

THONG TIN HỘI DONG CHAM KHÓA LUẬN TOT NGHIỆP

Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số

ngầy của Hiệu trưởng Trường Đại học Công nghệ Thông tin.

Trang 4

LỜI CẢM ƠN

Chúng tôi trân trọng cảm ơn các thầy cô ở Khoa Mạng Máy Tính và Truyền Thông đã tạo điều kiện cho chúng tôi có cơ hội được thực hiện khóa luận này Xin gửi lời cảm ơn chân thành và tri ân sâu sắc đến tat cả thầy cô Trường Đại học Công nghệ Thông tin Những kinh nghiệm, những tri thức được thầy cô truyền đạt trong suốt thời gian học tập tại trường là món quà vô giá và là hành trang vô cùng quan

trọng với chúng tôi trên con đường sau này.

Chúng tôi xin bày tỏ sự biết ơn đặc biệt đến Thầy Nguyễn Duy Người đã dẫn dắt, truyền cảm hứng và niềm đam mê nghiên cứu cho chúng tôi Những sự hỗ trợ, hướng dẫn tận tình và tạo điều kiện tốt nhất từ thầy đã giúp chúng tôi hoàn thành khóa

luận này.

Xin gửi lời cảm ơn to lớn đến cha, mẹ Cha, mẹ là những người luôn ở bên ủng

hộ chúng con, là nguồn động lực và là chỗ dựa tinh than vững chắc giúp chúng con

vượt qua những khó khăn đê hoàn thành khóa luận này.

Mặc dù đã luôn nỗ lực, tâm huyết song kinh nghiệm và hiểu biết còn giới hạn.

Khóa luận này chắc chắn không tránh khỏi những khiếm khuyết, sai sót Chúng tôi kính mong nhận được những chỉ bảo, góp ý và sự thông cảm của quý thầy cô.

TP Hồ Chí Minh, ngày 05 tháng 06 năm 2022

Nhóm tác giả

Trang 5

1.5 Đối tượng và phạm vi của đề tài -¿-©2+c22vxcecxxrsrkeerrrrerrrcrrr 5

Chương 2 TONG QUAN -2-©222©2+22EESEEEEEEEEEEEEEEerkrerrree 6

2.1 Nghiên cứu tương ttl cceeceseeeseseeeeeeeeseseseeeeessesesenseseseseenesseaeee 6

2.2 Những vấn đề tồn tại 2222c222 E222 2E 2111.111 9

2.4 Các kịch bản triển khai : 22+222tt2£EvttttErtrrrtrtrrrrrrrrrrrrkrrrrer 10 2.5 Kết chướÖG TLU Ấ hoc " eRssletlescsapicssesscssessssecsesscsscssssessssecsscessscssses 11 Chương 3 CO SỞ LÝ THUYẾT :¿22+222+++2zszzzzss 12

3.1 Squid DFOXY 2 1121 1 1 9191212111 0111010111110 0100 101010 ri 12

3.2.2 Một số tinh năng nổi bật -2¿©2222+++2v+evcvxerxererseee 14

3.3 Snort

Trang 6

Chương 4 THIẾT KE HE THÓNG 2-©22©5+22s++cx+scse2 26

4.1 Yêu cầu tổng quát -¿-2¿©+22+++2E++22EE+SEEESEEEtEEErerrrrerrrrrrrree 26 4.1.1 Mục đích của hệ thống -2¿-©2+z222+t2cvrvervrerrrrsrrrrsrs 26 4.1.2 Phạm vi của hệ thông ¿-2¿22++222+t22xEt2rxetrrxesrrrrsrr 21 4.2 Tổng quan hệ thống.

4.3 Guard, logforwarder và logwatcher ¿+ ee + +++s++scsesrerers 29

4.3.1 Thiết kế giải thuật đọc tập tin nâng cao -: + 29

4.3.2 LOBÍOTWATdeT ST HH HH HH in 32 4.3.3 Guard Ăn HH HH Hư 33

Trang 7

4.3.4, Logwatcher oo ee ceescesecseecesecesseceseeeseeseaeeeseessseseseessaeeeseeseatens 36

PHY LUC 6z 5, T A 56

Trang 8

DANH MỤC HÌNH

Hình 2.1: Kiến trúc hệ thống phát hiện máy chủ độc hại - eee 7Hình 2.2: Luéng hoạt động phát hiện máy chủ độc hại -. - «<+++ 8Hình 3.1: Luồng xử lí gói tin của SnOrẨ 2 52 s+E++EeEzEeEEzEerkrrerkrree 16Hình 3.2: Kiến trúc tong quát của hệ thống Cuckoo sandbox - 18Hình 4.1: Mô hình hệ thong -2- ¿2S ©E+E£E£E2E£EEZEEEEEEEEEEEErErrerkrree 28Hình 4.2: Lưu đồ thuật toán đọc tập tin và xử lí - - 2s s+xseszeerszed 31Hình 4.3: Biéu đồ UML của logforwarder - 2: 2 ++5++s2xezxzzzzzxvzxez 32Hình 4.4: Lưu đồ thuật toán của øuard +2 + + s+s+£+£e+xzE+xerszxsrecee 34Hình 4.5: Biểu đồ UML của 8uard ¿2-6 52 S2E+E£EE+E+E£EEEzEeErkrkereree 35Hình 4.6: Lưu đồ thuật toán của logwatCher -5- 5c s+s+s+£zezxeeecszxses 37Hình 4.7: Các biến toàn cục trong logwafCher ¿2 + + s+s+x+£e£szx+zecsz 38Hình 4.8: Biêu đồ UML của logwatcher ¿+ 2 s5++E+£+zxezzxerxrrerxesee 39Hình 4.9: Lưu đồ thuật toán nhận và phân bố log - 2-2-2 +sz+szcszs4 40Hình 4.10: Biểu đồ UML của logreceiVeT - ¿5 52 Ss+E+E£E££EzEeEerszxereree 41Hình 4.11: Biểu đồ UML của các controller trong logreceiver - 42Hình 4.12: Biểu đồ UML các tham chiếu đến interface LogAccessService 43Hình 4.13: Biểu đồ UML giữa lớp cấu hình lệnh và lớp CommandController 43Hình 4.14: Biểu đồ UML các lớp kiểm tra đăng nhập của logreceiver 44Hình 4.15: Lưu đồ thuật toán của networkmonifOT- - + + scs+esx+x+x+xez 46Hình 4.16: Biểu đồ UML của lớp CapfOr 2-2- 2 522522x£xez+zz+zzzx+zxez 47Hình 4.17: Biểu đồ UML của một số lớp AnalyZer - - 2s cz s+s+sec+2 48Hình 4.18: Biểu đồ UML của các lớp StatistiC -5- 5c 5s+cccszcccsccee 49

Trang 9

Hình 4.19: Biểu đồ UML kết nối Analyzer và Statistic

Trang 10

DANH MỤC BANG

Bang 4.1: Cau hình hệ thống mạng

Bảng 4.2: Miêu tả các thành phan trong hệ thống -2- 252555522

Trang 11

DANH MỤC TỪ VIET TAT

STT Kí hiệu chữ viết tắt Chữ viết đầy đủ

1 AV Antivirus

2 ACL Access Control List

3 AL Access List

4 ALG Application Layer Gateway

5 API Application Programming Interface

6 CD ROM Compact Disc Read Only Memory

7 DNS Domain Name System

8 FTP File Transfer Protocol

9 HTCP Hypertext Caching Protocol

10 HTTP Hypertext Transfer Protocol

11 HTTPS Hypertext Transfer Protocol Secure

12 IDS Intrusion Detection System

13 IP Internet Protocol

14 IPS Intrusion Prevention System

15 LDAP Lightweight Directory Access Protocol

16 OSI Open Systems Interconnection

17 REST Representation State Transfer

Trang 12

18 SDK Software Development Kit

19 SNMP Simple Network Management Protocol

20 SSL Secure Sockets Layer

21 TCP Transmission Control Protocol

22 TLS Transport Layer Security

23 UDP User Datagram Protocol

24 UML Unified Modeling Language

25 URL Uniform Resource Locator

26 VM Virtual Machine

Trang 13

TOM TAT KHÓA LUẬN

Vào thời điểm tháng 5 năm 2017, một loại mã độc đã làm chao đảo cả không gianmạng, khi nhắc về sự kiện này, một cái tên sẽ lập tức xuất hiện trong suy nghĩ củahầu hết mọi người, WannaCry Mã độc này đã lây lan đến hệ thống mạng của hơn

150 quốc gia và gây thiệt hai hơn 4 tỷ đô la trên toàn cầu [8] Trong quá khứ cũng tồn

tại những cái tên đã từng gây khủng hoảng cả Internet như Mydoom, Sobig, Klez,

v.v Dù ở thời điểm nào, mã độc vẫn luôn là vấn đề bảo mật vô cùng nguy hiểm, theo

thời gian chúng được phát triển ngày càng tinh vi và có nhiều hình thái hơn Mỗingày, các tổ chức nghiên cứu đánh giá các phần mềm antivirus phát hiện và tìm rahon hàng trăm nghìn các loại mã độc Dién hình là tổ chức AV-TEST ở Đức, trong

một ngày, họ phát hiện và đăng ký hơn 450.000 các loại mã độc và các phần mềm

tiềm an rủi ro Kê từ năm 1984 đến năm 2022, tổng số lượng đăng ký này đã vàokhoảng hơn 1,535 ty [5] Việc các biến thể và chủng loại mã độc mới xuất hiện ngàycàng nhiều sẽ gây ra khó khăn lớn Những phần mềm antivirus thường dựa vào cáchkiểm tra signature, nên yêu cầu việc duy trì cập nhật cơ sở dữ liệu signature thườngxuyên Điều này là không dé đáp ứng và nó thậm chí cũng chưa đủ hiệu qua dé đốiphó với các loại mới Lúc này, cơ chế phân tích động sẽ đóng vai trò như sự bé sung,

hỗ trợ phù hợp giúp tăng tỉ lệ phát hiện các tệp độc hại Dù vậy, sự kết hợp này hiểnnhiên cũng tồn tại những giới hạn của nó, sẽ có những trường hợp nó không quét rađược mã độc hoặc cho kết quả phân tích không kip thời, việc trang bị thêm một hệthống ngăn chặn xâm nhập (IPS) sẽ là rất cần thiết trong trường hợp này IPS cónhiệm vụ phát hiện và ngăn chặn các lưu lượng mạng độc hại từ những kết nối ra bên

ngoài của mã độc Nhóm tác giả đã xây dựng một hệt thống đáp ứng các tiêu chí căn

bản như trên Hệ thống cung cấp các tính năng phát hiện mã độc dựa trên signature

thông qua SquidClamAV, có khả năng phân tích động các tập tin sử dung Cuckoo

Sandbox, và tích hợp Snort IPS giúp ngăn chặn các kết nỗi của mã độc ra bên ngoài

Yêu cau thực hiện phân tích trên Cuckoo được diễn ra tự động, khi người dùng thực

hiện tải một tập tin có các đuôi nhạy cảm như EXE, PDF, DOCX, ZIP, RAR, v.v.

Các tập tin này sẽ được trích một bản sao từ cache của Squid proxy và gửi đến Cuckoo

Trang 14

dé phan tich Néu phát hiện mã độc, signature của nó sẽ tự động được thêm vào cơ

sở dữ liệu mã độc của SquidClamAV Cac mã độc sau khi đã được phát hiện bởi hệ

thống, URL để tải tệp của chúng sẽ bị chặn bởi Squid Proxy, giúp giảm đáng kể thời

gian quét tệp Phát hiện mã độc thông qua các công cụ Cuckoo và Snort là khi tập tin

đã được tải về máy Vì vậy, một chương trình sẽ được phát triển dé giám sát những

trường hợp phát hiện trễ này hay sự xâm nhập của mã độc vào hệ thống, rồi gửi Gmailcảnh báo chứa những nội dung liên quan cho quản trị viên Cơ chế kiểm tra là thông

qua việc đọc các tệp log sự kiện tương ứng từ các công cụ phát hiện mã độc, chúng

sẽ được thu thập và tập trung bởi một bộ chương trình khác Đồng thời, Hệ thống

cũng cung cấp tính năng giám sát lưu lượng mạng và xem các log được tập trung, hỗtrợ cho quá trình điều tra và truy dấu mã độc

Trang 15

CHƯƠNG 1 GIỚI THIỆU ĐÈ TÀI

Chương 1 GIỚI THIỆU DE TAI

gian mạng năm 2021, các chuyên gia an ninh mạng nhận định các hoạt động vi phạm

trên không gian mạng ở Việt Nam có chiều hướng gia tăng, tỷ lệ các cuộc tan côngmạng và mã độc ở Việt Nam thuộc nhóm cao trên thế giới [1]

Tan công mạng diễn biến ngày một phức tạp hơn, nhiều loại mã độc cải tiến đãđược sử dụng bởi tội phạm mạng và nhắm vào các cơ quan tổ chức doanh nghiệp.Trong chỉ khoảng 5 tháng đầu năm 2022, bộ thông tin và truyền thông đã ghi nhận

hơn 5.463 cuộc tấn công mạng vào các hệ thống thông tin, trong đó có tới hơn 3.757

trường hợp xảy ra bởi mã độc chiếm tỉ lệ đến 68,7% [2]

Đối với mục tiêu là những doanh nghiệp, ý định điền hình của kẻ tấn công là đánh

cấp dữ liệu người dùng, mã hóa các tài liệu dé tống tiền, hoặc gây thiệt hại đến các

máy chủ cung cấp dịch vụ, v.v Nếu việc này diễn ra thành công sẽ dẫn đến nhữngthiệt hại khó hắc phục và những mất mát lớn Việc trang bị vào hệ thống mạng các

bộ công cụ tiên tiến, hang dau dé đối phó với mã độc là điều rất khuyến nghị Tuynhiên, tồn tại 2 vấn đề chính, đặc biệt là đối với các doanh nghiệp vừa và nhỏ Thứnhất là về tiềm lực tài chính, chi phí cao cần bỏ ra dé mua và duy trì bộ các bộ công

cụ này Thứ hai là về khía cạnh nhu cầu, xét trên quy mô hoặc lĩnh vực hoạt động củacông ty, đề cập đến trường hợp khá ít tinh năng và khả năng của các sản phẩm này là

thực sự cần thiết đối với công ty, nên việc tốn kém vao chúng được xem là không

đáng Từ 2 vấn đề trên, yêu cầu đặt ra thiết kế một hệ thống tích hợp các giải phápgiúp đối phó với mã độc, vừa tiết kiệm chi phí và vừa đảm bảo hiệu quả phù hợp với

các công ty có quy mô vừa và nhỏ Qua tìm hiêu, nhóm nhận thây có một sô công cụ

Trang 16

CHƯƠNG 1 GIỚI THIỆU ĐÈ TÀI

mã nguồn mở chất lượng, có thể đủ khả năng đáp ứng Vì vậy, nhóm tác giả đã hướng

đến việc hiện thực một mô hình sử dụng các công cụ này để giải quyết câu chuyện

nêu trên, và quyết định lựa chọn dé tài “Xây dựng hệ thống phát hiện và ngăn chặn

mã độc tự động”.

1.3 Mục tiêu nghiên cứu

- _ Thiết kế một hệ thống có nhiều lớp phát hiện mã độc Căn cứ theo quá trình một

tập tin mã độc từ Internet di vào mạng nội bộ.

- - Kết hợp các lớp phòng vệ này, cho phép chúng tận dụng thông tin đầu ra của

nhau.

- _ Cảnh báo tự động khi xảy ra sự xâm nhập.

- Quan lí log tập trung Người quản trị có thé truy cập khi cần thiết Hỗ trợ quá

trình điều tra, truy dấu mã độc

- Cung cấp tính năng giám sát lưu lượng mang trong hệ thống

1.4 Nhiệm vụ nghiên cứu

Tích hợp vào hệ thống các công cụ phát hiện mã độc với những phương thức

khác nhau như xác định chữ ký, phân tích động và phát hiện lưu lượng mạng của mã

độc.

Tìm hiệu, khai thác các mô đun mở rộng của các công cụ đê tang khả năng phan

tích, phát hiện mã độc.

Phát triển một chương trình giám sát log từ các công cụ Sử dụng các thông tin

thu được để tự động cải thiện cách thức ngăn chặn mã độc va đồng thời gửi email

cảnh báo đến người quản trị khi phát hiện xâm nhập Cụ thẻ, tự động cắm truy cậpcác URL dé tải tệp đã được phát hiện là chứa mã độc dé tiết kiệm thời gian quét, chặn

kết nối tới các public IP đã phát hiện trong lưu lượng mang độc hại bởi hệ thống ngăn

ngừa xâm nhập, kết hợp cả so sánh signature và phân tích động dé kiểm tra một sốđịnh dạng tập tin khả nghi, và tự gửi Gmail đến quản tri viên để thông tin về sự việc

mã độc đã xâm nhập vào hệ thống.

Trang 17

CHUONG I GIGI THIEU ĐÈ TÀI

Viết một công cụ giúp giám sát lưu lượng mạng, và các chương trình giúp thu

thập, tập trung và xem log.

1.5 Đối tượng và phạm vi của đề tài

Đề tài là nghiên cứu về một hệ thống phát hiện và ngăn chặn mã độc một cách tự

động.

Trọng tâm của đề tài là phát hiện và ngăn chặn mã độc trên các giao thức Web

HTTP/HTTPS Không tập trung vào phương pháp phân tích mã độc và pháp chứng

số Một số chương trình tự phát triển trong khóa luận là ding để kết nói thông tin, chức năng của các công cụ được sử dụng trong dé tài và chỉ đảm bao hoạt động trên

các công cụ này Khóa luận không so sánh chúng với các công cụ trả phí hoặc mã

nguồn mở khác Các công cụ và chương trình được tích hợp vào hệ thống, bao gồm:

SquidClamAV là một công cụ antivirus mã nguồn mở dành cho Squid Proxy dựa trên phần mềm diệt vi rút mạnh mẽ ClamAV.

Cuckoo Sandbox cung cấp cơ chế phân tích động các tập tin một cách tự động, giúp phát hiện các mã độc hoặc phần mềm nguy cơ.

Snort là một hệ thống ngăn chặn xâm nhập mạng, có khả năng phát hiện và ngăn

chặn các lưu lượng mạng độc hại từ mã độc.

Iptables là một tường lửa trạng thái giúp kiểm soát lưu lượng mạng.

Squid là một http proxy cho phép SSL bumping, caching, chặn URL độc hại.

OpenLDAP là một phần mềm triển khai mã nguồn mở của giao thức LDAP, được

sử dụng như một máy chủ LDAP.

Các chương trình hỗ trợ được phát triển trên ngôn ngữ lập trình Java (chiếm 99%)

va Shell Script (chiếm 1%).

Trang 18

CHƯƠNG 2 TÔNG QUAN

Chương 2 TONG QUAN

2.1 Nghiên cứu tương tự

Internet là một hệ thống thông tin toàn cầu, môi trường kết nối và chia sẽ chohàng tỷ thiết bị máy tính, nó mang đến vô vàng lợi ích Tuy vậy, mạng lưới không lồnày được ví như một đại dương mênh mông, nơi có những cá thé biển hiền hòa, sặc

sỡ, nhưng cũng đồng thời ấn chứa đầy ray sự nguy hiểm với nhiều sinh vật hung ton,

bí ấn Trên không gian mạng, người dùng có thê truy cập các tài nguyên, tải về các

tập tin khác nhau từ vô số các nguồn Câu hỏi đặt ra là chúng có an toàn? Liệu baonhiêu tệp đã được chuyên vào máy tính, bên trong chúng có chứa các chương trìnhđộc hại, thường được biết đến như là mã độc Vì lý do đó, việc tìm kiếm các giải phápcho việc phát hiện, ngăn chặn mã độc là vô cùng cần thiết và quan trọng Điều này

luôn thôi thúc các nghiên cứu mới về chủ đề này

Bai báo khoa hoc “Detection of malicious servers for preventing client-side

attacks” được xuất bản vào năm 2021, của trường Đại học Kỹ thuật và Công nghệMehran ở Pakistan [6] Bài báo đề cập đến việc ngày càng có nhiều sự xuất hiện củacác tan công phía người dùng Đối tượng này là mục tiêu dé dàng bị nhắm đến, vìthường ít được trang bị sự bảo vệ nên sẽ tốn ít thời gian và công sức dé khai thác Các

tấn công được thực hiện bằng những phương thức khác nhau như phishing, drive-by

downloads, click-frauds, social engineering và đặc biệt là mã độc.

Nhóm tác giả của nghiên cứu liệt kê các phương pháp thường dùng dé phát hiện

các phương thức tan công trên, có thé được phân thành hai loại Thứ nhất là theo cơ

chế thụ động, dựa trên so sánh signature Thứ hai là theo cơ chế chủ động, thường sửdụng kỹ thuật phân tích động mã độc Giải pháp được đề xuất cho việc phát hiện vàngăn chặn tấn công phía người dùng là triển khai Bro IDS, Cuckoo Sandbox và

VirusTotal API 2.0 (hình 2.1).

Trang 19

CHƯƠNG 2 TÔNG QUAN

Internet Malicious Web servers

and Safe web servers Gateway! |

known threats

used for offline scan

Sandbox Host Server

, VirusTotal API and

Reporting Server

a The Reporting Server Kali Linux will send a URL list

Isolated Malware Repository

Server inside the VMware

Hình 2.1: Kiến trúc hệ thống phát hiện máy chủ độc hai

(Nguồn: K Bux, M Yousaf, A H Jalbani, K J M U R J O E Batool, and

Technology, "Detection of malicious servers for preventing client-side attacks," (in

English), vol 40, no 1, pp 234, 2021)

Nghiên cứu tập trung vào mục tiêu là dich vu web, phát hiện các trang web có

chứa các payload độc hại, sử dụng lần lượt các phương pháp theo một quy trình xử lí

(hình 2.2) Đầu tiên, khi một người dùng trong mạng truy cập một URL bất kì thamchiếu đến payload như tập tin EXE, PDF, hoặc với bat cứ đuôi mở rộng nào khác.Bro IDS sẽ thực hiện phân tích phản hồi từ trang web dựa trên signature đã được cauhình của nó, nếu phát hiện bất kỳ sự độc hại nào, một cảnh báo sẽ được đây lên Sguil

dashboard và một email sẽ được gửi đến quản trị viên Tiếp theo, URL này sẽ được

chuyên tiếp tự động đến VirusTotal API và được thực hiện quét Nếu kết quả nhận

7

Trang 20

CHƯƠNG 2 TONG QUAN

dinh tim thay ma độc từ URL nay, nó sẽ được lưu vào cơ sở dữ liệu MySQL Báo cáo quá trình quét này sẽ được gửi đến quản trị viên thông qua một email Sau đó, một chương trình tự động trích xuất từ Bro IDS log các tập tin có trong URL độc hại Thông qua network file share, chuyền các tệp nay đến Cuckoo sandbox dé kiểm tra lại, phòng trường hợp âm tính giả trên VirusTotal Nếu VirusTotal API hoặc Cuckoo sandbox cho kết quả phân tích là đương tính, lúc này, một yêu cầu sẽ được gửi đến gateway dé thực hiện chặn URL này.

Client request a URL

URL response will

be monitored by Bro/SNORT IDS

URL is not

`» Malicious

_Ne

If user access that URL the

A message will bel

Malicious Malicious URL

a

No

Send a URL for Miss ———

dynamic URL scan Firewall/Cache

IF Yes Engine will block

that URL

Hinh 2.2: Luỗng hoạt động phát hiện máy chủ độc hại

(Nguồn: K Bux, M Yousaf, A H Jalbani, K J M U R J O E Batool, and

Technology, "Detection of malicious servers for preventing client-side attacks," (in

English), vol 40, no 1, pp 235, 2021)

Trang 21

CHƯƠNG 2 TÔNG QUAN

2.2 Những vấn đề tồn tại

Bài báo đã mang đến nhiều nội dung, kiến thức bồ ích và dé cập các van đề rất đáng quan tâm Tuy nhiên theo quan điểm của nhóm tác giả, hệ thống triển khai trên tồn tại ba vấn đề chính như sau:

1 Quyền quyết định là của Bro IDS Nếu Bro IDS đánh giá URL là không độc hai,

phân tích trên VirusTotal và Cuckoo sandbox sẽ không diễn ra.

Bro IDS (tên gọi mới là Zeek IDS) là một công cụ phân tích lưu lượng mang thụ

động, thường được dùng để giám sát an ninh mạng, đo lường hiệu suất và hỗ trợ khác phục sự cố trong hệ thống mạng Bro không thật sự là một hệ thống phát hiện xâm nhập mạng, việc kiểm tra sâu các gói tin dé so sánh với signature không phải thế mạnh của Bro Chính vì vậy, sử dụng Bro trong trường hợp này là rất thiếu hiệu quả.

Hệ thống không có khả năng ngăn chặn bước đầu ở gateway Các công cụ đều chạy ở chế độ bị động Khi người dùng thực hiện tải tập tin từ một URL, việc tải

về này vẫn được diễn ra bình thường Trong lúc đó, quá trình phân tích trên Bro IDS, Cuckoo sandbox hay VirusTotal API mới bat đầu thực hiện lần lượt.

2.3 Hướng giải quyết

Với các vấn đề nêu trên, trong hệ thống triển khai của nghiên cứu Nhóm tác giả

đề xuất lần lượt các phương án giải quyết tương ứng như sau:

1 Xây dựng và thiết kế hệ thống dựa trên các tình huống phát hiện mã độc thực tế,

cơ sở là bao gồm ba kịch bản, sẽ được dé cập ở phan tiếp theo.

Thay Bro bằng Snort, một hệ thống phát hiện xâm nhập mạng mã nguồn mở hàng đầu trên thế giới Đồng thời, triển khai Snort ở chế độ IPS thay vì IDS Ở chế độ

này, Snort không chỉ có dừng lại ở việc phát hiện các lưu lượng mạng độc hại,

nó còn có thé tiền hành chặn chúng.

Ở gateway, tích hợp thêm SquidClamAV, một công cụ antivirus mã nguồn mở dành cho Squid Proxy dựa trên phần mềm diệt vi rút mạnh mẽ ClamAV Nó giúp

Trang 22

CHƯƠNG 2 TÔNG QUAN

quét và chặn ngay các tập tin trước khi người dùng tải về máy nếu phát hiện

chúng chứa mã độc.

Đồng thời, nhóm tác giả sẽ bổ sung thêm ba tính năng Thứ nhất là quản lí việc

sử dụng dịch vụ web bằng hệ thống tài khoản sứ dụng Squid proxy, khi đó quá trình truy vết mã độc có thê căn cứ trên cả tài khoản người dùng và địa chỉ IP Thứ hai là tích hợp thêm công cụ tường lửa Iptables vào gateway, dùng nó dé chặn các địa chỉ

IP từ lưu lượng mạng độc hại được phát hiện bởi IPS Thứ ba là viết một bộ chương trình thực hiện chức năng thu thập và tập trung log, đặc biệt là đối với các log chứa

sự kiện về việc phát hiện mã độc.

2.4 Các kịch bản triển khai

Giả sử trong một hệ thống mạng công ty vừa và nhỏ, khi nhân viên thực hiện tải một tập tin về máy tính Các công cụ phân tích sẽ được bó trí và phản ứng tự động dựa trên các mô phỏng tình huống xử lí cơ bản có thê xảy ra như bên dưới.

- Kịch bản 1: Tập tin đang được kiểm tra trước khi tải về Nếu SquidClamAV quét

và phát hiện mã độc, Squid proxy sẽ chặn ngay download link của tập tin để tiết kiệm thời gian quét đối với các trường hợp tương tự khác cũng tải tệp này.

- _ Kịch bản 2: Tập tin đã được tải xuống máy người dùng thành công, tệp này sẽ

được trích xuất bản sao từ cache của Squid Proxy và gửi đến Cuckoo sandbox để

phân tích Trường hợp phát hiện tệp độc hại, thực hiện chặn download link của

tập tin, bổ sung signature của mã độc cho SquidClamAV và gửi một Gmail cảnh báo chứa tóm tắt kết quả phân tích và username (của user đã tải tệp tin) đến quản

trị viên.

- Kịch bản 3: Tập tin mã độc đã được kích hoạt và tiến hành kết nối ra bên ngoài.

Khi Snort IPS phát hiện (và block) lưu lượng mạng này, Iptables sẽ chặn những

external IP được chương trình mã độc thực hiện kết nối đến Sau đó, một Gmail

chứa nội dung những cảnh báo của Snort (có chứa địa chỉ IP của máy đã thực

hiện kế nối) sẽ được gửi đến người quản trị viên.

10

Trang 23

CHƯƠNG 2 TÔNG QUAN

2.5 Kết chương

Qua việc giới thiệu và phân tích một bài báo có chủ đề tương tự, nhóm tác giả đã

sơ lược về van dé tan công phía người dùng với một số kĩ thuật được sử dụng Khicác cuộc tấn công máy chủ đòi hỏi thời gian và công sức rất nhiều, những người dùnglúc này là đối tượng dé bị nhằm Đặc biệt trong số đó là hình thức tan công sử dụng

mã độc Nhắc lại về hai phương pháp phát hiện luôn cần xoay quanh là dựa trên

signature và thực hiện phân tích động Một số công cụ và một hướng tiếp cần kháccho hệ thống được thê hiện thông qua bài báo, song nó có tồn tại những điểm hạnchế Từ những điểm này, nhìn thấy được một số vấn đề cần khắc phục dé lựa chọnnhững công cụ và một cách tiếp cận phù hợp

Ở chương tiếp theo, nhóm tác giả trình bày sơ lược về các công cụ được sử dụng

và một sô kiên thức thú vi, dang quan tâm liên quan đên mã độc.

11

Trang 24

CHƯƠNG 3 CƠ SỞ LÝ THUYÉT

Chương 3 CƠ SỞ LÝ THUYET

3.1 Squid proxy

3.1.1 Giới thiệu

Squid là một caching proxy mã nguồn mở dành cho Web Một số giao thứcchính Squid có thé xử lí là HTTP, HTTPS va FTP [12] Một số tinh năng và lợi ích

khi sử dung Squid proxy:

° Tối ưu băng thông mạng sử dụng khi lướt Web

° Cải thiện thời gian tải của trang Web.

° Bảo vệ máy chủ Web trong mạng thông qua proxy.

° Thu thập và thống kê lưu lượng Web trong mạng

° Ngăn người dùng truy cập các trang web không thích hợp.

° Đảm bảo chỉ những người dùng ủy quyền có thể truy cập Internet

° Tăng cường bảo vệ quyền riêng tư của người dùng bằng cách lọc các thông tin

nhạy cảm từ các web requests.

° Giảm tải lượng xử lí trên máy chủ Web.

° Phân tích các lưu lượng web HTTPS.

3.1.2 Access control

Access control là một phan quan trọng của Squid Nó có tác dụng kiểm soát

các hành vi của người dùng liên quan đến hoạt động web, giới hạn các tài nguyênđược phép sử dụng, và đảm bảo chỉ những người dùng được ủy quyền có thê truy cập

web [3].

Khi tạo một access control mới, cần trả lời một câu hỏi là “làm gì với cái gì?”,

cụ thé:

° Access Control Elements dùng dé xác định “cái gì”, nó có thể thuộc các loại

giá trị như: địa chỉ IP, port, tên miền, URL, tên đăng nhập người dùng, phương

thức request của HTTP, v.v.

12

Trang 25

CHƯƠNG 3 CƠ SỞ LÝ THUYÉT

° Access Control Rules được sử dụng dé chỉ định “làm gì” đối với các Access

Control Element Các hành động được xác định bởi loại ACL, thường được sử

dung là http_access, công dung của nó là cho phép hoặc chặn những lưu lượng

truy cập web liên quan đến giá trị từ Access Control Element

3.1.3 Log

Log là nguồn thông tin giá trị để kiểm tra mức tài nguyên tiêu thụ, khối lượng

công việc và hiệu suất của Squid Những nội dung này sẽ giúp ích trong việc rà soátlỗi cau hình, sửa chữa sự cô trong Squid Đồng thời, người quan trị có thé xem những

ai đang sử dụng Squid proxy và họ đang làm gì Một số tập tin log chính [4]:

° cache.log: chứa các thông điệp debug và lỗi được tạo ra bới Squid Kích thước

tập tin thường giao động trong khoảng 10-100 KB mỗi ngày.

° access.log: lưu thông tin các giao dịch HTTP người dùng đã thực hiện, Kích

thước gia tăng trong khoảng 100-200 bytes mỗi giao tiếp

° store.log: chứa nội dung về sự việc các đối tượng được nhập vào và xóa khỏi

cache Kích thước gia tăng trong khoảng 150 bytes mỗi giao tiếp

3.1.4 Cache

Cache trong Squid được lưu trữ trên cả 6 cứng và trên bộ nhớ [9] Squid lưu

trữ các objects vừa thu được từ các HTTP response vào cache Việc phản hồi lai các

HTTP request từ máy khách bằng những object trong bộ nhớ sẽ cho tốc độ nhanh hơn

nhiêu so với việc đọc từ ô đĩa.

Các object trong cache được chia vào 2 nhóm: in-transit hoặc complete [9].

Squid thiết đặt các complete object có độ ưu tiên thấp hơn so với in-transit object nênchúng chỉ được lưu vào bộ nhớ khi có các vùng nhớ trống Ngoài ra, các completeobject được lưu cũng phải có kích thước thấp hơn hoặc bằng mức được chỉ định khicấu hình Khi một in-transit object trở thành một complete object, nó cũng chỉ đượcgiữ lại khi đáp ứng đủ các điều kiện như trên

13

Trang 26

CHƯƠNG 3 CƠ SỞ LÝ THUYÉT

3.2 ClamA V

3.2.1 Giới thiệu

ClamAV là một bộ công cụ anti-virus mã nguồn mở, hỗ trợ đa nền tảng có khả

năng phát hiện nhiều loại mã độc [7] ClamAV cung cấp một scanner-daemon đa

luồng linh hoạt và có thể mở rộng, và một cơ sở dit liệu có thé tự động cập nhậtsignature Cốt lỗi của ClamAV là một anti-virus engine dưới dang shared library

Tự động unpack và quét các kiểu packed file như: AsPack, UPX, FSG, Petite,PeSpin, NsPack, wwpack32, MEW, Upack, Y0da Crypto, v.v.

Hỗ trợ quết nhiều loại định dạng tập tin khác nhau, một vài trong số đó như:

những tập tin Microsoft Office, PE, HTML, RTF, PDF, JPG/JPEG, PNG, GIF,

uuencoding, TNEF, v.v Hơn nữa, ClamAV cũng có thé quét các tap tin ELF,

Mach-O va hau hết các tép dinh dang mail

Co sở dữ liệu signature hỗ trợ 3 loại chính:

° Body-based Signatures: Extended (*.ndb, *.ndu), Logical (*.ldb, *.Idu, *.idb),

Trang 27

CHƯƠNG 3 CƠ SỞ LÝ THUYÉT

3.3 Snort

3.3.1 Giới thiệu

Snort là một hệ thống phát hiện/ngăn ngừa xâm nhập mạng mã nguồn mở hàngđầu trên thế giới Snort định nghĩa các hoạt động được xem là độc hại trên hệ thống

mạng thông qua một chuỗi các quy tắc cụ thể Dựa vào đó, Snort tìm và xác định các

gói tin cần phải được xử lí Thư viện Snort dùng dé bắt gói tin là libpcap

3.3.2 Chế độ hoạt động

Dựa trên mục đích sử dụng, có thể chia Snort thành 4 chế độ hoạt động [11]:

° Sniffer mode: kết xuất dữ liệu trong phần header và body của mỗi gói tin lên

màn hình.

° Packet logger mode: đữ liệu trong phần body và/hoặc header của các gói tin

sẽ được ghi vào tập tin trên 6 cứng

° IDS mode: Snort phân tích các gói tin và đối chiếu với các quy tắc đã thiết lập

Thông qua việc so khớp, phát hiện các gói tin vi phạm và tiễn hành cảnh báo

hoặc ghi nhận lại.

° IPS mode: Cơ chế hoạt động gần giống với ché độ IDS Điểm khác biệt là các

gói tin vi phạm sẽ bị chặn lại thay vì dé chúng được di qua như bình thường

3.3.3 Luồng xử lí

Snort xử lí các gói tin theo 4 giai đoạn chính như sau (Hình 3.1) [10]:

1 Sniffer: tiền hành lắng nghe và bắt các gói tin Sau đó chúng sẽ gửi đến bộ tiền

xử lí.

2 Preprocessors: phụ trách việc phân loại gói tin và xác định hành vi của lưu

lượng mạng đang xử lí thông qua gói tin này Snort có rất nhiều loại

preprocessors plugins phục vụ cho việc phân loại giao thức và cả phát hiện

những hành vi khả nghi Như hình bên dưới (hình 3.1), Snort sử dụng plugin

HTTP dé nhận biết gói tin HTTP và dùng plugin sfPortscan dé xác định gói

15

Trang 28

CHƯƠNG 3 CƠ SỞ LÝ THUYÉT

tin dùng dé quét cổng Sau khi hoàn tat, bộ tiền xử lí thực hiện gửi thông tin

cho công cụ phát hiện.

3 Detection Engine: kiểm tra và so sánh từng gói tin với lần lượt các quy tắc đã

được cấu hình trong bộ quy tắc Nếu kết quả so sánh là khớp, gói tin sẽ được

gửi đến bộ đầu ra

4 Output: thực hiện việc gửi các tín hiệu cảnh báo và/hoặc ghi vào tập tin log,

tùy thuộc vào quy tắc tương ứng đã so khớp trước đó

determine packets / paclet

behaviour

sfPortscan

Hình 3.1: Luong xử lí gói tin cua Snort

(Nguon: A Karagiozidis, "Snort as a distributed IDS," 2019 [Online].

Available: https://wwwvs.cs.hs-rm.de/vs-wiki/index.php/%28P VA_WS1819-06%29.

những việc mã độc đã thực hiện

16

Trang 29

CHƯƠNG 3 CƠ SỞ LÝ THUYÉT

Cuckoo được thiết kế dé có thé làm việc như một ứng dụng độc lập hoặc tích

hợp trong các mô hình bảo mật lớn hơn nhờ vào việc thiệt kê mô đun hóa của nó Với

kiến trúc mô hóa mạnh mẽ này cùng khả năng cho phép viết kịch bản phân tích,

Cuckoo giúp người dùng tự do thực hiện rất nhiều tính năng phù hợp với yêu cầu củatừng hệ thống Một số khả năng nỗi bật sẵn có của Cuckoo bao gồm:

3.4.2.

Hỗ tợ phân tích nhiều loại tập tin khác nhau như: Generic Windows

executables, DLL, PDF, Microsoft Office documents, email, PHP scripts,

CPL, VBScrips, ZIP, JAR, và rất nhiều loại tập tin khác thuộc cả 4 môi trường

hệ điều hành Windows, Linux, MacOS, Android

Theo dõi các lời gọi API và những hành vi của tập tin rồi giải nghĩa nó thànhcác thông tin cấp cao và các signature, có thé dé dàng hiểu được

Kết xuất và phân tích lưu lượng mạng, thậm chí khi được mã hóa SSL/TLS.Với trang bị định tuyến mạng riêng hỗ trợ loại bỏ tất cả lưu lượng mạng này

hoặc có thê định tuyến nó đến inetSIM hoặc một network interface

Có thé thực hiện phân tích bộ nhớ của máy ảo dùng dé kiểm thử thông qua

công cu volatility.

Kiến trúc

Cuckoo Sandbox bao gồm một phần mềm quản lý việc thực thi và phân tích

mẫu Mỗi phân tích được khởi chạy trong một máy ảo hoặc vật lý hoàn toàn mới và

biệt lập Các thành phần này tạo nên một kiến trúc tương tự như là một máy chủ vàcác máy khách (hình 3.2) Máy chủ có nhiệm vụ điều phối hoạt động của các máykhách cũng như thu thập và tổng hợp kết quả phân tích

17

Trang 30

CHƯƠNG 3 CƠ SỞ LÝ THUYÉT

Analysis Guests

A clean environment when run a Cuckoo host sample.

Responsible for guest and The sample behavior is reported back to

analysis management the Cuckoo host.

Analysis VM n.1

Analysis VM n.2

Virtual network

Internet / Sinkhole An isolated network where

run analysis virtual

Các loại tập tin cấu hình trong Cuckoo

° Auxiliary Module: các đoạn script trong module được chạy đồng thời với việc

thực thi mẫu, có chức năng xác định các options của chúng như việc cho phép

kết nối mạng, các capabilities sẽ cung cấp cho mẫu

° Machinery Module: có chức năng quyết định cách Cuckoo tương tác với phần

mềm ảo hóa được chọn Mỗi module đều có một cau hình chuyên dụng vớimáy ảo có sẵn và phần mềm ảo hóa tương ứng

° Memory (Volatility plugins): cung cấp các plugins của công cụ Volatility để

thực hiện trích xuất và phân tích bộ nhớ

18

Trang 31

CHƯƠNG 3 CƠ SỞ LÝ THUYÉT

Processing: cho phép bật, tắt và cầu hình các processing module Các module

này thực hiện việc xác định phương pháp phân tích các raw data thu thập được

trong quá trình phân tích mẫu.

Reporting: chứa các dữ liệu liên quan đến việc tạo các báo cáo kết quả phân

tích.

Packages là thành phần cốt lõi của Cuckoo Sandbox Chúng bao gồm các class viết bằng Python, khi được thực thi trong các Guest, sẽ mô tả cách trình phân tích của Cuckoo tiễn hành thực hiện Một số package mặc định trong Cuckoo:

Human 0: nếu bị vô hiệu hóa, các tương tác người dùng (như là chuyền động

chuột, gõ phím, v.v.) sẽ không được bật.

Applet: phân tích Java applet.

Bin: phân tích các dữ liệu nhị phân, đặc biệt là shellcode.

JS: phân tích các file JavaScript.

Zip: phân tích các file ZIP.

Signatures

Cuckoo cho phép tủy chỉnh signatures dé tim ra một khuôn mẫu xác định cho

một hành vi độc hại nào đó của mã độc giúp tăng cường khả năng phát hiện mã độc

này hoặc dé kiểm tra một tiêu chí nào đó đáng quan tâm Một số vai trò chủ yếu của các Signatures bao gồm:

Định danh một lại mã độc cụ thể thông qua việc những hành vi đặc biệt của

ma độc đó (filename, mutex, v.v.).

Phát hiện những thay đổi trên hệ thống như các trình cài đặt của device driver.

19

Trang 32

CHƯƠNG 3 CƠ SỞ LÝ THUYÉT

3.4.5.

Xác định một loại mã độc (Banking Trojans, Ransomware, Backdoor, v.v.) cụ

thể thông qua những hành vi thông thường hầu hết chúng đều có (thông điệp tống tiền, mở port lạ, v.v.)

Phân loại các mẫu thành các mẫu độc hại hoặc không rõ (không thể kết luận

là mẫu sạch)

Các giải pháp hardening

Không có một môi trường Sandbox nào có khả năng đem lại tính tàng hình

một cách tuyệt đối Tuy nhiên, có thể điều chỉnh một số cài đặt dé tăng tính bảo mật

của Cuckoo như sau [14]:

Uninstall VirtualBox Guest Additions: một phương pháp đơn giản nhưng hiệu

quả là sau khi đã xử lí và cài đặt hoàn tất cho Guest, nên thực hiện gỡ cài đặt

nó đề tránh những thông tin không cần thiết lộ ra cho mã độc.

Modify Registry: có thé thực hiện chỉnh sửa các Registry của VirtualBox dé

tránh bị mã độc phát hiện.

Modify agent.py: do file agent.py là một tập open source, thay đổi tên thư mục

nó tạo ra, đồng thời có thẻ sử dụng py2exe hoặc pyinstaller để compile nó thành một tập tin EXE thông thường, từ đó hạn chế mã độc lợi dụng dấu hiệu trên dé tim kiếm python process.

Modify Hardware Information: trong VirtualBox Manager, thay đổi các thông tin liên quan đến phần cứng và CD ROM của Guest.

3.5 Mã độc và các cơ chế phân tích, phát hiện

3.5.1 Một số loại mã độc phổ biến

- Virus: Vi rút máy tinh là loại mã độc chèn đoạn mã độc hại vào một đoạn mã

sạch (clean code) và chờ đợi một người dùng hợp lệ hoặc một tiến trình tự động thực thi chương trình Vi rút máy tính có khả năng lây nhiễm rộng rãi và nhanh chóng, gây

nguy hiểm đến phần nhân của hệ thống, phá hủy tệp tin hoặc ngăn người dùng thoát

khỏi may Chúng thường được đính kèm trong một tập tin thực thi.

20

Trang 33

CHƯƠNG 3 CƠ SỞ LÝ THUYÉT

- Worm: Sâu máy tính là loại mã độc có khả năng lây nhiễm cho toàn bộ hệ thống mạng một cách nhanh chóng Từ một máy bị nhiễm ban đầu, chúng tạo những kết nối đến các máy tính lân cận trong hệ thống mạng đề lây nhiễm và tìm kiếm thêm

mục tiêu.

- Trojan: loại mã độc này thường ân mình dưới vỏ bọc một phần mềm hợp lệ Khi người dùng kích hoạt, Trojan sẽ bí mật phá hỏng hệ thống bảo mật của máy bằng cách tạo các backdoor cho phép các mã độc khác dễ dàng xâm nhập và lây nhiễm.

- Spyware: chạy ngầm trên máy nạn nhân và thực hiện việc đánh cắp thông tin như tài khoản ngân hàng, mật khẩu, v.v Spyware có cơ chế tương tự với Trojan

nhưng thay vì phải được chèn vào trong một chương trình khác, Spyware có khả năng

hoạt động độc lập.

- Ransomware: loại mã độc phục vụ tống tiền Chúng có khả năng lock các kết nối mạng của máy, mã hóa các dữ liệu quan trọng và chỉ tiến hành giải mã khi nạn nhân chấp nhận trả tiền cho Hacker Đôi khi, việc trả tiền cũng không thể giúp nạn nhân có thê khôi phục lại dữ liệu đã bị mã hóa Ransomware sử dụng một số công cụ

như Microsoft Office hay các administrator tools như Windows PowerShell hay

Windows Management Instrumentation dé chay cac doan script va nap cac doan ma

đó đề che dấu sự hiện diện của bản thân.

- Cryptojacking: là mã độc cho phép kẻ tấn công có khả năng tiến hành đào tiền điện tử trái phép trên máy nạn nhân Chúng được chạy ngầm và liên tục tiêu tốn tài nguyên hệ thống dé đào tiền ảo phục vụ cho kẻ tan công.

21

Trang 34

CHƯƠNG 3 CƠ SỞ LÝ THUYÉT

- Malvertising: là kỹ thuật sử dụng các quảng cáo hợp lệ để bí mật cung cấp phần mềm độc hại khó bị nghi ngờ Tội phạm mạng có thể trả tiền để đặt một quảng cáo trên một trang web hợp pháp Khi một người dùng nhấp vào quảng cáo, mã trong quảng cáo chuyển hướng họ vào một trang web độc hại hoặc cài đặt phần mềm độc hại trên máy tính của họ Trong một số trường hợp, phần mềm độc hại này được nhúng trong quảng cáo có thé tự động thực thi và không cần bất cứ hành động nào từ

người dùng.

- Fileless: là các cuộc tan công sử dụng mã độc nhưng không tiến hành tải hoặc ghi bat kỳ một dữ liệu gì vào đĩa Thay vào đó, Kẻ tan công lợi dụng các lỗ hồng bao mật của ứng dụng dé chèn trực tiếp mã độc vào bộ nhớ chính Kẻ tan công cũng có thể sử dụng các công cụ như PowerShell hay Windows Management Instrumentation

để thực thi scripts và nạp các đoạn mã độc hại trực tiếp vào bộ nhớ động.

3.5.2 Các kĩ thuật phân tích mã độc

- Static Analysis: khi một phần mềm hoặc đoạn mã được phân tích nhưng không được thực thi, có thê gọi phương pháp này là phân tích tĩnh hay phân tích mã [13].

Trong kỹ thuật này, phần mềm được dịch ngược bằng cách sử dụng các công

cụ khác nhau, và cấu trúc của mã độc được phân tích để hiểu cách thức hoạt động của

nó Các công cụ khác nhau có thể được sử dụng đề thực hiện phân tích tĩnh là

dissembler, decompiler và source code analyzers Các phương pháp được sử dụng

trong việc thực hiện phân tích tĩnh bao gồm kiểm tra định dạng tệp, trích xuất chuỗi,

Fingerprinting, AV Scanning va Disassembly.

Phân tích tĩnh tuy tiêu tốn nhiều thời gian nhưng cho phép thấy được toàn bộ luồng chạy và các hành vi của mã độc.

- Dynamic Analysis: khi chức năng của phần mềm được phân tích và quan sát bằng cách thực thi, đó chính là phân tích động Nó có thể được thực hiện bằng cách theo dõi các lệnh gọi hàm, các luồng điều khiển và cũng bằng cách phân tích các câu lệnh và tham số của hàm [13].

22

Trang 35

CHƯƠNG 3 CƠ SỞ LÝ THUYÉT

Mã độc hại được chạy trong môi trường ảo đề quan sát hành vi của nó, từ đó thiết kế các hành động chống lại những hành vi tiêu cực này Các công cụ được sử dụng để phân tích động là Sandbox, simulator, trình giả lập RegShot, Process

Explorer.

Phân tích động thường hiệu quả và an toàn hơn phân tích tĩnh vì nó tiết kiệm thời gian và mã độc được thực thi trên một môi trường biệt lập, không gây nguy hiểm Tuy nhiên, phân tích động có thể không bao quát hết toàn bộ tính năng của mã độc.

- Hybrid: là phương pháp tích hợp giữa Phân tích tĩnh và Phân tích động để tận dụng ưu điểm cả 2 phương pháp trên [13].

Đầu tiên quan sát một phần mềm được phân tích mã thông qua kiểm tra và so sánh với signatures của các mã độc và sau đó nó được chạy trong môi trường ảo để tiếp tục quan sát hành vi thực tế của nó.

Kỹ thuật phát hiện trên có thể sử dụng dưới dạng phân tích động, phân tích

tĩnh hoặc tích hợp.

- Heuristic based: kỹ thuật này sử dụng những sự khác biệt giữa các hành vi

bình thường và bất thường của hệ thống, từ đó có thể phát hiện và khắc phục các cuộc tấn công vào hệ thống với các mã độc đã biết và chưa biết [13].

Quá trình phát hiện được chia làm 2 bước: trong bước đầu tiên, hành vi của hệ thống như hiệu suất máy tính, kết nối Internet, v.v được quan sát và ghi nhận khi không có tan công Tại bước thứ hai, khi xuất hiện những bat thường trong việc vận

23

Trang 36

CHƯƠNG 3 CƠ SỞ LÝ THUYÉT

hành của hệ thống, các hành vi bat thường được lưu lại nhằm phát hiện và phân loại

mã độc.

Việc phát hiện tấn công dựa trên các hành vi của máy bao gồm 3 thành phần

chính:

° Data Collection: đóng vai trò thu thập các dữ liệu và hành vi của máy, có thể

được chạy dưới dạng tĩnh hoặc động.

° Interpretation: giữ vai trò xử lý các dữ liệu thu thập được và chuyền thành

dang trung gian cho thuật toán xử lý.

° Matching Algorithm: đóng vai trò phân loại và so sánh những Signature với

các dữ liệu đã được Interpretation chuyền đồi.

Mặc dù phát hiện dựa trên heuristic là một phương pháp hiệu quả đề phát hiện

mã độc, nó cũng có những hạn chế lớn như việc tiêu tốn tài nguyên hệ thống và nguy

cơ xuất hiện dương tính giả (False Positives) khá cao.

- Specification based: trong kỹ thuật này, các ứng dụng được tiễn hành giám sát theo các đặc điểm kỹ thuật của chúng và kiểm tra việc xuất hiện các hành vi bất thường Specification based lấy ý tưởng từ Heuristic based nhưng khác biệt giữa chúng là trong khi Heuristic based sử dụng trí tuệ nhân tạo và máy học để xác định

một hành vi có được xem là hợp lệ hay không, Specification based dựa trên việc phân

tích các hành vi của ứng dụng được miêu tả trong đặc tả hệ thống [13].

Phương pháp này khắc phục được hạn chế của Heuristic based khi giảm được

tỉ lệ dương tính giả nhưng ngược lại là kéo theo tỉ lệ âm tính giả tăng lên.

3.6 Kết chương

Những công cụ được tham gia vào việc xây dựng hệ thống được xác định Nhóm tác giả giới thiệu sơ lược về hoạt động, các tính năng và tiện ích của các công cụ Các

công cụ dùng cho 2 phương pháp phát hiện mã độc là dựa trên signature và phân tích

động đều có nhiều đặc điểm nồi bật, vô cùng phù hợp để đối phó với mã độc ClanAV

và Cuckoo có thé phân tích vô sé loại tập tin và có thé phát hiện rất nhiều loại mã độc

24

Trang 37

CHƯƠNG 3 CƠ SỞ LÝ THUYÉT

khác nhau ClamAV có khả năng chống lại archive bomb và phân tích các packed file Cuckoo có thiết kế mô đun hóa và có thể viết kịch bản phân tích, điều này cho phép tận dụng nhiều tính năng của hệ thống để tối ưu việc phát hiện cho nhiều loại

mã độc Ngoài ra, có một số giải pháp harden Cuckoo dé tăng tính tàng hình của nó với mã độc, đối phó với các kĩ thuật chống phân tích giúp tăng khả năng phát hiện với các loại mã độc tinh vi Một vài loại mã độc cơ bản được đề cập, cũng như các

kỹ thuật phân tích và phát hiện mã độc mới dựa trên trí tuệ nhân tạo là những thông tin đáng lưu tâm, đó là cơ sở của các công cụ phát hiện mã độc.

Ở chương tiếp theo, nhóm tác giả trình bày về quá trình tiến hành thiết kế hệ thống.

Miêu tả về mô hình hệ thống và cách thức vận hành của nó Xác định các chức năng

cần có của hệ thống và lên ý tưởng xây dựng các chương trình hỗ trợ.

25

Trang 38

CHƯƠNG 4 THIẾT KÉ HỆ THÓNG

Chương 4 THIET KE HE THONG

4.1 Yêu cầu tổng quát

4.1.1 Mục đích của hệ thống

Ngày càng có nhiều loại mã độc mới xuất hiện Chúng chỉ là các biến thể hoặc cũng có thé là những loại mới Điểm chung là các kẻ tắn công đã nghiên cứu và cải thiện dé chúng có thé đối phó được với các kỹ thuật và khuôn mẫu dùng dé phát hiện

đã được biết đến Sự tinh vi và nguy hiểm này là một thách thức lớn đối với bất kỳ

có thể tăng cường khả năng phát hiện mạnh hơn nữa, đặc biệt là các loại mới Dù vậy, không có tường thành nao là vững chắc, an toàn tuyệt đồi Xét đến những trường hợp khi mã độc đã xâm nhập thành công và được kích hoạt rồi thực hiện kết nói về kẻ tan công, cần thiết phải có biện pháp ngăn chặn việc này.

Mục đích là thiết kế hệ thống dé giải quyết được các van đề nêu trên và đồng thời bổ sung thêm các tính năng hữu ích cho hệ thống Vì thế, nhóm tác giả đặt ra một số mục tiêu vào hệ thông như sau:

° Có cơ chế phát hiện mã độc sử dụng signature bao gồm cả dựa trên mã hash

và/hoặc chuỗi byte nội dung của tập tin.

° Có một công cụ phân tích mã độc tự động mạnh mẽ.

° Có một IPS ngăn chặn các lưu lượng mạng độc hại.

° Có cách thức tự động yêu cầu công cụ phân tích động tập tin khi cần thiết.

26

Trang 39

4.2 Tổng quan hệ thống

Với các mục tiêu được đặt ra như trên, tiền hành thiết kế hệ thống (hình 4.1) Hệ thống gồm 6 mạng ảo (bảng 4.1) và bồ trí các thành phan thích hợp vào từng bộ phận của hệ thống, chỉ tiết như bảng bên dưới (bảng 4.2)

27

Ngày đăng: 03/11/2024, 18:29