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

Phát hiện các phần mềm độc hại dựa trên phân tích hành vi và ứng dụng trong chống hack game (tt)

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 (207.12 KB, 12 trang )

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

ĐỖ ANH TUẤN

PHÁT HIỆN CÁC PHẦN MỀM ĐỘC HẠI DỰA TRÊN PHÂN TÍCH HÀNH
VI VÀ ỨNG DỤNG TRONG CHỐNG HACK GAME
Chuyên ngành: KHOA HỌC MÁY TÍNH
Mã số: 60.48.01

TĨM TẮT LUẬN VĂN THẠC SĨ

HÀ NỘI - 2013


Luận văn được hồn thành tại:
HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG

Người hướng dẫn khoa học: Tiến sĩ HỒNG XUÂN DẬU.

Phản biện 1: ……………………………………………………………………………………………

Phản biện 2: ……………………………………………………………………………………………

Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Cơng nghệ Bưu chính
Viễn thơng
Vào lúc: ....... giờ ....... ngày ....... tháng ....... .. năm ...............
Có thể tìm hiểu luận văn tại:

- Thư viện của Học viện Cơng nghệ Bưu chính Viễn thơng



MỞ ĐẦU
Với sự phát triển mạnh mẽ của Internet, vấn đề an ninh, an tồn các hệ thống thơng
tin ngày càng trở nên cấp thiết khi các hệ thống thông tin được kết nối với nhau và với mạng
Internet, chúng phải đối diện với nhiều nguy cơ bị tấn công lấy cắp thông tin hoặc phá hoại
hệ thống. Trong số các tác nhân tấn công phá hoại các hệ thống thông tin và mạng, các phần
mềm độc hại là một trong các dạng gây nhiều thiệt hại nhất do khả năng lan truyền nhanh
chóng. Các phần mềm độc hại được phát triển ngày càng tinh vi, rất khó phát hiện với các
kỹ thuật nhận dạng thông thường, như kỹ thuật phân tích tĩnh và phân tích động. Các kỹ
thuật phân tích tĩnh và phân tích động giúp chúng ta phân tích, nhận dạng được các phần
mềm độc hại dựa trên các đặc trưng của chúng dưới dạng các chữ kí. Tuy nhiên, khi các kỹ
thuật viết chương trình ngày càng phát triển, các phần mềm độc hại có khả năng tự biến đổi
thành một dạng mới rất khó phân tích, nhận dạng.
Dựa trên các đặc tính, tính chất của các phần mềm độc hại, phương pháp tiếp cận
phân tích hành vi tỏ ra có lợi thế trong nhận dạng và phòng ngừa các nguy cơ do các phần
mềm độc hại gây ra, đặc biệt khi có những sự biến đổi của kỹ thuật viết chương trình phần
mềm độc hại để tránh các phương pháp phân tích nhận dạng truyền thống. Luận văn này tập
trung nghiên cứu phương pháp phân tích, nhận dạng các phần mềm độc hại dựa trên hành vi
với mục đích nâng cao khả năng nhận dạng các phần mềm độc hại.
Luận văn bao gồm ba chương chính với nội dung như sau:
+ Chương 1: Giới thiệu tổng quan về các phần mềm độc hại: khái niệm chung về
phần mềm độc hại, phân loại chúng theo NIST, tác hại của phần mềm độc hại đối với
hệ thống và người dùng, quá trình hình thành và phát triển của phần mềm độc hại.
+ Chương 2: Trình bày các phương pháp phân tích phần mềm độc hại: phương pháp
phân tích tĩnh, phương pháp phân tích động, phương pháp phân tích hành vi. So sánh
ưu nhược điểm của các phương pháp phân tích phần mềm độc hại.
+ Chương 3: Nội dung trình bày tổng quan về games, quá trình hình thành và phát
triển của game trên thế giới và Việt Nam. Ứng dụng phân tích hành vi trong chống
hack game. Minh họa ứng dụng dụng phân tích hành vi chống hack cho game
Pikachu.

