Cracker Handbook 1.0 part 188 pptx

5 221 1
Cracker Handbook 1.0 part 188 pptx

Đang tải... (xem toàn văn)

Thông tin tài liệu

Đặt HBPWD ở 4 byte tại 3F7D60. Xong goi`, tắt các Olly đi, lại load target vô Olly mới, separate Child & father, Attach child, patch changed bytes, Shift + F9, chúng ta dừng ở đây : Shift + F9 : Shift + F9: Đúng là nó gòi, chỗ ghi điều khiển hướng đây mà, code của vòng lặp này : 00AB28B4 8B85 58E6FFFF MOV EAX,DWORD PTR SS:[EBP-19A8] 00AB28BA 3B85 6CE6FFFF CMP EAX,DWORD PTR SS:[EBP-1994] 00AB28C0 0F83 26010000 JNB 00AB29EC 00AB28C6 8B85 58E6FFFF MOV EAX,DWORD PTR SS:[EBP-19A8] 00AB28CC 8B00 MOV EAX,DWORD PTR DS:[EAX] 00AB28CE 8985 38E6FFFF MOV DWORD PTR SS:[EBP-19C8],EAX 00AB28D4 8B85 58E6FFFF MOV EAX,DWORD PTR SS:[EBP-19A8] 00AB28DA 83C0 04 ADD EAX,4 00AB28DD 8985 58E6FFFF MOV DWORD PTR SS:[EBP-19A8],EAX 00AB28E3 8B85 58E6FFFF MOV EAX,DWORD PTR SS:[EBP-19A8] 00AB28E9 8B00 MOV EAX,DWORD PTR DS:[EAX] 00AB28EB 8985 34E6FFFF MOV DWORD PTR SS:[EBP-19CC],EAX 00AB28F1 8B85 58E6FFFF MOV EAX,DWORD PTR SS:[EBP-19A8] 00AB28F7 83C0 04 ADD EAX,4 00AB28FA 8985 58E6FFFF MOV DWORD PTR SS:[EBP-19A8],EAX 00AB2900 8B85 58E6FFFF MOV EAX,DWORD PTR SS:[EBP-19A8] 00AB2906 8B00 MOV EAX,DWORD PTR DS:[EAX] 00AB2908 8985 3CE6FFFF MOV DWORD PTR SS:[EBP-19C4],EAX 00AB290E 8B85 58E6FFFF MOV EAX,DWORD PTR SS:[EBP-19A8] 00AB2914 83C0 04 ADD EAX,4 00AB2917 8985 58E6FFFF MOV DWORD PTR SS:[EBP-19A8],EAX 00AB291D A1 3092AC00 MOV EAX,DWORD PTR DS:[AC9230] 00AB2922 0385 34E6FFFF ADD EAX,DWORD PTR SS:[EBP-19CC] 00AB2928 8B8D 38E6FFFF MOV ECX,DWORD PTR SS:[EBP-19C8] 00AB292E 8B95 18E7FFFF MOV EDX,DWORD PTR SS:[EBP-18E8] 00AB2934 8D4C0A 04 LEA ECX,DWORD PTR DS:[EDX+ECX+4] 00AB2938 2BC1 SUB EAX,ECX 00AB293A 8985 40E6FFFF MOV DWORD PTR SS:[EBP-19C0],EAX 00AB2940 8B85 18E7FFFF MOV EAX,DWORD PTR SS:[EBP-18E8] 00AB2946 0385 38E6FFFF ADD EAX,DWORD PTR SS:[EBP-19C8] 00AB294C 8B8D 5CE6FFFF MOV ECX,DWORD PTR SS:[EBP-19A4] 00AB2952 8901 MOV DWORD PTR DS:[ECX],EAX 00AB2954 8B85 5CE6FFFF MOV EAX,DWORD PTR SS:[EBP-19A4] 00AB295A 83C0 04 ADD EAX,4 00AB295D 8985 5CE6FFFF MOV DWORD PTR SS:[EBP-19A4],EAX 00AB2963 8B85 5CE6FFFF MOV EAX,DWORD PTR SS:[EBP-19A4] 00AB2969 8B8D 40E6FFFF MOV ECX,DWORD PTR SS:[EBP-19C0] 00AB296F 8908 MOV DWORD PTR DS:[EAX],ECX 00AB2971 8B85 5CE6FFFF MOV EAX,DWORD PTR SS:[EBP-19A4] 00AB2977 83C0 04 ADD EAX,4 00AB297A 8985 5CE6FFFF MOV DWORD PTR SS:[EBP-19A4],EAX 00AB2980 8B85 38E6FFFF MOV EAX,DWORD PTR SS:[EBP-19C8] 00AB2986 8B8D 18E7FFFF MOV ECX,DWORD PTR SS:[EBP-18E8] 00AB298C 8D4401 04 LEA EAX,DWORD PTR DS:[ECX+EAX+4] 00AB2990 8B8D 3CE6FFFF MOV ECX,DWORD PTR SS:[EBP-19C4] 00AB2996 8B15 3092AC00 MOV EDX,DWORD PTR DS:[AC9230] 00AB299C 8D4C0A 04 LEA ECX,DWORD PTR DS:[EDX+ECX+4] 00AB29A0 2BC1 SUB EAX,ECX 00AB29A2 8985 40E6FFFF MOV DWORD PTR SS:[EBP-19C0],EAX 00AB29A8 A1 3092AC00 MOV EAX,DWORD PTR DS:[AC9230] 00AB29AD 0385 3CE6FFFF ADD EAX,DWORD PTR SS:[EBP-19C4] 00AB29B3 8B8D 5CE6FFFF MOV ECX,DWORD PTR SS:[EBP-19A4] 00AB29B9 8901 MOV DWORD PTR DS:[ECX],EAX 00AB29BB 8B85 5CE6FFFF MOV EAX,DWORD PTR SS:[EBP-19A4] 00AB29C1 83C0 04 ADD EAX,4 00AB29C4 8985 5CE6FFFF MOV DWORD PTR SS:[EBP-19A4],EAX 00AB29CA 8B85 5CE6FFFF MOV EAX,DWORD PTR SS:[EBP-19A4] 00AB29D0 8B8D 40E6FFFF MOV ECX,DWORD PTR SS:[EBP-19C0] 00AB29D6 8908 MOV DWORD PTR DS:[EAX],ECX 00AB29D8 8B85 5CE6FFFF MOV EAX,DWORD PTR SS:[EBP-19A4] 00AB29DE 83C0 04 ADD EAX,4 00AB29E1 8985 5CE6FFFF MOV DWORD PTR SS:[EBP-19A4],EAX 00AB29E7 ^ E9 C8FEFFFF JMP 00AB28B4 Ngắn gọn: dòng màu xanh là chỗ ghi địa chỉ đặt spliced code, cái bảng code splicing cũng được ghi trong vòng lặp này dựa trên địa chỉ đặt spliced code. Nói chung là các bác đọc tut #4 để biết rõ hơn về lý do mà nó làm zậy, muộn goi`, kết thúc sớm còn ngủ để mai đi học, vì vậy em chỉ nêu cách làm thui. Bây giờ thì các bác đặt HBPE vô dòng hightlight xanh, xóa HBPWD đi, close all Olly, load target vô Olly mới, separate, attach child, patch changed bytes, Shift + F9, chúng ta dừng lại tại : Ta có : DS:[00AC9230]=01300000 EAX=00BAB014 Như vậy [00AC9230] chứa địa chỉ đặt spliced code là 01300000, chúng ta redirect nó về vùng .text1 (bắt đầu tại 411000). Nhấp phải vô DS:[00AC9230]=01300000, => follow address in dump, Ctrl + E, edit thành 00AC9230 00420000 UnPackMe.00420000 Xóa HBPE đi, đặt 1 HBPE khác tại dòng lệnh (dưới lệnh JMP) : 00AB29EC 8B85 5CE6FFFF MOV EAX,DWORD PTR SS:[EBP-19A4] F9, stop there, vô dump windows, Ctrl + G, 003F7C98, go: (hình này và bảng ở dưới em redirect về địa chỉ 411000, các bác đừng như em nha, hãy redirect về 0042000, do em ko có thời gian sửa lại nên đành để nguyên ) Cuộn lên thấy rằng bảng này bắt đầu tại : 003F7C30 003F7C30 004041EF UnPackMe.004041EF 003F7C34 0000CE0D 003F7C38 0041101D UnPackMe.0041101D 003F7C3C FFFF31D2 Kết thúc tại : 3F856C 003F8560 00405854 UnPackMe.00405854 003F8564 0000C8FA 003F8568 00412172 UnPackMe.00412172 003F856C FFFF36E2 Bây giờ “bôi trắng” (select) tất cả bảng đó, nhấp phải => binary => binary copy : . tại : 00 3F7C 30 00 3F7C 30 004 041EF UnPackMe .00 404 1EF 00 3F7C34 00 00CE0D 00 3F7C38 00 411 01 D UnPackMe .00 411 01 D 00 3F7C3C FFFF31D2 Kết thúc tại : 3F856C 00 3F85 60 004 05854 UnPackMe .00 405 854 00 3F8564. DS: [00 AC92 30] = 01 3 00 000 EAX =00 BAB 01 4 Như vậy [00 AC92 30] chứa địa chỉ đặt spliced code là 01 3 00 000 , chúng ta redirect nó về vùng .text1 (bắt đầu tại 411 00 0). Nhấp phải vô DS: [00 AC92 30] = 01 3 00 000 ,. SS:[EBP -19 C4] 00 AB2996 8B15 309 2AC 00 MOV EDX,DWORD PTR DS:[AC92 30] 00 AB299C 8D4C0A 04 LEA ECX,DWORD PTR DS:[EDX+ECX+4] 00 AB29A0 2BC1 SUB EAX,ECX 00 AB29A2 8985 40E6FFFF MOV DWORD PTR SS:[EBP -19 C0],EAX

Ngày đăng: 03/07/2014, 17:21

Tài liệu cùng người dùng

Tài liệu liên quan