Trao đổi với tôi

http://www.buidao.com

4/6/10

[Hooking] Cơ bản về crack Auto theo cơ chế Hook API

Chào các AE,

Các tools và phần mềm Ohm đã sử dụng PEView, Cheat Engine, Visua C++ (bản 2008) và MASM32
Tools Download: http://www.4shared.com/file/104064145/2237a90b/Tools_crack.html
(Bao gồm hướng dẫn trong Tools Download.)

1. Làm thế nào để khi VLAutoPr.EXE chạy thì Ohm_vn.dll được load vào bộ nhớ của tiến trình VLAutoPr?
Để làm được như vậy, đầu tiên Ohm cần tìm hiểu về cấu trúc của file thi hành EXE, DLL và PE Header sẽ trả lời câu hỏi đó. Ohm search trên Google với cụm từ "Cấu trúc PE Header" và tham khảo.

Trong PE Header, Ohm chú tâm vào phần IMPORT và EXPORT
IMPORT: liên quan đến những hàm (function) của DLL cần sử dụng trong chương trình
EXPORT: liên quan đến những hàm mà người dùng có thể truy xuất.
(Sử dụng Tool PEView để xem)

Bất cứ ứng dụng nào của Windows đều có KERNEL32.DLL
Ứng dụng nào sử dụng giao diện (Window, Form) đều có USER32.DLL

Và các Auto đều có USER32.DLL.

* Để load được Ohm_vn.dll khi VLAuto.EXE thi hành, Ohm thay đổi lại cấu trúc IMPORT của HookPr.DLL bằng cách thay đổi USER32.DLL thành Ohm_vn.dll.
Source code (C++): PatchImport
Link: http://www.4shared.com/file/104063268/f12131d4/PatchImport.html
(Có hướng dẫn từng bước trong code)

* Tạo Ohm_vn.dll để Debug tiến trình
Source code (MASM32): Code_Ohm_vn
Link: http://www.4shared.com/file/104063269/86260142/Code_Ohm_vn.html
(Có hướng dẫn từng bước trong code)
(Cần cài đặt MASM32 vào đĩa cứng và thư mục này phải cùng ổ đĩa cài đặt MASM32 để biên dịch chính xác)

Nếu các bạn cần chuyển code MASM32 thành C++ để dễ hiểu hơn Ohm sẽ sửa đổi và post lại.
(Theo Ohm, để crack tốt nên biết về ngôn ngữ Assembly)

Ohm chỉ biết về C++ và MASM32 nên các ngôn ngữ khác Ohm không convert được.
Các phần tiếp theo Ohm sẽ dựa vào Code_Ohm_vn.
Các phần dự tính sẽ post tiếp:
- Liệt kê các hàm trong IMPORT
- Cách Hook API trong IMPORT
- Cách Hook API EXPORT của KERNEL32, USER32,...

Chúc vui,...

reflink: http://vn.360plus.yahoo.com/ohm-vn/article?mid=654&fid=-1&action=next