1


CHƯƠNG 1 - TỔNG QUAN VỀ CÁC PHẦN MỀM ĐỘC HẠI
1.1

Định nghĩa phần mềm độc hại
Phần mềm độc hại (tiếng Anh: malware là sự ghép của hai chữ malicious và

software) là một loại phần mềm hệ thống do các tin tặc hoặc các lập trình viên tạo ra nhằm
gây hại cho các máy tính và người dùng. Tùy theo cách thức mà tin tặc sử dụng, sự nguy hại
của các loại phần mềm độc hại là khác nhau. Một số phần mềm độc hại chỉ đơn giản hiển thị
các thông điệp khơng mong muốn, gây khó chịu cho người dùng. Tuy nhiên, nhiều phần
mềm độc hại hỗ trợ tin tặc tấn công, đột nhập đánh cắp thông tin, chiếm quyền điều khiển
máy tính. Nhiều phần mềm độc hại có khả năng lây lan sang các máy tính khác tương tự
như virus trong cơ thể các sinh vật.

1.2

Phân loại
Theo NIST(National Institute of Standards and Technology : viện tiêu chuẩn và công

nghệ quốc gia Hoa Kỳ). Phần mềm độc hại được chia thành tám nhóm chính, bao gồm: Virus,
Trojan horse, Worm, Malicious mobile code, Blended attack, Tracking cookies, Attacker tools
và Non-Malware Threats.

1.3 Tác hại của phần mềm độc hại
Dựa trên các loại phần mềm độc hại khác nhau mà tác hại của chúng đối với hệ thống
của chúng ta là khác nhau, nhưng cơ bản có những tác hại chính sau:
 Giảm hiệu năng máy tính

 Thiệt hại tài chính
 Mất thơng tin cá nhân
 Ảnh hưởng tới hoạt động sản xuất

1.4 Lịch sử phát triển phần mềm độc hại
1.5 Kết chương
Chương 1 của luận văn đề cập tới khái niệm cơ bản về phần mềm độc hại, phân loại
phần mềm độc hại theo viện tiêu chuẩn và công nghệ quốc gia Hoa Kỳ, lịch sử hình thành
và phát triển từ trước tới nay, các tác hại đối của phần mềm độc hại đối với chúng ta.
Với những tác hại của phần mềm độc hại đối với hệ thống cũng chính là vấn đề đặt ra
cho luận văn phát triển một giải pháp phân tích phần mềm độc hại dựa trên phân tích hành
2


vi, giúp chúng ta đánh giá được tác động ảnh hưởng của phần mềm độc hại đối với hệ thống
cũng như đưa ra giải pháp phòng ngừa khắc phục hậu quả do phần mềm độc hại gây ra.

3


CHƯƠNG 2 - CÁC PHƯƠNG PHÁP PHÂN TÍCH, NHẬN DẠNG
PHẦN MỀM ĐỘC HẠI
2.1Các phương pháp phân tích, nhận dạng phần mềm độc hại
2.1.1 Phương pháp phân tích tĩnh
2.1.1.1 Giới thiệu
Phương pháp phân tích tĩnh là phương pháp trích xuất thơng tin về các phần mềm
độc hại từ tập tin mã nhị phân của chúng mà không thực hiện các mã nhị phân này. Phân
tích tĩnh bao gồm việc kiểm tra danh sách các chuỗi, sinh chữ ký cho mỗi phần mềm được
phân tích, xác định thuộc tính và trình biên dịch được sử dụng và một số đặc điểm khác
2.1.1.2 Quét chữ ký phần mềm độc hại dựa trên các cơng cụ Anti-virus

2.1.1.3 Phân tích các phần mềm độc hại đã áp dụng đóng gói và xáo trộn mã
2.1.1.4 Phân tích các phần mềm độc hại trên nền hệ điều hành Windows

