Xây dựng công cụ chống hack game

Một phần của tài liệu Phân tích phần mềm độc hại và ứng dụng trong phòng chống hack game (Trang 36 - 39)

Một trong các kỹ thuật được sử dụng để chống hack game là debug và chèn mã can thiệp. Tương ứng với đó sẽ là 2 cụm hành vi debug và chèn mã can thiệp vào thời gian của game. Ở mức thấp hơn với mỗi cụm hành vi sẽ có các lời gọi hàm các hành vi cao cấp như dưới.

Cụm hành vi Debug bao gồm các hành vi:

• Hành vi thay đổi cờ (flag).

• Hành vi kiểm tra tiến trình debug CheckRemoteDebuggerPresent.

• Hành vi thu thập thông tin tiến trình debug NtQueryInformationProcess.

• Hành vi thay đổi thời gian tiến trình debug. Cụm hành vi Chèn mã can thiệp bao gồm các hành vi:

• Hành vi truy vấn thời gian hiện tại QueryPerformanceCounter.

• Hành vi xác định khoảng thời gian thực thi GetTickCount, timeGetTime. Tương ứng với các hành vi trên chúng ta sẽ xây dựng các hàm kiểm tra để so sánh và phát hiện hành vi.

Ví dụ như với hành vi thu thập thông tin tiến trình debug NtQueryInformationProcesschúng ta viết một hàm kiểm tra Check_NtQueryInformationProcess như bên dưới:

bool Check_NtQueryInformationProcess() {

typedef NTSTATUS (WINAPI *pNtQueryInformationProcess) (HANDLE ,UINT ,PVOID ,ULONG , PULONG);

DWORD NoDebugInherit = 0; NTSTATUS Status;

// Get NtQueryInformationProcess

pNtQueryInformationProcess NtQIP = (pNtQueryInformationProcess) GetProcAddress( GetModuleHandle( TEXT("ntdll.dll") ),

"NtQueryInformationProcess" ); Status = NtQIP(GetCurrentProcess(), 0x1f, // ProcessDebugFlags &NoDebugInherit, 4, NULL); if (Status != 0x00000000) return false; if(NoDebugInherit == FALSE) return true; else return false;}

Hàm kiểm tra trên sẽ làm nhiệm vụ gọi hàm NtQueryInformationProcess và lấy thông tin trong đó thông qua cờ process 0x1f và in xuất ra kết quả tại biến NoDebugInheritnếu biến nhận giá trị False thì trả về giá trị True tức là phát hiện có hành

một tập các hàm kiểm tra từ đó xây dựng thành tập các hàm chứa trong DLL tạm gọi làmodule giám sát hành vi. Module này chúng ta sẽ tạo một luồng kiểm tra làm nhiệm vụ thực thi tất cả các hàm phát hiện hành vi ở trên trong suốt quá trình chạy game đưa đánh giá và cảnh bảo, tiến hành thoát game khi phát hiện có hành vi hack game.

KẾT LUẬN

Với sự phát triển mạnh mẽ và liên tục được cải tiến, các phần mềm độc hại ngày càng là hiểm họa cho người sử dụng máy tính. Việc nghiên cứu phân tích phần mềm độc hại là một con đường gian nan và cần nhiều công sức và đam mê. Đề tài thực tập này giới thiệu cơ bản về phần mềm độc hại, các kỹ thuật cơ bản phân tích phần mềm độc hại. Đề tài đi sâu vào phương pháp phân tích phần mềm độc hại dựa trên hành vi từ đó xây dựng một công cụ chống hack game. Cụ thể, đồ án thực hiện được các nội dung sau:

• Trình bày khái quát về phần mềm độc hại, quá trình hình thành và phát triển của chúng.

• Nghiên cứu về phân tích phần mềm độc hại cũng như các phương pháp cơ bản để phân tích phần mềm độc hại.

• Tìm hiểu về phân tích phần mềm độc hại dựa trên hành vi, đưa ra mô hình cũng như các bước để xây dựng hệ thống phân tích hành vi.

• Xây dựng chương trình chống hack game minh họa cho việc sử dụng phương pháp phân tích phân tích phần mềm độc hại dựa trên hành vi.

Một phần của tài liệu Phân tích phần mềm độc hại và ứng dụng trong phòng chống hack game (Trang 36 - 39)

Tải bản đầy đủ (DOCX)

(39 trang)
w