Hacker - Crack FreeWare for newbie [Patch]

Crack FreeWare for newbie [Patch]




Introduce :
-----------------
- Đây là ph/m FREE giúp nén nhac từ đĩa CD thành Wav, Ogg Vorbis or MP3.
- Chuyển đổi giữa các định dạng WAV/MP3/OGG.
- Freedb and ID3 Tagging and volume control.

==================================================
1. Software : FreeRip v2.8 (download: http://www.mgshareware.com/)
2. Target : FreeRip2.exe (size: 416kb).
3. Pack : UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo
Crypto : BASE64 table, CRC32b.
4. Protect : Name/Serial.
5. Method : Patch
==================================================



I. Crack Info:
Soft này thực sự FREE đến 99% vì nó không giới hạn ngày s/d hay bất kỳ chức năng nào, but điều làm bạn khó chịu nhứt là cái SplashScreen xuất hiện rất lâu mỗi khi run soft, nó chỉ mất đi khi bạn điền RN/RS. Vì vậy mục đích của ta là Remove SplashScreen(một biến thể của NAG), còn bác nào thấy chưa đã thì hãy Find RS(RS ko x/h trong STACK).

Load soft = PEiD biết được nó bị pack -> s/d plugin "Unpacker for UPX" của PEiD để unpack cho nhanh -> biết được language "Microsoft Visual C++ 6.0" .
Quote:

Run soft 1st time -> s/h SplashScreen có chữ "FREERIP" to tướng, tiếp đó sẽ thấy của sổ "Option" ở đây các bác chú ý có 1 dòng chữ bị mờ đi "Show splash screen(register user only)" => ý nghĩa của nó là nếu đăng ký bản quyền bạn có thể Remove được SplashScreen khó chịu = cách tích vào hộp kiểm đang bị disable.
Ta sẽ tìm chuỗi có chữ "...splash screen..." từ đó lần ra chỗ cần patch
II. Kill Soft :
Vì ta sẽ Patch soft nên em thấy ko công cụ nào hiệu quả hơn W32kDasm v10.
S/d chức năng "String Data Reference" ta tìm được chuỗi "Show splash screen (registered " đây là dòng chữ bị mờ -> Double Click vào nó ta sẽ đến đây:
Code:
* Possible Reference to Dialog: DialogID_0096, CONTROL_ID:0405, ""
|
:00425BAC 6805040000 push 00000405
:00425BB1 52 push edx
:00425BB2 FFD3 call ebx
:00425BB4 8BCE mov ecx, esi
:00425BB6 E865000000 call 00425C20
:00425BBB E859EC0400 call 00474819
:00425BC0 8B4804 mov ecx, dword ptr [eax+04]
:00425BC3 E8283FFEFF call 00409AF0 <-- gọi hàm Check Register
:00425BC8 85C0 test eax, eax <-- so sánh eax
:00425BCA 8DBE04010000 lea edi, dword ptr [esi+00000104]
:00425BD0 7519 jne 00425BEB <--nhảy nếu eax # eax patch 75 --> 74
:00425BD2 6A00 push 00000000
:00425BD4 8BCF mov ecx, edi
:00425BD6 E8EFC60300 call 004622CA
* Possible StringData Ref from Data Obj ->"Show splash screen (registered "
->"users only)" <-- vệt sáng tại đây
|
:00425BDB 68E0DE4900 push 0049DEE0
:00425BE0 8BCF mov ecx, edi
:00425BE2 E877C50300 call 0046215E
:00425BE7 6A05 push 00000005
:00425BE9 EB17 jmp 00425C02
Theo cách truyền thống ta lần lên vài dòng và thấy đoạn khả nghi sau :
Code:
:00425BC3 E8283FFEFF call 00409AF0 <-- gọi hàm Check Register
:00425BC8 85C0 test eax, eax <-- so sánh eax
:00425BCA 8DBE04010000 lea edi, dword ptr [esi+00000104]
:00425BD0 7519 jne 00425BEB <--nhảy nếu eax # eax patch 75 --> 74
Hì hì newbie thấy đoạn nào như vầy là patch luôn : 75 to 74, run soft cái coi -> vẫn thấy SplashScreen nhưng đã có một điều thay đổi, lúc này dòng chữ bị mờ đã hiện ra -> ta có thể bỏ chọn trong CheckBox để SplashScreen không hiện lên trong lần khởi động tiếp theo.

Nhưng kết quả là SplashScreen vẫn cứ xuất hiện :mad: , ta chơi gian nhưng soft vẫn hiểu ta chưa đăng ký vậy lần này ta patch NAG thực sự tức là đi tìm ra đoạn code chỉ định SplashScreen được x/h hay là không. Tiếp tục s/d chức năng "String Data Reference" ta tìm được chuỗi "ShowSplashScreen" Double Click vào nó ta sẽ đến đây:
Code:
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040897B(C)
|
:0040898E 55 push ebp
:0040898F E8A7950300 call 00441F3B
:00408994 83C404 add esp, 00000004
:00408997 8BCE mov ecx, esi
:00408999 E87FCA0600 call 0047541D
:0040899E 8DBEC0000000 lea edi, dword ptr [esi+000000C0]
:004089A4 8BCF mov ecx, edi
:004089A6 E8E5480000 call 0040D290
:004089AB 8BCE mov ecx, esi
:004089AD E83E110000 call 00409AF0 <-- gọi hàm Check Register
:004089B2 85C0 test eax, eax <-- so sánh eax
:004089B4 751A jne 004089D0 <--nhảy nếu eax # eax patch 75 --> 74
:004089B6 6A01 push 00000001
:004089B8 51 push ecx
:004089B9 8BCC mov ecx, esp
:004089BB 89642418 mov dword ptr [esp+18], esp
* Possible StringData Ref from Data Obj ->"ShowSplashScreen" <-- vệt sáng tại đây
|
:004089BF 6834C24900 push 0049C234
:004089C4 E879A20500 call 00462C42
:004089C9 8BCF mov ecx, edi
:004089CB E8F0400200 call 0042CAC0

Ta lại lần lên và lại thấy đoạn quen thuộc, chú ý add 004089B4 đó là điểm patch 75 to 74 -> run soft và tèn tén ten NAG đã mất tiêu rồi :rr: ...hura sướng wá bây giờ lại còn bật tắt được nó mới vui chứ.... :rolleyes: :whistling

Note:
1. Còn một số bug nhỏ như trong soft vẫn còn những chữ "Unregister" hay "FreeWare Edition" "But no problem" để giải quyết nó ta lại tìm trong "String Data References" tất cả các chuỗi đó và patch theo y như phía trên 75 to 74 or ngược lại. Sau khi Patch ta sẽ thấy x/h chữ "Register to: " thay thế "Unregister".

2. Em vẫn chưa tìm ra được tử huyệt mà chỉ cần patch tai một điểm là xong(vì soft này cũng lưu thông tin N/S trong registry), có lẽ soft này không có điểm nào như vậy.

III. End Tut:
Các bác không biết chứ em mất 4-5 tiếng mới "thịt" được thằng nì, lý do vẫn là hùng hục patch. Xét cho cùng ta nên tìm hiểu kỹ phương thức hoạt dộng của soft từ đó xác định được mục tiêu chính cần crack mới mong rút ngắn được thời gian và công sức nhất là đối với patch

-------------------------------------------
Dành cho các bác love Finding RS :
Quote:
Set BP:
00428520 E8 FB17FEFF CALL unpacked.00409D20

Trace into :
Encrypt Function:
00409D20 6A FF PUSH -1
................
Thanxxx for Your Coming!
Bye n C ya in tuts later
Vì không thể send cho các bác được ver2.8 của thằng này nên em đã down bản 2.9 về research.

1. Nói chung! nếu patch thì cách làm hoàn toàn giống với ver2.8 . Ta sẽ tìm chuỗi "ShowSplashScreen" rồi từ đó lần ra chỗ cần patch chỉ khác mỗi địa chỉ thôi, cụ thể như sau:
Code:
add1 0042C0F6 patch 75 --> 74 |
| => Remove NAG
add2 0040A724 patch 75 --> 74 |
add3 004023A3 patch 84 --> 85 |
| => Remove chuỗi FREEWARE
add4 0040C2DF patch 75 --> 74 |
2. Find Real Serial cũng vậy, chỉ khác mỗi điểm Set BP:

Search chuỗi Incorrect name or code..., DClick vào sẽ đến :
Code:
004301B1 . 68 ECEA4A00 PUSH crack_2_.004AEAEC ; ASCII "Incorrect name or code. Please check and try again." <-- Bad Boy
Trace lên 4 dòng Set BP at 0043019F :
0043019F . E8 E7C50300 CALL crack_2_.0046C78B
Trace Into 0046C78B.
Em đã thử Trace Into mấy hàm nhưng thấy càng trace càng không tìm được lối ra:

Đầu tiên so sánh FS với 0x20(dec 32) --> các ký tự thuộc 0x61 - 0x122(A to Z) thì phải --> chia FS ra 8 nhóm 4 kt --> lôi tempchar 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ --> s/d BASE64 Table làm gì đó? 0042D8BF.........[EBX*4+49EE88]


In bài này
Copyright © 2012-2015 VNCongnghe
Đặt làm trang chủ Đặt làm trang chủ

Trang chủ | Quảng cáo | Liên hệ | RSS | Sitemap | Lên đầu trang