2.1.2 Phương pháp phân tích động
2.1.2.1 Giới thiệu
Phương pháp phân tích động là phân tích, kiểm tra các phần mềm độc hại khi chúng
đang được thực thi. Phân tích động là bước thứ hai trong q trình phân tích phần mềm độc
hại. Phân tích động thường được thực hiện sau khi hồn tất q trình phân tích tĩnh. Phân
tích động liên quan đến việc giám sát phần mềm độc hại khi chúng đang được thực thi, kiểm
tra các hệ thống sau khi đã thực hiện các phần mềm độc hại.
Khi phân tích một phần mềm độc hại bằng phương pháp phân tích động cần thực
hiện các bước sau :


Thiết lập mơi trường phân tích.



Chạy phần mềm nghi ngờ độc hại.



Giám sát tiến trình của phần mềm nghi ngờ độc hại.



Giám sát mạng khi chạy phần mềm nghi ngờ độc hại.

4



2.1.2.2 Thiết lập mơi trường phân tích
2.1.2.3 Chạy phần mềm độc hại
2.1.2.4 Giám sát tiến trình của phần mềm nghi ngờ độc hại
2.1.2.5 Giám sát mạng khi chạy phần mềm nghi ngờ độc hại

2.2 Phương pháp phân tích, nhận dạng phần mềm độc hại dựa trên hành vi
Phương pháp phân tích phần mềm độc hại dựa trên hành vi là việc khai thác thơng tin
liên quan về một chương trình bị nghi ngờ, bằng cách giám sát các hoạt động, hành động
của nó trong hệ thống .
Trong phần này, luận văn tập trung đưa ra một ví dụ về phân tích hành vi và mơ hình
hóa nó. Mục đích của việc phân tích hành vi phần mềm độc hại giúp đánh giá các ảnh
hưởng, tác động đến hệ thống khi một phần mềm độc hại được thực thi. Do vậy, một hệ
thống phân tích sử dụng phương pháp phân tích hành vi cần có 3 thành phần chính :
1. Giám sát hành vi ứng dụng ở mức thấp tổng hợp để hình thành hành vi cấp
cao.
2. Phân cụm các hành vi thu được ở phần giám sát.
3. Khắc phục các ảnh hưởng tới hệ thống bị nhiễm độc, dựa vào các dữ liệu hành
vi thu được.
2.2.1 Mô tả vấn đề
2.2.2 Khai thác hành vi cấp cao
2.2.3 Phân cụm hành vi
2.2.4 Khái quát hành vi
2.2.5 Tạo thủ tục xử lý vùng nhiễm độc

2.3 So sánh các phương pháp phân tích phần mềm độc hại.
Bảng 2.3 So sánh ưu nhược điểm các phương pháp phân tích phần mềm độc hại.
Ưu điểm

Nhược điểm


+ Khơng thực hiện chạy mã độc, giảm
Phân tích tĩnh

nguy cơ lây lan phá hoại hệ thống.
+ Dựa trên cấu trúc tệp tin thực thi
(PE file) để phân tích

Phân tích động

+ Khó phân tích khi phần
mềm nghi ngờ độc hại bị
nén, mã hóa.

+ Giám sát được các hành động của + Khi thực hiện chạy phần
5


Ưu điểm

Nhược điểm

phần mềm độc hại khi thực hiện trên mềm độc hại làm cho hệ
hệ thống.

thống đối mặt với những

+ Đánh giá được các ảnh hưởng thực rủi ro về an ninh,an tồn
tế đến hệ thống.


thơng tin.
+ Đơi khi rất khó có thể
thực thi được phần mềm
độc hại do cần tham số
thực thi.

+ Giám sát các tác động của phần
Phân tích hành vi

mềm độc hại nên hệ thống, đưa ra
đánh giá các rủi ro, cách khắc phục hệ
thống khi bị nhiễm độc.

