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 CHONG 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:
HOC
VIEN
CƠNG
NGHỆ
Người hướng dẫn khoa học: Tiến sĩ HỒNG
BƯU
CHÍNH
-
VIÊN THƠNG
XN DẬU.
Phản biện Ï:.........................................CC Q22 2 2 g0 0 ng 3n ng ĐH ĐH ng ĐK kg HE ĐK
xxx
Phản biện 2: ......................................QC Q02 000202 0n ng ĐH
ng ĐK ĐH HE ng ng
vn n3
s%
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: ....... ĐIỜ....... 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
MO DAU
Voi su phat 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
I1: 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.
Pikachu.
Minh
họa ứng dụng
dụng phân tích hành vi chống hack cho game
CHUONG 1 - TONG QUAN VE CAC PHAN MEM DOC HAI
11
Đị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 chit malicious
va
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
va 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:
e
Giam hiéu nang may tinh
e
Thiét hai tai chinh
e_
Mất thông tin cá nhân
e
Ả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à van dé dat 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
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.
CHUONG 2 - CAC PHUONG PHAP PHAN TICH, NHAN DANG
PHAN MEM DOC HAI
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 tat qua trinh phan tich tinh. Phan
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 phan mềm nghi ngờ độc hại.
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 phan 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 :
l. Giám sát hành vi ứng dung ở 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.3So 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) dé phan tích
Phân tích động
+ Giám
sát được
`
+ Kho phan tich khi phan
mềm
nghi
ngờ
độc
hại bị
nén, mã hóa.
các hành động của | + Khi thực hiện chạy phân
Nhược điểm
Ưu điểm
phân mêm
độc hại khi thực hiện trên
mêm
độc
hệ thống.
thống
+ Đánh giá được các ảnh hưởng thực
rủi ro về
tế đến hệ thống.
thơng tin.
hại
làm
đối mặt
cho
hệ
với những
an ninh,an
tồn
+ Đơi khi rất khó có thể
thực
thi
được
độc
hại
do
phần
cần
mềm
tham
số
thuc thi.
+ Giám
Phân tích hành vi
mêm
độc
sát các tác động
hại nên
hệ
của phan
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.4Kêt chương
Chương 2 trình bày chỉ 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 yê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, tong hợp dữ liệu đưa ra các đánh gia để có được
thủ tục khắc phục an tồ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.
CHUONG 3 - UNG DUNG PHAN TICH HANH VI TRONG
CHONG HACK GAMES
3.1 Game va lich sir phat 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 Ly do hack games
Những lý do chính mà người chơi sử dụng công cụ để hack games :
e_
Để tăng điểm kinh nghiệm chơi game
e_
Để thách thức bản thân, cũng như nhà phát triển games
e
Vụi chơi giải trí
e
Gay sự chú ý
e
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 :
e
St dung cdc céng cu phan mém đề kiểm tra, khai thác các lỗ hỗng để tấn công game.
e _ 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.
Ung dung phân tích hành vi trong chỗng hack games
3.3.1 Khai thac hanh 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ó :
e
Hanh vi debug voi ngat INT 3h.
e
Hanh vi truy van dé debug NtQueryInformationProcess.
e
Hanh vi kiém tra tién trinh debug CheckRemoteDebuggerPresent.
Hành vi chèn mã can thiệp về thời gian hoạt động của game Pikachu:
e_
Hành vi thay đôi bộ đếm thời gian GefTickCou.
e
Hanh vi truy vấn bộ đếm thời gian QueryPerformanceCounter.
3.3.2 Phan cum hanh vi hack game Pikachu
Với các hành vi debug và chèn mã được khai thác trong phan
3.3.1, su dung thuat
toán | trong phan 2.2.3 dé phân cụm hanh vi. Ta sé duoc hai cum duoc dat tén la Debug va
Inject.
3.3.3 Cài đặt chương trinh 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
va nap
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.
Chay game
|
Nap module giam
sat hanh vi
Kiêm tra
Néu không thì lặp lại kiểm
hành vi
Có hành vi can thiệp vào
Vv
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
hat
cum
NtQuerylnformationProcess,
Debug
va
Inject.
Do
là
các
CheckRemoteDebuggerPresent,
hành
vị
JNT
3h,
GetTickCount,
Query PerformanceCounter.
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, lam han chế các tác động tiêu cực đến game, dam bao su phat trién 6n dinh cho game
khi trién khai ngoai cOng dong.
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:
e_ Giới thiệu các khái niệm về phần mềm độc hại, lich sử hình thành và phát triển của
chúng.
e_
Đưa ra được các phương pháp cơ sở để phân tích phần mềm độc hại.
e
Đưa ra được mơ hình và thuật tốn cho phương pháp phân tích hành vI.
e
Xay dung đượ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:
e_
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.
e
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 doc hai.
10