CRACK MỘT VÀI SOFT CỦA WWW.VERYPDF.COM SoftWare : PDF2Word v1.4 Copyright by : Copyright @ 2001-2003 verypdf.com Inc Packed : UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo Language : Microsoft Visual C++ 6.0 Unpack Tools: UPX Unpack , hoặc dùng plugin của PeiD (có RebuildPE ) Crack Tools : OllyDbg 1.09d, PEiD 0.92 Request : Real Serial . Introduction : PDF2Word v1.4 PDF2Word(pdf to word) software enable export the text, images and other contents from pdf document into word document, so you can reuse your PDF content, pdf to word software will preserving text, layout and bitmap images in the generated word document. PDF2Word(pdf to word) software is a standalone program and does not require Microsoft Word, Adobe Acrobat, or even Acrobat Reader. I/ Information : - Dùng PEid v0.92 để Detect , chúng ta biết chương trình được pack bằng UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo . Ta dùng tool : UPX Unpack để unpack chương trình này , hoặc chúng ta cũng có thể dùng Plugin của PEiD (có ReBuildPE ) để unpack . Sau khi unpack xong , lại dùng PEiD v0.92 để Detect , chúng ta biết chương trình được viết bằng Microsoft Visual C++ 6.0 . :w00t: - Chạy thử chương trình , chúng ta thấy hiện lên một 1 Dialog Box : “Please register pdf2word v1.4 !”và chương trình chỉ cho phép chúng ta chỉ dùng thử nếu ta không đưa money cho họ :(( . Đưa money á ! nghe lạ thế nhỉ . Money còn phải dùng vào nhiều việc lắm , thông cảm nhé Software . Hihi ! :D OK ! Bây giờ chúng ta nhập đại 1 Email & Series vào cái hộp Dialog Box xem nó thông báo thế nào . Ở đây em nhập như sau : Email :hoa_dong_noi_06@yahoo.com & Series : 0361985 . Nhấn OK , một cái nag văng ra , đập ngay vào mặt chúng ta , nó chửi chúng ta : "Series number error, please check it and try again " :sad: . Khi chúng ta exit cái Dialog Box đó nó còn pop-up ra 1 cái nag nhắc nhở ta : "Please register " , biết rồi nói mãi , làm gì mà cứ nhắc hoài thế , tý nữa sẽ có Serial (not money ) ngay thôi mà . Hihi ! :D Ok , chúng ta hãy ghi nhớ lấ y tất cả những thứ đó . - Bây giờ chúng ta hãy load chương trình vào trong OllyDbg , click chuột phải chọn Search for / All referenced text strings để tìm chuỗi thông báo trên . Ặc ặc :(( mất vài giây nhưng chúng ta vẫn không thấy chuỗi thông báo đó đâu cả . Chúng ta đành bó tay chịu chết sao , không đâu các bác cứ bình tĩnh , chúng ta sẽ sử dụng phương pháp stack của anh Moonbaby! :) - Nhấn Ctrl + F2 để load lại chương trình vào trong OllyDbg . Nhấn F9 để Run chương trình . Chúng ta lại nhập các FU và FS như ở trên vào . Xong nhấ n Ok , xuất hiện thông báo : "Series number error, please check it and try again " . Giữ nguyên chương trình , quay trở lại Ollydbg , nhấn F12 , Olly sẽ dừng chương trình lại . Nhấn tiếp Alt + K để hiện cửa sổ Call stack of main thread . Ta thấy ngay thông báo : *** Ở đây chúng ta chú ý đến dòng màu đỏ : Code: 0012E014 0043C64E ? USER32.MessageBoxA df2word.0043C648 ***Double-click vào cột Called from của dòng này , chúng ta đến địa chỉ : Code: 00429BFB 68 E0734600 PUSH unpacked.004673E0 ; ASCII "Series number error, please check it and try again." 00429C00 56 PUSH ESI 00429BCB FF15 24874400 CALL NEAR DWORD PTR DS:[<&USER32.Mess>; USER32.MessageBoxA 00429BD1 68 FCA64600 PUSH unpacked.0046A6FC >>>> Set BreakPoint here 00429BD6 56 PUSH ESI *** Sau khi đặt BP tại đây , Ollydbg sẽ dừng chương trình lại , nhấn F8 để xuất hiện lại thông báo : "Series number error, please check it and try again " Nhấn OK để chấp nhận thông báo này , chương trình sẽ dừng lại tại điểm BP mà chúng ta vừa đặt . Xoá điểm BP này đi . RETN , nhìn lên trên 1 chút chúng ta sẽ thấy đoạn code sau . Đây là tử huyệt : Code: 00429B38 FF15 1C874400 CALL NEAR DWORD PTR DS:[<&USER32.GetD>; USER32.GetDlgItemTextA >>>>> Set BreakPoint Here . 00429B3E 68 FCA64600 PUSH unpacked.0046A6FC II/Cracking : ***OK, sau khi đặt BP tại đó , chúng ta nhấn F9 để Run chương trình , ta sẽ thấy hộp thoại đăng kí xuất hiện lại , sau khi đã nhập FU,FS đầy đủ , nhấn OK . Chúng ta sẽ quay trở lai Olly và chương trình sẽ Ice tại điểm mà chúng ta set BP. Nhìn xuống phía dưới 1 chút , chúng ta sẽ thấy hàm Call . Đây chính là lệnh gọi hàm kiểm tra : Code: 00429B43 E8 78F8FFFF CALL unpacked.004293C0 Ở đây chúng ta cũng thấy lệnh text thanh ghi EAX . Vì vậy chúng ta sẽ Trace Into vào trong hàm Call trên xem nó làm gì với FS của chúng ta : Code: 00429B38 FF15 1C874400 CALL NEAR DWORD PTR DS:[<&USER32.GetD>; USER32.GetDlgItemTextA >>>> We’re here . 00429B3E 68 FCA64600 PUSH unpacked.0046A6FC 00429B43 E8 78F8FFFF CALL unpacked.004293C0 Trace into 004293C0 83EC 30 SUB ESP, 30 004293C3 55 PUSH EBP 004293C4 56 PUSH ESI 004293C5 8B7424 3C MOV ESI, DWORD PTR SS:[ESP+3C] 004293C9 57 PUSH EDI 004293CA 8A06 MOV AL, BYTE PTR DS:[ESI] >>>đưa kí tự đầu tiên của FS vào AL . 004293CC 8A4E 01 MOV CL, BYTE PTR DS:[ESI+1] >>> đưa kí tự thứ 2 của FS vào CL 004293CF 8A56 0E MOV DL, BYTE PTR DS:[ESI+E] >>> đưa kí tự thứ 15 của FS vào DL 004293D2 884424 18 MOV BYTE PTR SS:[ESP+18], AL 004293D6 32C0 XOR AL, AL 004293D8 884C24 30 MOV BYTE PTR SS:[ESP+30], CL 004293DC 8A4E 0F MOV CL, BYTE PTR DS:[ESI+F] >>> đưa kí tự thứ 16 của FS vào CL 004293DF 884424 19 MOV BYTE PTR SS:[ESP+19], AL 004293E3 884424 31 MOV BYTE PTR SS:[ESP+31], AL 004293E7 884424 25 MOV BYTE PTR SS:[ESP+25], AL 004293EB 884424 0D MOV BYTE PTR SS:[ESP+D], AL 004293EF 8A46 02 MOV AL, BYTE PTR DS:[ESI+2] >>> đưa kí tự thứ 3 của FS vào AL 004293F2 3C 24 CMP AL, 24 >>>>so sánh ky tu thu 3 với ký tự $ 004293F4 885424 24 MOV BYTE PTR SS:[ESP+24], DL 004293F8 884C24 0C MOV BYTE PTR SS:[ESP+C], CL 004293FC 75 52 JNZ SHORT unpacked.00429450 >>> Nếu ko bằng thì nhảy đến bắ n Bad boy 004293FE 8B3D 2C864400 MOV EDI, DWORD PTR DS:[<&msvcrt.atoi>; MSVCRT.atoi 00429404 8D5424 0C LEA EDX, DWORD PTR SS:[ESP+C] 00429408 52 PUSH EDX 00429409 FFD7 CALL NEAR EDI >>>>> Trừ ký tự thứ 16 cho 0x30 0042940B 8BE8 MOV EBP, EAX 0042940D 8D4424 1C LEA EAX, DWORD PTR SS:[ESP+1C] 00429411 50 PUSH EAX 00429412 FFD7 CALL NEAR EDI >>>>> Trừ ký tự đầu tiên cho 0x30 00429414 03E8 ADD EBP, EAX >>>> tổng của ký tự thứ 1 và thứ 16 00429416 83C4 08 ADD ESP, 8 00429419 83FD 0A CMP EBP, 0A >>>> so sánh với 0A 0042941C 75 32 JNZ SHORT unpacked.00429450 >>> Nếu ko bằng thì nhảy đến bắn Bad boy 0042941E 8D4C24 24 LEA ECX, DWORD PTR SS:[ESP+24] 00429422 51 PUSH ECX 00429423 FFD7 CALL NEAR EDI >>>> Trừ ký tự thứ 15 cho 0x30 00429425 8D5424 34 LEA EDX, DWORD PTR SS:[ESP+34] 00429429 8BE8 MOV EBP, EAX 0042942B 52 PUSH EDX 0042942C FFD7 CALL NEAR EDI >>>> Trừ ký tự thứ 2 cho 0x30 0042942E 03E8 ADD EBP, EAX >>>> tổng của ký tự thứ 2 và ký tự thứ 15 00429430 83C4 08 ADD ESP, 8 00429433 83FD 0A CMP EBP, 0A >>>> so sánh với 0A 00429436 75 18 JNZ SHORT unpacked.00429450 >>>> Nếu ko bằng thì nhảy đến bắn Bad boy 00429438 807E 03 24 CMP BYTE PTR DS:[ESI+3], 24 >>>> so sánh ký tự thứ 4 với ký tự $ 0042943C 75 12 JNZ SHORT unpacked.00429450 >>> Nếu ko bằng thì nhảy đến bắn Bad boy 0042943E 8A4E 05 MOV CL, BYTE PTR DS:[ESI+5] >>>> đưa ký tự thứ 6 vào CL 00429441 33C0 XOR EAX, EAX 00429443 80F9 23 CMP CL, 23 >>>> so sánh ký tự thứ 6 với ký tự # 00429446 5F POP EDI 00429447 5E POP ESI 00429448 5D POP EBP 00429449 0F94C0 SETE AL 0042944C 83C4 30 ADD ESP, 30 0042944F C3 RETN 00429B48 83C4 04 ADD ESP, 4 00429B4B 85C0 TEST EAX, EAX >>>> if EAX=0 00429B4D 74 18 JE SHORT unpacked.00429B67 >>>> then : bắn Bad boy 00429B4F 6A 02 PUSH 2 00429B51 56 PUSH ESI ***Như vậy theo phân tích ở trên ta thấy Real Serial của chương trình sẽ phải thoả mãn các yêu cầu sau : :wub: 1. Chiều dài tối thiểu phải là 16 ký tự 2. ở các vị trí thứ 3,4,6 trong chuỗi Ser phải là các ký tự mặc định : vị trí thứ 3 là $ vị trí thứ 4 là $ vị trí thứ 6 là # 3.Và các ký tự ở vị trí S[0] , S[1] , S[14] , S[15] phải là các ký tự trong khoảng từ 1> 9 Và chúng phải thoả mãn điều kiện sau : S[0] + S[15] = 0xA S[1] + S[14] = 0xA 4. Các ký tự còn lại là mặc định . *** Từ đó ta có thể dễ dàng suy ra Real Serial của chương trình là : 12$$2#1230345689 *** Tắt Ollydbg , chạy thử chương trình , nhập vào : Email :hoa_dong_noi_06@yahoo.com Series : 12$$2#1230345689 Hoặc : Email :REA-cRaCkErTeAm@yahoo.com Series : 85$$9#0361985552 OK ! Done ! Cái nag đó mất tiêu rồi . Chương trình đã được Registered . :w00t: Enjoy ! :) Chúc thành công ! :wink: SoftWare : PDF2HTML v1.6 . Copyright by : Copyright @ 2001-2003 verypdf.com Inc Packed : N/A . Language : Microsoft Visual C++ 6.0 Crack Tools : OllyDbg 1.09d, PEiD 0.92 Unpack tools : N/A . Request : Real Serial . Introduction : PDF2HTML v1.6 . PDF to HTML converter allows conversions of PDF documents into HTML format, which is more suitable for Internet publishing. The converter produces fully functional HTML documents with texts, pictures, graphics and bookmarks, using the original PDF document formatting and allowing for Internet publishing of your documents, thus exposing their content to search engines and significantly increasing your site audience. PDF to HTML software is a standalone program and does not require Adobe Acrobat, or even Acrobat Reader. I/ Information : - Dùng PEid v0.92 để Detect , chúng ta biết chương trình không b ị Pack , và được viết bằng Microsoft Visual C++ 6.0 . Phù , thế là không phải Unpack . Đỡ quá ! :w00t: :) - Chạy thử chương trình , chúng ta thấy hiện lên một 1 Dialog Box : “Please register pdf2html v1.6 !”và chương trình chỉ cho phép chúng ta chỉ dùng thử nếu ta không đưa money cho họ :sad: . Đưa money á ! nghe lạ thế nhỉ . Money còn phải dùng vào nhiều việc lắm , thông cảm nhé Software . Hihi ! :D OK ! Bây giờ chúng ta nhập đại 1 Email & Series vào cái hộp Dialog Box xem nó thông báo thế nào . Ở đây em nhập như sau : Email :hoa_dong_noi_06@yahoo.com & Series . unpacked.004293C0 Trace into 004293C0 83EC 30 SUB ESP, 30 004293C3 55 PUSH EBP 004293C4 56 PUSH ESI 004293C5 8B7424 3C MOV ESI, DWORD PTR SS:[ESP+3C] 004293C9 57 PUSH EDI 004293CA 8A06 MOV. cho 0x30 0042942E 03E8 ADD EBP, EAX >>>> tổng của ký tự thứ 2 và ký tự thứ 15 00429 430 83C4 08 ADD ESP, 8 00429 433 83FD 0A CMP EBP, 0A >>>> so sánh với 0A 00429 436 75. SS:[ESP+19], AL 004293E3 884424 31 MOV BYTE PTR SS:[ESP +31 ], AL 004293E7 884424 25 MOV BYTE PTR SS:[ESP+25], AL 004293EB 884424 0D MOV BYTE PTR SS:[ESP+D], AL 004293EF 8A46 02 MOV AL, BYTE