+ Cũng cần thực hiện phần
mềm độc hại như phân tích
động nên cũng có nhiều rủi
ro về an ninh, an tồn
thơng tin.

2.4 Kết chương
Chương 2 trình bày chi tiết về các phương pháp phân tích phần mềm độc hại. Phương pháp
phân tích tĩnh khơng u cầu thực thi phần mềm độc hại giảm khả năng lây nhiễm sang hệ
thống khác. Phương pháp phân tích động theo dõi các hoạt động của phần mềm độc hại khi
thực thi trong hệ thống. Phương pháp phân tích hành vi phát triển dựa trên phương pháp
phân tích động với khái niệm hành vi tương ứng với các hành động xảy ra trong hệ thống
khi thực thi phần mềm độc hại. Mục tiêu cuối cùng đối với chúng ta là xây dựng một hệ
thống tự động phân tích phần mềm độc hại, tổng hợp dữ liệu đưa ra các đánh giá để có được
thủ tục khắc phục an toàn và hiệu quả.
Để cài đặt phương pháp phân tích hành vi trên hệ thống thực cần mở rộng thêm nhiều hành
vi cần giám sát để sát với thực tế cũng như môi trường thực của hệ điều hành.


6


CHƯƠNG 3 – ỨNG DỤNG PHÂN TÍCH HÀNH VI TRONG
CHỐNG HACK GAMES
3.1 Game và lịch sử phát triển
3.1.1 Tổng quan về game
Video game gọi tắt là game là một dạng trị chơi điện tử liên quan đến tính tương tác
với một giao diện người sử dụng để tạo ra một phản hồi hình ảnh trên một thiết bị hiển thị.
Từ Video trong Video game là cách gọi truyền thống cho một thiết bị hiển thị. Tuy nhiên,
với sự phổ biến của thuật ngữ “Video game”, giờ đây nó ngụ ý tất cả các dạng thiết bị hiển
thị. Hệ thống thiết bị điện tử sử dụng để chơi Video game được gọi là các hệ máy, ví dụ như
máy tính cá nhân hay các hệ máy console. Những hệ máy này có kích thước từ chiếc máy
tính đồ sộ cho đến những thiết bị nhỏ gọn cầm tay.
3.1.2 Lịch sử phát triển của game
3.2Sử dụng các phần mềm độc hại trong hack games

3.2.1 Lý do hack games
Những lý do chính mà người chơi sử dụng công cụ để hack games :
 Để tăng điểm kinh nghiệm chơi game
 Để thách thức bản thân, cũng như nhà phát triển games
 Vui chơi giải trí
 Gây sự chú ý
 Quảng cáo

3.2.2 Kỹ thuật cơ bản để hack games
Để hack games có rất nhiều cách tiếp cận khác nhau nhưng cơ bản là có 2 bước chính
sau :
 Sử dụng các cơng cụ phần mềm để kiểm tra, khai thác các lỗ hổng để tấn công game.

 Sau khi đã khai thác được game thu thập được các dữ liệu về game thì hacker có thể
sử dụng để hack game thay đổi các dữ liệu, hoặc lập trình viết thành các cơng cụ
hack game để phát tán rộng ra bên ngồi.

3.3

Ứng dụng phân tích hành vi trong chống hack games

3.3.1 Khai thác hành vi hack game Pikachu
7


Trong phần ứng dụng phân tích hành vi tập trung vào hai hành vi debug và chèn mã
để chống hack game cho game Pikachu.
Hành vi debug gồm có :
 Hành vi debug với ngắt INT 3h.
 Hành vi truy vấn để debug NtQueryInformationProcess.
 Hành vi kiểm tra tiến trình debug CheckRemoteDebuggerPresent.
Hành vi chèn mã can thiệp về thời gian hoạt động của game Pikachu:
 Hành vi thay đổi bộ đếm thời gian GetTickCount.
 Hành vi truy vấn bộ đếm thời gian QueryPerformanceCounter.

