Nh ấn nút “Fix Dump”. Chọn file dump.exe, chúng ta được file dump_.exe. IAT sẽ có dạng như sau : Target: C:\WINDOWS\system32\NOTEPAD.EXE OEP: 00007088 IATRVA: 00003050 IATSize: 00000100 FThunk: 00003050 NbFunc: 00000002 1 00003050 kernel32.dll 00AC ExitProcess 1 00003054 kernel32.dll 0168 GetModuleHandleA FThunk: 0000305C NbFunc: 00000006 1 0000305C user32.dll 000E BeginPaint 1 00003060 user32.dll 009F DialogBoxParamA 1 00003064 user32.dll 00C7 EndDialog 1 00003068 user32.dll 00C9 EndPaint 1 0000306C user32.dll 01B6 LoadBitmapA 1 00003070 user32.dll 023C SendMessageA FThunk: 00003078 NbFunc: 00000005 1 00003078 gdi32.dll 0013 BitBlt 1 0000307C gdi32.dll 002E CreateCompatibleDC 1 00003080 gdi32.dll 008D DeleteDC 1 00003084 gdi32.dll 0090 DeleteObject 1 00003088 gdi32.dll 020D SelectObject Chúng ta cần một thay đổi nhỏ nữa để IAT work. Chúng ta sẽ đến các địa chỉ JMP YYYYYYYY và s ửa thành JMP [XXXXXXXX]. Nhưng trước tiên chúng ta sẽ sửa lại trong “Debug Options” như sau Mở file dump_.exe. Nhảy đến 0040110E, chúng ta sẽ sửa lại JMP 00830000 thành b ằng cách nhấn phím Space tại 0040110E. Nhập vào như hình sau : Nh ấn nút “Assemble” (Lưu ý ở trên là 00403050 chính là địa chỉ của hàm ExitProcess trong IAT c ủa chúng ta). Các API khác cũng làm tương tự. Cuối cùng chúng ta được : Bây giờ chúng ta sẽ lưu file sửa đổi lại bằng cách nhấn phải chuột chọn như trong hình M ột hộp tho ại hiện ra ch ọn “Copy All”. Nh ấn ph ải chuột ch ọn “Save File” đặt t ên là unpacked.exe Chạy thử file unpacked.exe. Tốt. Vậy là xong. Tuy hơi công phu nhưng cuối c ùng chúng ta đã thành công trong việc unpack cái unpackme này . Các bạn có thể d ùng LordPE hoặc PE Tools để “Rebuild PE” sẽ giảm kích thư ớc file unpacked.exe từ 40 Kb xuống 17 Kb Greetz : All VCT members, Crusader, Ricardo and Kagra … 14-06-2005 tlandn Manual Unpacking & Cracking ActiveMark 5.xx I- Introduction: ActiveMark là 1 dạ Protect khá nổ tiế dành cho Game theo cả nhậ củngingmna riêng em nó vừ khó và cũ vừ dễ Khó nế chúng ta không biế phư ng pháp đ killanga.utơể và dĩnhiên cự kỳdễkhi chúng ta nắ đ ợ phư ng pháp làm thịnó. Bả thân em thìcm ưcơtn hầ nhưđ làm thịtoàn bộGame đ ợ Protect bở ActiveMark trên BigFishGames vàuãtưci Yahoo!Games vì vậ em cũ có chút ít kinh nghiệ vềdạ này và quyế đnh viế tấyngmngtịtt cảnhữ gì em biế vềActiveMark đ share vớ tấ cảanh em…ngtểit II- Tools & Target: Tool và các Plugin cầ dùng:n OllyDBG 1.10 LordPE 1.4 ImportREC 1.6f UltraEdit-32 ActiveMark Dumper ActiveMark Overlay Wizard ActiveMark Loader Protection iD v5.1e Target: Buku Sudoku HomePage: http://www.bigfishgames.com/ III-Unpacking Vềphầ Unpack ActiveMark thì chúng ta có 2 cách:n Unpacking vớ Tools hỗ trợ (cách này nhanh gọ và hiệ quảinu) Manual Unpacking (cách này cự kỳchuẩ xác và mang tính chuyên nghiệ caocnp hơn) 1. Manual Unpacking: _khi cầ detect các Game có bịnPack hay Protect dạ nào thì em khuyên các Bác nênng dùng Protection ID 5.1f đ Scan vì nó làm việ khá chính xácểc _Ok, MởOllyDBG và nhấ Alt+O và chọ sau:nn _Load target vào OllyDBG và ta dừ ởđngây: _Nhấ Shift+F9 Game sẽRunn _Bây giờta cầ xác đnh Section chứ tớ OEP. Trong cử sổOllyDBG nhấ Alt+M vànịaian kéo xuố dư i và thấngớy _Section .adata (004B2000) chứ OEP (đ sốcác game đ ợ ActiveMark bả vệaaưco thư ng OEP chứ trong Section bên dư i .rsrc đ u tiên, tính từPE Header củờaớầa Game)…Nhấ Alt+C và nhấ Ctrl+G nhậ vào 004B2000 và ta tớ đnnpi ây _ Nhấ F10 và chọ nhưhìnhnn _Gõ GetCommandLineA . OEP: 00 007 088 IATRVA: 00 003 0 50 IATSize: 00 00 0 10 0 FThunk: 00 003 0 50 NbFunc: 00 000 002 1 00 003 0 50 kernel32.dll 00 AC ExitProcess 1 00 003 054 kernel32.dll 01 6 8 GetModuleHandleA FThunk: 00 003 05C. 00 000 006 1 00 003 05C user32.dll 00 0E BeginPaint 1 00 003 0 60 user32.dll 00 9F DialogBoxParamA 1 00 003 064 user32.dll 00 C7 EndDialog 1 00 003 068 user32.dll 00 C9 EndPaint 1 00 003 06C user32.dll 01 B6. user32.dll 01 B6 LoadBitmapA 1 00 003 0 70 user32.dll 02 3C SendMessageA FThunk: 00 003 078 NbFunc: 00 000 005 1 00 003 078 gdi32.dll 0 013 BitBlt 1 00 003 07C gdi32.dll 00 2E CreateCompatibleDC 1 00 003 0 80 gdi32.dll