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

Tài liệu Cách crack Total Video Converter 2.41 ppt

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 (189.44 KB, 6 trang )

Total Video Converter 2.41
Mục tiêu Crack: tvc.exe
Loại khoá: Registration code.
Công cụ: W32Dasm 8.93, Hiew 7.10
Chạy file tvc.exe, nó hiện bảng bắt điền Registration code, ta gõ đại vô 123456789 rồi bấm
OK nó hiện lên bảng báo “Wrong!”, hãy nhớ lấy chuỗi này, thoát khỏi chương trình, bây
giờ ta bắt đầu crack:
Mở file tvc.exe bằng W32Dasm, click chọn menu Refs String Data References, một
cửa sổ mới hiện lên chứa tất cả chuỗi của tvc.exe , ta hãy tìm chuỗi “Wrong!” click đôi
vào nó, quay về cửa sổ chính ta sẽ thấy như sau:
Hãy ghi lại các địa chỉ 0040EF90, 0040EF9A, 0040EFA1, 0040EFA7, 0040EFAE,
0040EFB5, 0040EFBC đây chính là các địa chỉ đã nhảy đến thông báo “Wrong!” khi ta
điền sai Registrtion code, thoát khỏi W32Dasm, việc ta cần làm tiếp theo là dùng Hiew mở
file tvc.exe đảo ngược các lệnh nhảy tại các địa chỉ đó hoặc đặt NOP để chương trình
không bao giờ nhảy tới thông báo “Wrong!” nữa, ở đây tôi dùng NOP cho chắc ăn, bạn sẽ
đổi lại như sau:
.0040EF90 753C  9090
.0040EF9A 7532  9090
.0040EFA1 752B  9090
.0040EFA7 7525  9090
.0040EFAE 751E  9090
.0040EFB5 7517  9090
.0040EFBC 7510  9090
Khi đã đổi xong tất cả, F9 save lại, F10 thoát Hiew.
Chạy lại tvc.exe nhập code bất kì, nhấn OK và chương trình của chúng ta đã được đăng kí.
Cách nhanh hơn:
Tại .0040EF90 cho lệnh jmp đến .0040EFBC, còn tại .0040EFBC thì cho NOP
Total Video Converter 2.6
Mục tiêu Crack: tvc.exe
Công cụ: SoftICE 4.05, W32Dasm 8.93, Hiew 7.10
Chạy file tvc.exe, nó hiện bảng bắt điền Registration code, ta click nút “I want to Try it


more” để vào chương trình, click thử nút “Convert Now” thì bảng Registration code lại
hiện ra, ta thoát khỏi chương trình, chỉnh thời gian qua 1 năm, chạy lại chương trình thì
bảng Registration code hiện lên nhưng khi click “I want to Try it more” thì lại nhận được
thông báo “This software can only try 15 days. Please registration!”, click OK nó thoát ra
luôn. Bây giờ ta bắt đầu crack
Ctrl-D vào SoftICE và gõ lệnh: bpx ShowWindow (enter), F5 để thoát khỏi SoftICE.
Chạy tvc.exe, SoftICE nhảy lên, gõ lệnh: bc * (enter), ta bấm F12 khoảng 2 lần để bảng
Registration code nhảy lên hoàn toàn, khi đã thấy bảng Registration code, ta click nút “I
want to Try it more” và SoftICE lại nhảy lên, ta thấy dòng đầu trong ta thấy dòng đầu trong
SoftICE như sau:
5F414F50 CALL 5F414FA1
Khoan mừng vội, nhìn xuống ta thấy dòng “MFC42!.text+00013F50” vậy đây không phải
code của tvc.exe nên ta F12 thêm lần nữa và thấy dòng đầu là:
00406D77 CALL 00461476
Đây chính là địa chỉ đã gọi bảng Registration code, ta hãy ghi lại nó, F5 thoát SoftICE và
làm tiếp như sau:
Chạy lại chương trình thì bảng Registration code hiện lên, Ctrl-D vào SoftICE và gõ lệnh:
bpx messageboxa (enter), F5 để thoát khỏi SoftICE, rồi click “I want to Try it more” và
SoftICE lại nhảy lên, bấm F12 một lần thì thông báo “This software can only try 15 days.
Please registration!” nhảy lên, click OK …Boom…ta lại vào SoftICE, bấm F12 hai lần để
vào đúng code của tvc.exe, và thấy dòng đầu là:
00406FF6 CALL 0046169E
Đây chính là địa chỉ đã gọi thông báo hết hạn dùng. Bây giờ ta giữ phím Ctrl và bấm phím
mũi tên lên để xem các đoạn code phía trên của CALL này và thấy vài điều thú vị sau:
00406FD4 CMP EDX, 0F
00406FD7 JNZ 00406FE7
…………
00406FE7 JLE 00406E94
Ta biết rằng giá trị 0F (Hex) = 15 (hệ thập phân). Chương trình giới hạn 15 ngày sử dụng,
vậy là ta đoán được ở chỗ CMP trên, giá trị trong EDX là số ngày ta đã dùng thử sẽ được