3.3.2 Phân cụm hành vi hack game Pikachu
Với các hành vi debug và chèn mã được khai thác trong phần 3.3.1, sử dụng thuật
toán 1 trong phần 2.2.3 để phân cụm hành vi. Ta sẽ được hai cụm được đặt tên là Debug và
Inject.

3.3.3 Cài đặt chương trình chống hack cho game Pikachu
Do chương trình game Pikachu là một chương trình game độc lập đã được đóng gói,
để nạp được module giám sát hành vi vào game Pikachu cần có chương trình thực hiện gọi

là Loader. Chương trình “Loader.exe” sẽ làm nhiệm vụ thực thi game Pikachu và nạp
module giám sát hành vi vào tiến trình chính của game Pikachu.
Module giám sát hành vi “Behaviour.dll” khi thực hiện sẽ liên tục kiểm tra các hành
vi can thiệp vào game để phân tích và đưa ra thơng báo và thốt game khi phát hiện hack.
Chạy game

Nạp module giám
sát hành vi

Kiểm tra
hành vi

Nếu khơng thì lặp lại kiểm
tra

Có hành vi can thiệp vào
game
Thốt game

Hình 3.6 Mơ hình hoạt động của module chống hack.
8


Trên hình 3.6, là mơ hình hoạt động của module chống hack. Sau khi nạp module
giám sát hành vi vào chạy cùng với game. Module giám sát hành vi sẽ liên tục kiểm tra các
hành

vi

trong


hai

cụm

NtQueryInformationProcess,

Debug



Inject.

Đó



các

CheckRemoteDebuggerPresent,

hành

vi

INT

3h,

GetTickCount,


QueryPerformanceCounter.

3.4

Kết chương
Chương 3 đã giới thiệu tổng quan về game, lịch sử phát triển game với nhiều mốc

phát triển của game trên thế giới. Chương cũng nêu vấn đề và các lý do dẫn đến việc hack
games, các kỹ thuật cơ bản để hack game, và minh họa với game Pikachu. Chương cũng
trình bày kết quả ứng dụng kỹ thuật phân tích hành vi chống hack cho game Pikachu.
Việc ứng dụng kỹ thuật phân tích hành vi vào chống hack game giúp phát hiện hack
game, làm hạn chế các tác động tiêu cực đến game, đảm bảo sự phát triển ổn định cho game
khi triển khai ngoài cộng đồng.

9


KẾT LUẬN
Phân tích phần mềm độc hại nhằm thu được thông tin để sử dụng khai thác trong việc
điều tra, khám phá, loại bỏ các phần mềm độc hại và khắc phục các ảnh hưởng tác động đến
hệ thống khi bị nhiễm độc. Đề tài tập trung nghiên cứu phương pháp phân tích hành vi để
phân tích phần mềm độc hại, trên cơ sở đó đề ra được phương pháp phòng chống, khắc phục
hậu quả do phần mềm độc hại gây ra. Một số kết quả đạt được của luận văn:
 Giới thiệu các khái niệm về phần mềm độc hại, lịch sử hình thành và phát triển của
chúng.
 Đưa ra được các phương pháp cơ sở để phân tích phần mềm độc hại.
 Đưa ra được mơ hình và thuật tốn cho phương pháp phân tích hành vi.
 Xây dựng được một ứng dụng minh họa cho việc sử dụng phương pháp phân tích
hành vi vào chống hack game Pikachu.

Một số hướng nghiên cứu phát triển luận văn trong tương lai:
 Triển khai thử nghiệm kỹ thuật phân tích hành vi nhắm chống hack cho các games
trực tuyến trong môi trường thực.
 Nghiên cứu sâu hơn theo hướng học máy và ứng dụng cho phân tích, nhận dạng phần
mềm độc hại.

10



×