Armadillo 4.xx - DLL File
Intro
_Chào bà con, tut này là tut áp cuối. Trong tut này tui sẽ bàn đến một dạng protect trên
DLL gọi nôm na là thư viện liên kết động. Một số phần mềm dùng DLL protect mà không
protect tại main program. Dĩ nhiên dll không thể chạy direct được nên quá trình unpack
gặp vấn đề. Chúng ta không thể nào load module lên debugger được mà phải thông qua
tiến trình debug trung gian. May mắn là OllyDBG đã tạo ra LoadDLL.exe để đóng vai trò
một process ánh xạ tới dll mà ta muốn unpack! Để minh hoạ cho tut này tôi dùng UNIKEY
3.62 phiên bản mới nhất không bị pack (các phiên bản cũ đều pack lại với PeCompact
1.84 hoặc 2.00 và đều bị tôi thịt sạch )! Ok, chúng ta bắt đầu thôi!
13 trang |
Chia sẻ: tlsuongmuoi | Lượt xem: 2390 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Armadillo 4.xx - DLL File, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Armadillo-Góp nhặt cát đá
Series# 9: Armadillo 4.xx- DLL File
I. Intro
_Chào bà con, tut này là tut áp cuối. Trong tut này tui sẽ bàn đến một dạng protect trên
DLL gọi nôm na là thư viện liên kết động. Một số phần mềm dùng DLL protect mà không
protect tại main program. Dĩ nhiên dll không thể chạy direct được nên quá trình unpack
gặp vấn đề. Chúng ta không thể nào load module lên debugger được mà phải thông qua
tiến trình debug trung gian. May mắn là OllyDBG đã tạo ra LoadDLL.exe để đóng vai trò
một process ánh xạ tới dll mà ta muốn unpack! Để minh hoạ cho tut này tôi dùng UNIKEY
3.62 phiên bản mới nhất không bị pack (các phiên bản cũ đều pack lại với PeCompact
1.84 hoặc 2.00 và đều bị tôi thịt sạch )! Ok, chúng ta bắt đầu thôi!
II. Tools:
1.OllyDBG - The best config debugger for ArmMUP by hacnho.
2.LordPE 1.4 Deluxe
3.Import REConstructor 1.6 Final
III. Unpacking
_Chương trình chính của Unikey sẽ tham chiếu một DLL là UKHook35.dll. Tôi sẽ dùng
Armadillo phiên bản 4.20 Public Build để pack với options
_Sau khi pack file UKHook35.dll, tôi bắt đầu run file UniKey.exe, run tốt! Ok, ta
load file Unikey.exe lên OllyDBG. Một thông báo của OllyDBG:
_Nhấn Ok, và Shift+F9 tôi ở đây:
_Nhấn Alt+E:
_Ok, đóng cửa sổ OllyDBG lại, bạn load trực tiếp file UKHook35.dll lên Olly, một
thông báo sẽ hiện lên:
_Nhấn Yes bạn sẽ ở đây:
_Nhấn Alt+F1 nhập vào HE GetModuleHandleA, Shift+F9:
_Shift+F9 lần 2:
_Shift+F9 lần 3:
_Lần 4:
_Lần 5:
_Nhìn lên CPU:
_Bấm F8 trace down qua RETN 4, bạn sẽ ở đây:
_Patch magic jump lại thành EB:
_HD GetModuleHandleA, Alt+M:
_Shift+F9: OEP:
_Ta bắt đầu tìm IAT, tại OEP bạn nhấn Ctrl+B:
_Bạn sẽ đến đây:
_Right click:
_Bạn tới đây:
_Cuộn lên trên để kiếm IAT Start:
_Cuộn xuống dưới tìm IAT End:
_Tóm lại ta có thông tin:
OEP: 4C4F:
IAT Start: 1000A000 77E74E0A kernel32.lstrcpyA
IAT End: 1000B058 77206465 OLE32.77206465
IAT Len: 1058
_Bây giờ Alt+C quay lại vị trí OEP, bạn mở LordPE:
_Dĩ nhiên, chúng ta không thể thấy DLL trong process list. Do chúng ta dùng
LoadDLL làm process tham chiếu cho DLL UKHook35. Bạn click vào process
loaddll.exe, nhìn trong của sổ Module ta thấy nhiều module mà loaddll.exe đang
trỏ đến, cuộn xuống để thấy module UKHook.dll:
_Righ click tại module này, chọn dump full:
_Nhớ chọn Dump Engine là Intelligent Dump:
_Bây giờ mở ImpREC lên:
_Click vào Pick DLL:
_Điền thông tin
_Get Import:
_Fix Dump:
_Detect:
_Rename file dumped_.dll thành UKHook35.DLL, run UNIKEY.EXE. Run tốt!
_Unpacked done!
IV. Conclusion
_For more tuts, please visit
_Bye!
GrEeTs Fly Out: Deux, INFINITE, Computer_Angel, Zombie, NVH(c), softcracker_vn, luucorp, Aaron, JMI,
Canterwood, hhphong, R@dier, tlandn, RCA, CTL, Moonbaby, kienmanowar, benina, TQN, the_lighthouse,
Nini, hoadongnoi, dqtln, hosiminh, Nilrem, fly, MaDMAn_H3rCuL3s, Teerayoot, Ferrari, Kruger, Kelvin, Devilz,
NXL, light phoenix ...and you !
Special Thanx Cracks Latinos.
Merci FFF, RiF, N-Gen (closed), ICI-TEAM pour me-aider des connaissances du Game Cracking!
Thanx the author of OllyDBG and ArmInline
To be continued...
Written by hacnho (tutorial date: VietNam 29/09/2005)
Các file đính kèm theo tài liệu này:
- armdillo_tuts_9.pdf