so sánh với 0F(15) , nếu không bằng (JNZ) sẽ nhảy tới 00406FE7 (ta chắc chắn nó sẽ nhảy
vì ta đã chỉnh thời gian qua 1 năm nên EDX giờ sẽ có giá trị 16D=365 không bằng 0F=15).
Tại 00406FE7, ta thấy sẽ nhảy nếu bé hơn hoặc bằng (JLE), ta biết được nó sẽ không nhảy
vì 365 > 15, và code sẽ tiếp tục chạy xuống tới 00406FF6 gọi thông báo hết hạn. Qua phân
tích như trên ta biết rằng tại 00406FE7 nếu ta sửa JLE  JMP thì chương trình luôn nghĩ ta
chưa sử dụng chương trình qua 15 ngày nên sẽ không bao giờ hết hạn dùng thử, ta ghi lại
địa chỉ 00406FE7, thoát SoftICE. Làm tiếp như sau:
Chỉnh thời gian về lại 1 năm như ban đầu, chạy lại chương trình , nó hiện bảng bắt điền
Registration code, ta click nút “I want to Try it more” để vào chương trình.
Ctrl-D vào SoftICE và gõ lệnh: bpx showwindow (enter), F5 để thoát khỏi SoftICE,
Click nút “Convert Now”, SoftICE nhảy lên, gõ lệnh: bc * (enter), ta bấm F12 khoảng 41
lần để bảng Registration code nhảy lên hoàn toàn, dịch chuột một chút để bảng Registration
code nhảy lên, ta click nút “I want to Try it more” và SoftICE lại nhảy lên, ta thấy dòng đầu
trong ta thấy dòng đầu trong SoftICE như sau:
5F414F50 CALL 5F414FA1
Khoan mừng vội, nhìn xuống ta thấy dòng “MFC42!.text+00013F50” vậy đây không phải
code của tvc.exe nên ta F12 thêm lần nữa và thấy dòng đầu là:
0040BA66 CALL 00461476
Đây chính là địa chỉ đã gọi bảng Registration code, ta hãy ghi lại nó, F5 thoát SoftICE
Ta thấy khi vào chương trình, thanh tiêu đề có chữ [Unregistered] rất bực mình, nên ta
dùng W32Dasm mở tvc.exe, vào menu Search  Find Text, ở bảng hiện ra ta rõ vào từ:
Unregistered (enter) ta sẽ thấy như hình sau:
Tại 00408929 nó nhảy tới 0040893D là địa chỉ đã cho hiện [Unregistered], ta chỉ cần
không cho nó nhảy thì chữ sẽ hiện là [Registered] (quá Pro phải không), nên ta hãy ghi lại
địa chỉ 00408929. Thoát W32Dasm, dùng Hiew thay đổi lệnh tại các điạ chỉ đã tìm được
trong file tvc.exe như sau:
.00406D77 E8FAA60500  9090909090 (CALL  NOP)
.00406FE7 0F8EA7FEFFFF  E9A8FEFFFF (JLE  JMP)
.0040BA66 E80B5A0500  9090909090 (CALL  NOP)
.00408929 7412  9090 (JE  NOP)

