Tải bản đầy đủ (.pdf) (6 trang)

Cracker Handbook 1.0 part 268 doc

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (654.71 KB, 6 trang )

F7 đến RETN, F8, tếip tục trace ,ta đến offset 0x0031343, thấy có một lời gọi hàm
API VirtualAlloc khác ở offset 0x0031343

Tiếp tục F8 cho đến offset 00BA13C9, ở đây chúng ta thấy có một vòng lặp
decryption.
Một lần nữa lưu ý địa chỉ có lệnh PUSH 8000, có thể trỏ đến đoạn mã patching của
ta.
OFFSET (redirection #7): 0x00313D7
INSTRUCTION ORIGINATES THEM: PUSH 8000 - > 0x68 0x00 0x80 0x00
0x00
Nhấn F8 đoạn mã sẽ được ghi

Tiếp tục từng bứơc , ta sẽ tới khối đoạn mã làm việc với IAT, chúng ta có 2 vòng
lặp trộn lẫn.

API được decode sẽ đuợc ghi từ offset 0x002C104, và vị trí kết thúc vòng lặp là
0x00315AB

Một vài bước kế tiếp sẽ giữ chúng ta đến quy trình cổ điển của trình ASPACK.

Chúng ta trace , tase thấy có đểim káhc đựơc khoanh như trên .

Việc điều hướng đến mã của chúng ta được đặt ở đây offset 0x00315C1.
OFFSET (redirection #8): 0x00315C1
ORIGINAL INSTRUCTION: POPAD/JNZ

Ta đặt một điểm ngắt Hardware breakpoints trên offset 0x00289DC sẽ tiết
kiệm thời gian hơn khi restart Olly.
Bây giờ là thời điểm nói đến CRC checking (kiểm tra tính toàn vẹn trên đĩa cứng).
Nhấn CRL+B đánh vào binary sau:


Nhấn OK, ta sẽ tới đựơc đây, offset 0018662.

Đoạn mã này có quan hệ đến việc ánh xạ file thông qua hàm MapViewOfFileEx
mà được gọi bởi chỉ thị CALL EAX.
Đặt điểm ngắt tại hàm MapViewOfFileEx.



Chúng ta giữ ngắt đó, sau đó chúng ta lặp lại sự thực thi cho đến khi chúng ta gặp
đoạn mã ở trên (dùng kết hợp ALT+M break on access trên vùng đang chạy sau đó
ALT+F9 và shift + F9), sau đó chúng ta có thể tìm được key point sau đó chúng ta
có được ảnh file được ánh xạ vào bộ nhớ, bạn hãy dùng thủ thuật tìm kiếm nhịe
phân để tìm key point.

×