Tải bản đầy đủ (.pptx) (52 trang)

Nghiên cứu một số kỹ thuật sinh mã độc tự động và vượt qua phần mềm

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.41 MB, 52 trang )

KHOA CÔNG NGHỆ THÔNG TIN – HỌC VIỆN KỸ THUẬT QUÂN SỰ
BÁO CÁO NGHIÊN CỨU KHOA HỌC

Nghiên cứu một số kỹ thuật sinh mã độc tự
động và Vượt qua các phần mềm
phòng chống mã độc
Cán bộ hướng dẫn:
Thượng tá, PGS Nguyễn Hiếu Minh
Trung úy, KS Nguyễn Văn Cường

Nhóm 2


NộI dung
I. Tổng quan về Mã độc.
II. Tổng quan về Phần mềm phòng chống mã độc.
III. Các kỹ thuật vượt qua Phần mềm phòng chống mã độc.
IV. Kết luận.


I. Tổng quan về Mã độc
1. Khái niệm – phân loại.
2. Cách thức lây nhiễm của mã độc.
3. Các loại mã độc mới và dự đoán xu hướng mã độc trong tương lai.
4. Các công cụ - kỹ thuật sinh mã độc tự động.


II. Phần mềm phòng chống mã độc – Kỹ thuật phát
hiện mã độc
1. Giới thiệu.
2. Nguyên lý phát hiện mã độc.


3. Các kỹ thuật phát hiện mã độc.


III. Các kỹ thuật vượt qua Phần mềm phòng chống mã
độc
1. Cấu trúc tệp tin thực thi.
2. Các kỹ thuật vượt qua phần mềm phòng chống mã độc.
3. Demo.


2. Các kỹ thuật vượt qua phần mềm phòng chống mã
độc
1. Kỹ thuật mã hóa.
2. Kỹ thuật chèn mã rác.
3. Kỹ thuật rẽ nhánh.
4. Sử dụng Stub để giải mã và thực thi trên
bộ nhớ.
5. Kỹ thuật PRIDE (Pseudo-Random Index
Decryption).

6. Các kỹ thuật chống phân tích mã độc.
7. Kỹ thuật che giấu API (Application
Programming Interface).
8. Kỹ thuật sử dụng chữ ký số.
9. Khai thác lỗ hổng trên Hệ điều hành.


I. Tổng quan về Mã độc
1. Khái niệm – phân loại.
2. Cách thức lây nhiễm của mã độc.

3. Các loại mã độc mới và dự đoán xu hướng mã độc trong tương lai.


I. Tổng quan về Mã độc
1. Khái niệm, phân loại và mục đích của mã độc
a) Khái niệm
Mã độc là một thuật ngữ dùng để ám chỉ những phần mềm được cài đặt vào máy tính, thực hiện
những nhiệm vụ không mong muốn của người dùng, thường nhằm phục vụ lợi ích cho bên thứ ba nào
đó.
b) Phân loại
Virus, Worm, Trojan, Rootkit, Keylogger, Addware, Spyware, Browser Hijacker, Mobile Threats,…
c) Mục đích
• Trò đùa hoặc khẳng định bản thân

• Phá hủy dữ liệu, hệ thống máy tính

• Học tập và nghiên cứu

• Theo dõi và đánh cắp thông tin


I. Tổng quan về Mã độc
2. Cách thức lây nhiễm


Lây nhiễm theo cách cổ điển.



Lây nhiễm qua thư điện tử.




Lây nhiễm qua truy cập trang web.



Lây nhiễm qua các phần mềm cài đặt.



Lây nhiễm qua khai thác lỗi bảo mật.



Qua nhiều con đường khác,...
Hình 1: Minh họa cách thức lây nhiễm mã độc qua thư điện tử


I. Tổng quan về Mã độc

Hình 2: Sự xuất hiện của các loại mã độc mới theo từng năm. –
Thống kê của AV-TEST.

Hình 3: Việt Nam đứng thứ 2 về lượng lây nhiễm
mã độc tấn công các giao dịch ngân hàng trực
tuyến (2013) - Theo TrendMicro.


I. Tổng quan về Mã độc

3. Các loại mã độc mới và dự đoán xu hướng mã độc trong tương lai.


Mã độc sẽ tiếp nhằm vào hạ tầng trọng yếu của các quốc gia để đánh cắp và phá huỷ dữ liệu.



Các mã độc trên di động tăng nhanh và xuất hiện nhiều biến thể phần mềm mã hoá tống tiền
(ransomware) trên di động.