Khi đã sửa xong hết, save lại và thoát Hiew. Bây giờ chạy lại Total Video Converter ta thấy
đây không khác gì là bản đã đăng ký hoàn toàn.
Cách 2: Crack bằng OllyDbg
Load file “tvc.exe” trong OllyDbg.
Gõ lệnh sau để đặt breakpoint: bp ShowWindow (enter)
F9 chạy chương trình bạn sẽ ngừng tại địa chỉ như hình sau:
Ta bấm F2 để bỏ breakpoint tại 77D4D4DE.
Giờ ta bấm Alt-F9 (Execute till user code) 1 lần thì thấy bảng Registration code nhảy lên, ta
click nút “I want to Try it more” và OllyDbg lại nhảy lên như hình sau:
Đi lên chút xíu ta sẽ thấy:
Ta thấy giống như khi làm bằng SoftICE, chính địa chỉ 00406D77 đã gọi bảng Registration
code nhưng ta sẽ không NOP nó mà sẽ chú ý các dòng trên nữa.
Ta thấy nếu JNZ tại 00406D13 được thực thi thì sẽ qua hết các code bên dưới  khi đăng
kí rồi nó mới nhảy và điều kiện nhảy phụ thuộc vào CMP ở trên:
• nếu DS:[ESI+CE] = 0  Chưa đăng kí, JNZ không thực thi.
• nếu DS:[ESI+CE] = 1  Đã đăng kí, JNZ thực thi.
Ta chưa biết DS:[ESI+CE] là địa chỉ gì nên ta sẽ đặt breakpoint (F2) tại 00406D13. Ta
Restart OllyDbg, F9 chạy chương trình và OllyDbg sẽ ngừng tại 00406D13, nhìn xuống ta
sẽ thấy DS:[004C8616] =0000 như hình dưới:

Vậy là DS:[ESI+CE] là DS:[004C8616], ta sẽ sửa lại dòng lệnh tại 00406D13 như hình
dưới đây với mục đích ghi 01 vào 004C8616.
Save lại, và chạy file đã sửa đổi. Nó đã được CRACK!!!!
Total Video Converter 3.02
Mục tiêu Crack: tvc.exe
Công cụ: OllyDbg 1.10
Load file tvc.exe trong Ollydbg, Atl-F1 và gõ: bp ShowWindow (enter) bạn sẽ thấy như
hình:
Bây giờ F9 chạy chương trình, bạn sẽ ngừng trong Ollydbg tại module USER32.
Bấm Alt-B, xoá hết breakpoint có trong cửa sổ. Bây giờ, bấm Alt-F9 thì bản kêu điền số

đăng kí nhảy lên, ta click nút “I want to Try it more” thì ta lại dừng trong Ollydbg tại vệt
sáng như hình sau:
Quan sát bên trên ta thấy tại 00407D03 chuyển giá trị tại SS:[EBP+CC] vào EAX, đến
00407D0C kiểm tra nếu EAX=FFFF0000 thì JNZ tại 00407D11 được thực thi và nhảy đến
00407F0D là qua khỏi 00407D66 (địa chỉ này đã gọi bảng đăng kí). Ở đây ta có thể suy ra
nếu SS:[EBP+CC] có giá trị FFFF0000 có nghĩa là chương trình đã được đăng kí vì sẽ
không kêu bảng đăng kí nữa. Vậy ta phải tìm nơi nào đã ghi giá trị vào SS:[EBP+CC] và
sửa cho nó phải ghi FFFF0000 vào SS:[EBP+CC], nhưng ta chưa biết SS:[EBP+CC] là địa
chỉ nào nên ta click chọn dòng 00407D03 rồi bấm F2 để đặt breakpoint tại dòng này, bấm
Ctrl-F2 để Restart chương trình, bấm F9 chạy chương trình thì ta sẽ dừng ngay tại
00407D03 và thấy như sau:
Vậy là SS:[EBP+CC] = SS:[004D0FE4], ta right click SS:[004D0FE4] =00000004 và chọn
“Follow address in Dump”. Tại Dump window, chọn 4 byte đầu rồi right click chọn như
hình sau:

×