– Virus xâm nhập vào máy tính và thực thi trong máy tính bằng cách nằm trong các chương trình lớn hơn.. Kiểm tra tính tồn tại tt - Kiểm tra file Kiểm tra bằng kích thước Kiểm tra bằng
Trang 1Giáo viên hướng dẫn: ThS Đỗ Xuân Toàn Sinh viên thực hiện: Tạ Thế Hiếu
Trường Đại Học Dân Lập Hải Phòng
Khoa Công Nghệ Thông Tin
Trang 2NỘI DUNG TRÌNH BÀY
Trang 31.1 Virus là gì?
1.2 Cấu trúc của một Virus File
1.3 Các kỹ thuật xây dựng Virus
1 TỔNG QUAN VỀ VIRUS
Trang 41.1 Virus là gì?
– Virus là một chương trình có khả năng tự sao chép chính nó Khi nó thực thi, nó sẽ tạo ra một hay nhiều bản copy của chính nó một cách đơn giản nhất Những copy này sau đó có thể tiếp tục thực hiện nhiều copy khác
– Virus xâm nhập vào máy tính và thực thi trong máy tính bằng cách nằm trong các chương trình lớn hơn
1 TỔNG QUAN VỀ VIRUS
Trang 51.1 Virus là gì?(tt)
Phân loại Virus:
Có nhiều cách để phân loại Virus nhưng cách phân loại phổ biến hiện nay là phân loại theo đối tượng lây nhiễm, gồm có:
– B-Virus: Virus chỉ tấn công lên Master Boot hay Boot Sector
– F-Virus: Virus chỉ tấn công lên các file thực thi
1 TỔNG QUAN VỀ VIRUS
Trang 61.2 Cấu trúc của một virus file
1 TỔNG QUAN VỀ VIRUS
Đã có CT trong vùng nhớ? Đúng
Không tìm thấy Cài đặt CT vào bộ nhớ RAM
Trả quyền điều khiển
Trang 71.3 Các kỹ thuật xây dựng Virus
1.3.1 Kiểm tra tính tồn tại
1.3.2 Kỹ thuật thường trú
1.3.3 Kỹ thuật tìm file đối tượng
1.3.4 Kỹ thuật lây lan
1.3.5 Kỹ thuật phá hoại
1.3.6 Kỹ thuật gây nhiễu nguỵ trang
1 TỔNG QUAN VỀ VIRUS
Trang 81.3.1 Kiểm tra tính tồn tại
- Kiểm tra vùng nhớ
Gọi hàm chức
năng của virus
Kiểm tra giá trị
So sánh với đoạn
mã của virus? Chưa lây
Đã lây Đúng
Sai
Kiểm tra bằng dò đoạn mã
Trang 91 TỔNG QUAN VỀ VIRUS
1.3.1 Kiểm tra tính tồn tại (tt)
- Kiểm tra file
Kiểm tra bằng kích thước Kiểm tra bằng cách dò đoạn mã Kiểm tra bằng Keyvalue
Đã lây
Chưa lây
So sánh với n bytes của virus?
Đã lây
Chưa lây Buffer =
Keyvalue
? Đúng
Sai
Trang 101 TỔNG QUAN VỀ VIRUS
1.3.2 Kỹ thuật thường trú
- Kỹ thuật thường trú là một vấn đề khó giải quyết
- Khi virus thường trú dễ dẫn đến sự thường trú của chương trình chủ => Kích thước thường trú quá
lớn => Dễ bị phát hiện
- Một cách khắc phục đơn giản là lây vào các file
nằm trong 2 thư mục Windows và System
Trang 111 TỔNG QUAN VỀ VIRUS
1.3.3 Kỹ thuật tìm file đối tượng
Gọi chức năng FindFirstFile
Tìm được file?
File có thể lây?
File EXE?
Đã lây nhiễm?
Thưc hiện lây nhiễm Gọi chức năng FindNextFile
Trang 121 TỔNG QUAN VỀ VIRUS
1.3.4 Kỹ thuật lây lan
Đúng
Lấy thuộc tính Đặt lại thuộc tính (Normal)
Mở file
Lấy ngày giờ Ghi chương trình Virus Chỉnh lại Header Ghi lại Header Đặt lại ngày Đóng file Trả lại thuộc tính ban đầu
Kiểm tra đã lây nhiễm?
Sai
Trang 131 TỔNG QUAN VỀ VIRUS
1.3.5 Kỹ thuật phá hoại
- Có nhiều kiểu phá hoại khi virus đã xâm nhập vào một hệ thống máy tính
Trang 141 TỔNG QUAN VỀ VIRUS
1.3.6 Kỹ thuật gây nhiễu nguỵ trang
- Khi một virus lây nhiễm vào một file điều
không thể tránh khỏi là file chủ sẽ tăng kích thước
- Kĩ thuật này làm cho hệ điều hành và người sử dụng làm tưởng một file đang bị lây nhiễm là trong sạch
Trang 152.1 Cấu trúc file EXE trên Windows
2.2 Cách tổ chức bộ nhớ trên Windows
2.3 Cách sử dụng hàm API trong Windows
2 CÁC KỸ THUẬT XÂY DỰNG VIRUS
TRÊN WINDOWS
Trang 162.1 Cấu trúc file EXE của Windows
• Một file exe Windows thực sự có 2 Hearder
• Có một DOS header và 1 chương trình DOS
đi kèm với nó
• Sau DOS hearder là Windows hearder
2 CÁC KỸ THUẬT XÂY DỰNG VIRUS
TRÊN WINDOWS
Trang 17The Windows EXE New Header
0 2 bytes Sidnature Nhận dạng header mới,luôn luôn chứa các bytes “NE”
2 1 Linker Version Nhận dạng liner liên kết với exe
3 1 Linker Rersion Số Phiên bản fụ of liên kết
Bit Mô tả
0 1= đoạn dữ liệu đơn ( 1 DLL)
1 1= nhiều đoạn dữ liệu ( 1 chương trình ứng
Chỉ rõ số đoạn dữ liệu tự động
10 2 Local hep Size khởi tạo kích thước cua vùng heap, tính bằng bytes
Trang 1812 2 Stack Size khởi tạo kóch thước vùng stack, tính bằng bytes
14 2 Initial IP Khởi tạo offset của điểm đầu
16 2 Initial CS khởi tạo con trỏ CS – nhãn của bảng segment
18 2 Initial SP khởi tạo con trỏ SP cho chương trình
1A 2 Initial SS khởi tạo con trỏ SS – nhãn của bảng Segment
Số hiệu điểm đầu của bảng Module Name
22 2 Seg Table Offset Offset đến bảng Segment, bắt đầu từ hearder mới
24 2 Resre Tbl offset Offset đến bảng Resource, bắt đầu từ NH
Offs
Offset đến bảng tên Resident, bắt đầu từ hearder mới
Trang 19Số bước có thể dịch chuyển của con trỏ đầu vào
Số hiệu của đoạn tài nguyên
36 1 Op Sys Chỉ HĐH nào điều khiển file này(1=OS/2; 2=WindowsDOS)
37 1 Flags2 Bit Mô tả
1 1=ứng dụng của Windows2.x chạy trong chế độ protected
2 1=ứng dụng của Windows2.x chống lại sự tương thích các
mẫu
3 1= Vùng tải nhanh các gói dữ liệu
Trang 202.2 Cách tổ chức bộ nhớ trên windows
- Windows sử dụng bộ quản lý bộ nhớ ảo để quản lý bộ nhớ
- Bộ nhớ của windows là bộ nhớ phẳng được chia thành từng page 4KB
- Một ứng dụng được cấp một không gian bộ nhớ trong đó chủ yếu là
bộ nhớ ảo và chúng được sử dụng trong 2 chế độ: User mode và
Kernel mode
2 CÁC KỸ THUẬT XÂY DỰNG VIRUS
TRÊN WINDOWS
Trang 21thể sử dụng cách gọi thông qua toán tử Invoke
2 CÁC KỸ THUẬT XÂY DỰNG VIRUS
TRÊN WINDOWS
Trang 223 VIRUS ĐƯỢC XÂY DỰNG
3.1 Lưu đồ thuật toán của Virus
3.2 Các thủ tục mà virus sử dụng
Trang 233 VIRUS ĐƯỢC XÂY DỰNG
3.1 Lưu đồ thuật toán của Virus
Tìm file tiếp theo trong thư mục
Số thư mục đã lây = 4?
Lần lấy = 3? Thấy
Sai
Sai
Trang 25KẾT LUẬN
- Virus là một chương trình máy tính nên rất dễ gây nhầm lẫm với một số chương trình của người sử dụng
- Ngoài cách dựa hoàn toàn vào các chương trình diệt virus ta cũng nên có thêm một chút kiến thức
về hệ thống máy tính và virus để khỏi ngỡ ngàng, bối rối khi bị virus xâm nhập và phá hoại
Trang 26EM XIN CHÂN THÀNH
CẢM ƠN