Quyền riêng tư của người sử dụng tiếp tục là mục tiêu của hacker.



Các dịch vụ lưu trữ dữ liệu đám mây sẽ gặp nhiều vấn đề về an ninh.



Mạng xã hội như Facebook sẽ trở thành con đường chủ yếu để kẻ lừa đảo hoạt động.



Các cuộc tấn công mạng mang màu sắc chính trị gia tăng giữa hacker của các quốc gia.



Doanh nghiệp đối đầu với các cuộc tấn công đánh cắp dữ liệu ngày càng tinh vi (APT).



I. Tổng quan về Mã độc
4. Các công cụ - kỹ thuật sinh mã độc tự động.

Hình 4: JPS (Virus Maker 3.0)

Hình 5: TeraBIT Virus Maker 3.1

Hình 6: Sonic Bat


I. Tổng quan về Mã độc
4. Các công cụ - kỹ thuật sinh mã độc tự động.

Bước 1: Tạo ra một mã độc có đầy đủ các
chức năng.
Bước 2: Xây dựng một công cụ Patcher
để sửa đổi một số byte code trong tệp
tin nhị phân của mã độc tương ứng với
mỗi lựa chọn chức năng hay cấu hình cài
đặt của mã độc được sinh ra.
Bước 3: Ghi tệp tin mã độc được sinh ra
bằng Patcher.

Hình 7: Mô tả quá trình Patch.


II. Phần mềm phòng chống mã độc – Kỹ thuật phát hiện mã
độc.
1. Giới thiệu.

 Flushot Plus và Anti4us là hai tiện ích phòng chống mã độc đầu tiên năm 1987.
 Đến ngày nay, Các sản phẩm phòng chống mã độc ngày càng phát triển.

Hình 8: Các phần mềm phòng chống mã độc phổ biến


II. Tổng quan về Phần mềm phòng chống mã độc
2. Nguyên lý phát hiện mã độc.
• Dựa vào dấu hiệu đặc trưng (Signature-based)
• Dựa vào đặc điểm bất thường (Anomaly-based)
Các kỹ thuật phân tích:
• Phân tích tĩnh (Static)
• Phân tích động (Dynamic)
• Phân tích lai (Hybrid)
Hình 9: Sự phân chia các kỹ thuật phát hiện mã độc


II. Tổng quan về Phần mềm phòng chống mã độc
2. Nguyên lý phát hiện mã độc
Ưu thế:


Phát hiện chính xác các mã độc nếu signature trùng
khớp với các mẫu trong tập mẫu nhận dạng

Hạn chế:

Hình 10: Phát hiện mã độc dựa vào dấu hiệu đặc
trưng




Xây dựng tập các signature là vô cùng khó khăn.



Không phát hiện được các mã độc mới,
các zero-days.



Việc lưu trữ và đối chiếu signature gặp khó khăn


II. Tổng quan về Phần mềm phòng chống mã độc
2. Nguyên lý phát hiện mã độc
Ưu thế:


Là chìa khóa để có thể phát hiện ra các khai thác
zero-day hay zero-attack.

Hạn chế:


Sai số giữa trạng thái bình thường và bất thường



Sự phức tạp, rắc rối khi xác định những trạng thái

được phép học

Hình 11: Phân loại hành vi dựa vào đặc điểm bất thường


II. Phần mềm phòng chống mã độc – Kỹ thuật phát
hiện mã độc.
3. Các kỹ thuật phát hiện mã độc.

1. Checksummers.
2. Fuzzy hashing
3. Scan string
4. Code emulation
5. Static huericstic
6. Behavior blocking


II. Tổng quan về Phần mềm phòng chống mã độc
3. Các kỹ thuật phát hiện mã độc
Checksummers: là kỹ thuật phát hiện đối tượng mã độc trên cơ sở tính toàn vẹn của chương trình.
Ưu điểm:


Độ chính xác gần như tuyệt đối.

Nhược điểm:


Nhận dạng thiếu. Quá trình nhận dạng lâu
nếu cơ sở dữ liệu mẫu lớn.




Quá trình xây dựng cơ sở dữ liệu mẫu khó
khăn, phức tạp. Mã độc có thể dễ dàng

Hình 12: Tệp mã độc được quét trên trang virustotal.com

vượt qua nếu nhận dạng bằng mã hash.


