/*/*/*/ - SERIAL tương ứng : User : kienbigmummy@yahoo.com Serial : 5B7187050FBB5BE4 or User : REA-cRaCkErTeAm@yahoo.com Serial : 5D1CA69EFCD771DA PS : Trang này còn thêm một số soft khác , nếu bạn nào rảnh tay thì kill nốt cho nó đủ bộ , còn mình thì đang vướng mắc với một soft của trang này đó là CoolMenu ặc ặc , mọi thông tin đều nằm trong file .dll , còn file exe chạy để gọi hàm kiểm tra nằm trong file .dll đó. Nếu có thể các bác vào Box private groups để xem chi tiết IV – End of Tut : - Finished : September 22, 2004 - Thank to my family, Computer_Angel, Moonbaby, Zombie, RongChauA, Littleboy ,hacnho all REA‘s members, all my friend, and YOU. :tongue: REVERSE ENGINEERING ASSOCIATION http://www.reaonline.net Sothink CoolMenu 3.0 Reverse Engineering Association SoftWare Homepage :http://www.sothink.com Production :Source Tec SoftWare :Sothink CoolMenu 3.0 Copyright by :Copyright (C) 2001 SourceTec Sofware Co.Ltd Type :Email/Serial Packed :N / A Language :Microsoft Visual C++ 6.0 Crack Tool :OllyDbg 1.10, PEiD 0.92 Unpack :N / A Request :Correct Serial Comment : Sothink CoolMenu 3.0 Quote: Sothink CoolMenu is a flexible menu tool to create pop-up Java menu. Using CoolMenu, users can create unlimited menu items at their pleasure without knowing HTML or Java codes. It provides two ways to create a new effect so that users can select a well-designed template to begin the configuration as before or exert their imagination to create a new one from blank. The newly added preview window is convenient for users to observe each tiny change of the menu during the work. A tabbed interface is available for users to set every conceivable parameter for the menu. It also enables users to insert image and sound to their menus for the most ideal effect. In addition, the configured cool menu can be added into pages as easily as mouse clicking. It supports working with FrontPage as well as working with Sothink HTML Editor (previous name is CutePage) perfectly. I - Information : - **** Dùng PEiD 0.92 detect , chúng ta biết được chương trình này không bị PACK , và nó được Code bằng Microsoft Visual C++ 6.0 . - **** Khi chạy chương trình chúng ta sẽ nhận được cái Nag screen thông báo cho chúng ta biết rằng nếu chúng ta không bỏ tiền ra để đăng kí hợp pháp thì sẽ chỉ được sử dụng nó trong vòng 30 ngày là hết hạn kí hợp đồng hehe. Vậy thì chúng ta phải crack thôi.(Giống hệt các Soft MenuWizard, CoolTextWizard của hãng này). - ***** Ngay tại cái Nag screen này , chúng ta thấy có một button là Register , à chắc là chỗ này bắt chúng nhập thông tin đăng kí đây. Bấm vào đấy, chúng ta sẽ chuyển sang một screen mới. Cụ thể là bắt chúng ta nhập E-mail và Register Code . Nếu bác nào đăng kí hợp pháp rồi thì cứ việc nhập vô, Còn tui trong tay chẳng có gì ngoài OllyDbg hehe. Thôi thì , cứ nhập đai một FU và FS thử xem (E-mail : kienbigmummy@yahoo.com ; Register Code : 11111982 ) , rồi nhấn Register. Bạn sẽ không phải chờ thêm một tíc tắc nào nữa, cái Nag Sorry, That is not a valid register code đập ngay vào mặt. Ok , chúng ta Load chương trình này trong Olly , và tìm chuỗi này .Ặc ặc , nhưng chúng ta không thể tìm thấy trong Ollydbg cũng như trong Windasm . Vậy chúng ta phải làm sao đây , ở đây nếu các bạn tìm hiểu kĩ sẽ thấy cái chuỗi trên sẽ nằm trong một file dll (PageletCoolMenu.dll). Khi Load file này lên trong Olly1.10 bạn sẽ tìm thấy nó ở địa chỉ sau : Quote: 1001ABFD |. 68 84B30510 PUSH PageletC.1005B384 ; |Arg1 = 1005B384 ASCII "Sorry, that is not a valid register code." - **** Oạch thế này thì chúng ta phải bó tay hay sao ( vì chúng ta chưa crack *.dll bao giờ) . Cứ bình tĩnh mình sẽ chỉ cho các bạn cách mà bác Moonbaby đã chỉ cho mình nhé.Chúng ta sẽ áp dụng phương pháp STACK để kill chương trình này. Ok , Let’s begin II - Cracking : - **** Load và chạy chương trình này trong OllyDbg , nhấn F9 để Run chương trình . Chúng ta nhập Fake Email và Fake Register Code . Sau đó nhấn Register , chương trình sẽ bắn Nag : “Sorry, That is not a valid register code” . - **** Ok , giữ nguyên chương trình , chúng ta quay trở lại Olldbg nhấn F12 để Pause chương trình lại , sau đó bạn nhấn tiếp ALT + K để mở cửa sổ “Call Stack of Main Thread”. Tại cửa sổ này chúng ta sẽ nhìn thấy những thông tin như sau : Code: Call stack of main thread Address Stack Procedure / arguments Called from Frame 0012DC14 77D43FBE Includes 7FFE0304 USER32.77D43FBC 0012DC48 0012DC18 77D487A7 USER32.WaitMessage USER32.77D487A2 0012DC48 0012DC4C 77D4F58C USER32.77D48607 USER32.77D4F587 0012DC48 0012DC74 77D6AAAE USER32.77D4F4D8 USER32.77D6AAA9 0012DC70 0012DF2C 77D6AC40 ? USER32.SoftModalMessageBox USER32.77D6AC3B 0012DEB4 0012E074 77D6ADCC ? USER32.77D6AB06 USER32.77D6ADC7 0012DFFC 0012E0C8 77D6AE8A USER32.MessageBoxTimeoutW USER32.77D6AE85 0012E0C4 0012E0FC 77D6AE17 ? USER32.MessageBoxTimeoutA USER32.77D6AE12 0012E0F8 0012E11C 77D6ADFB ? USER32.MessageBoxExA USER32.77D6ADF6 0012E118 0012E120 00180230 hOwner = 00180230 ('Register Sothink Cool 0012E124 1005B384 Text = "Sorry, that is not a valid regist 0012E128 00A73D10 Title = "Sothink CoolMenu" 0012E12C 00000030 Style = MB_OK|MB_ICONEXCLAMATION|MB_APPLM 0012E130 00000000 LanguageID = 0 (LANG_NEUTRAL) 0012E134 1003A785 ? USER32.MessageBoxA PAGELE~1.1003A77F 0012E138 00180230 hOwner = 00180230 ('Register Sothink Cool 0012E13C 1005B384 Text = "Sorry, that is not a valid regist 0012E140 00A73D10 Title = "Sothink CoolMenu" 0012E144 00000030 Style = MB_OK|MB_ICONEXCLAMATION|MB_APPLM - **** Ở đây chúng ta chú ý đến dòng sau : Quote: Call stack of main thread Address Stack Procedure / arguments Called from 0012E134 1003A785 ? USER32.MessageBoxA PAGELE~1.1003A77F Note : Hì hì chỗ này chính là chỗ mà chương trình gọi tới cái file .dll để bắn ra Nag Screen khi các bạn nhập sai đấy keke. - **** Ok , tại dòng trên chúng ta Double Click tại cột Called from , chúng ta sẽ quay trở lại chương trình chính , chúng ta sẽ ở đây : Quote: 1003A77F FF15 F0830410 CALL DWORD PTR DS:[<&USER32.MessageBoxA>>; USER32.MessageBoxA <=== We’re here 1003A785 85F6 TEST ESI,ESI <== Set break point here 1003A787 8BF8 MOV EDI,EAX 1003A789 74 05 JE SHORT PAGELE~1.1003A790 1003A78B 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8] 1003A78E 8906 MOV DWORD PTR DS:[ESI],EAX 1003A790 837D FC 00 CMP DWORD PTR SS:[EBP-4],0 1003A794 74 0B JE SHORT PAGELE~1.1003A7A1 - **** Sau khi đặt Break Point , nhấn F8 để chương trình hiện Nag :” Sorry, That is not a valid register code” . Nhấn Ok chúng ta sẽ dừng lại tại điểm mà chúng ta đã đặt BP. Xóa điểm đặt BP này đi , chúng ta sẽ Trace qua một số lần (ở chương trình này là 2 lần ) RETN chúng ta sẽ đến đây : Code: 1001AB37 E8 B49BFFFF CALL PAGELE~1.100146F0 <== Encrypt 1001AB3C 83C4 0C ADD ESP,0C 1001AB3F 50 PUSH EAX 1001AB40 8D4C24 0C LEA ECX,DWORD PTR SS:[ESP+C] 1001AB44 C64424 18 01 MOV BYTE PTR SS:[ESP+18],1 1001AB49 E8 527F0100 CALL PAGELE~1.10032AA0 1001AB4E 8D4C24 1C LEA ECX,DWORD PTR SS:[ESP+1C] 1001AB52 C64424 14 00 MOV BYTE PTR SS:[ESP+14],0 1001AB57 E8 0B7E0100 CALL PAGELE~1.10032967 1001AB5C 8B6C24 20 MOV EBP,DWORD PTR SS:[ESP+20] 1001AB60 8B5424 08 MOV EDX,DWORD PTR SS:[ESP+8] 1001AB64 52 PUSH EDX 1001AB65 8B45 00 MOV EAX,DWORD PTR SS:[EBP] 1001AB68 50 PUSH EAX 1001AB69 E8 B1AA0000 CALL PAGELE~1.1002561F 1001AB6E 83C4 08 ADD ESP,8 1001AB71 85C0 TEST EAX,EAX 1001AB73 0F85 80000000 JNZ PAGELE~1.1001ABF9 1001AB79 56 PUSH ESI 1001AB7A E8 19290200 CALL PAGELE~1.1003D498 1001AB7F 8B70 04 MOV ESI,DWORD PTR DS:[EAX+4] 1001AB82 68 60B30510 PUSH PAGELE~1.1005B360 ; ASCII "Yes" 1001AB87 68 70B30510 PUSH PAGELE~1.1005B370 ; ASCII "Registered" 1001AB8C 68 64B30510 PUSH PAGELE~1.1005B364 ; ASCII "Register" 1001AB91 8BCE MOV ECX,ESI 1001AB93 E8 67FA0100 CALL PAGELE~1.1003A5FF 1001AB98 8B07 MOV EAX,DWORD PTR DS:[EDI] 1001AB9A 8BCE MOV ECX,ESI 1001AB9C 50 PUSH EAX 1001AB9D 68 50B30510 PUSH PAGELE~1.1005B350 ; ASCII "Email Address" 1001ABA2 68 64B30510 PUSH PAGELE~1.1005B364 ; ASCII "Register" 1001ABA7 E8 53FA0100 CALL PAGELE~1.1003A5FF 1001ABAC 8B45 00 MOV EAX,DWORD PTR SS:[EBP] 1001ABAF 8BCE MOV ECX,ESI 1001ABB1 50 PUSH EAX 1001ABB2 68 40B30510 PUSH PAGELE~1.1005B340 ; ASCII "Register Code" 1001ABB7 68 64B30510 PUSH PAGELE~1.1005B364 ; ASCII "Register" 1001ABBC E8 3EFA0100 CALL PAGELE~1.1003A5FF 1001ABC1 6A 00 PUSH 0 1001ABC3 6A 00 PUSH 0 1001ABC5 68 B0B30510 PUSH PAGELE~1.1005B3B0 ; ASCII " Thank you ! Please restart" 1001ABCA E8 E5FB0100 CALL PAGELE~1.1003A7B4 1001ABCF 8D4C24 0C LEA ECX,DWORD PTR SS:[ESP+C] . 10 01AB69 E8 B1AA 000 0 CALL PAGELE ~1. 100 2561F 10 01AB6E 83C4 08 ADD ESP,8 10 01AB 71 85C0 TEST EAX,EAX 10 01AB73 0F85 800 000 00 JNZ PAGELE ~1. 100 1ABF9 10 01AB79 56 PUSH ESI 10 01AB7A E8 19 2 902 00. Code" 10 01ABB7 68 64B 30 5 10 PUSH PAGELE ~1. 100 5B364 ; ASCII "Register" 10 01ABBC E8 3EFA 01 0 0 CALL PAGELE ~1. 100 3A5FF 10 01ABC1 6A 00 PUSH 0 10 01ABC3 6A 00 PUSH 0 10 01ABC5 68 B0B 30 5 10 PUSH. SS:[ESP +18 ] ,1 10 01AB49 E8 527F 01 0 0 CALL PAGELE ~1. 100 32AA0 10 01AB4E 8D4C24 1C LEA ECX,DWORD PTR SS:[ESP+1C] 10 01AB52 C64424 14 00 MOV BYTE PTR SS:[ESP +14 ] ,0 10 01AB57 E8 0B7E 01 0 0 CALL PAGELE ~1. 100 32967