II. Tổng quan về Phần mềm phòng chống mã độc
3. Các kỹ thuật phát hiện mã độc
Fuzzy hashing: vẫn là nhận dạng mã độc qua mã hash nhưng đã được bổ sung thêm các phân tích và tính toán để
từ một mã hash của mã độc, có thể nhận ra các mã hash “họ hàng”, nâng cao khả năng phát hiện.

Ưu điểm:


Cải thiện hơn kỹ thuật Checksummers.



Nâng cao khả năng phát hiện mã độc với
cơ sở dữ liệu mẫu bị hạn chế.

Nhược điểm:
Hình 13: Mô tả sau khi tiến hành Rolling hash




dài ký tự phù hợp là khó khăn.

Fuzzy hashing = Context Triggered Piecewise Hashing (CTPH)
= Piecewise hashing + Rolling hashing

Việc xây dựng thuật toán và lựa chọn độ



Có thể xảy ra cảnh bảo giả (cảnh báo sai).


II. Tổng quan về Phần mềm phòng chống mã độc
3. Các kỹ thuật phát hiện mã độc
Scan string: kỹ thuật sử dụng một chuỗi trích ngang (chuỗi bytes) là đặc trưng của tập tin mã độc và
không tồn tại trong các tập tin sạch để làm cơ sở dữ liệu mẫu dùng để nhận dạng mã độc.

Ưu điểm:


Nhận dạng chính xác.



Tốc độ nhận dạng nhanh hơn so với kỹ thuật
Checksummers.

Nhược điểm:



Quá trình xây dựng và cập nhật cơ sở dữ liệu
phức tạp.

Hình 14: Đoạn mã của virus Stoned khi được phân tích



Nhận dạng bị động, không phát hiện được khi
mã chương trình bị thay đổi.


II. Tổng quan về Phần mềm phòng chống mã độc
3. Các kỹ thuật phát hiện mã độc
Code emulation: là một kỹ thuật phát hiện mã độc được đánh giá cao. Bằng việc mô phỏng lại hệ thống CPU,
hệ thống quản lý bộ nhớ, các chỉ thị máy ở cấp thấp… giống như máy quét thực tế.

Ưu điểm:


Mã độc hoạt động độc lập, không ảnh hưởng
đến hệ thống máy thật.

Nhược điểm:

Hình 15: Cấu trúc của thanh ghi và cờ CPU Intel 16bit
được định nghĩa lại bằng ngôn ngữ C

Mô phỏng lại các thông tin hệ thống CPU, bộ
nhớ… là rất khó khăn.




Cập nhật và vận hành hệ thống mô phỏng yêu
cầu tính kỹ thuật cao.


II. Tổng quan về Phần mềm phòng chống mã độc
3. Các kỹ thuật phát hiện mã độc
Static Heuristic Analysis: kỹ thuật này phân tích, tính toán những thông tin từ chương trình như: PE Header,
Section, các hàm API được Import… hay những dấu hiệu đáng nghi ngờ như: kích
thước của một số trường không chính xác, mã điều hướng, tổ hợp các Flag…

Ưu điểm:


Chủ động trong việc xây dựng cơ sở dữ liệu mẫu.



Nâng cao khả năng nhận dạng mã độc (bao gồm cả
những loại mã độc chưa có trong cơ sở dữ liệu mẫu)

Nhược điểm:


Khó khăn trong việc lựa chọn các đặc trưng để sử
dụng cho việc phân loại ngưỡng lây nhiễm.

Hình 16: Phân loại ngưỡng lây nhiễm ở mức đơn lớp.




Có thể xảy ra cảnh báo giả (cảnh báo sai).


II. Tổng quan về Phần mềm phòng chống mã độc
3. Các kỹ thuật phát hiện mã độc

Behavior Blocking: là kỹ thuật cho phép ngăn chặn các hành vi, các khối lệnh bị nghi ngờ là mã độc
trước khi chúng có cơ hội ảnh hưởng đến hệ thống.

Ưu điểm:


Có khả năng ngăn chặn sự ảnh hưởng của chương
trình mã độc lên hệ thống.



Tùy theo năng lực phân tích để tùy chỉnh ảnh hưởng
của mã độc.

Nhược điểm:


Yêu cầu người (hệ thống) phân tích phải có tính chuyên
môn cao.

Hình 17: Một khối ngăn chặn hành vi lừa đảo trên DOS




Có thể xảy ra cảnh báo giả (cảnh báo sai).


III. Các kỹ thuật vượt qua Phần mềm phòng chống mã độc
1. Cấu trúc tệp tin thực thi.
2. Các kỹ thuật vượt qua phần mềm phòng chống mã độc.
3. Demo chương trình.


×