Archive for March, 2014


Đầu tiên phải xin lỗi tác giả của Sublime Text, nếu anh em nào có ý định dùng nên mua bản quyền để ủng hộ tác giả phát triển. Tải bản Sublime.Text3.Build.3047 của yoza[UpK] về thì file crack bị pack bởi VMProtect, ESET trên máy nó cho vào Quarantine luôn. Trên UpK mình nể lão yoza này, release như điên, không hiểu các release của lão này có găm hàng không 🙂

Download bản portable version, sau khi extract xong chạy sublime_text.exe. Chọn File > New File (Ctrl + N) để tạo một file mới, nhập đại một số kí tự vào, sau đó nhấn Ctrl + S để lưu file. Sau khoảng vài lần nhập và nhấn Ctrl+S sẽ nhận được thông báo sau:

sublime err

Ghi nhớ thông tin trên, thoát chương trình và load sublime_text.exe vào OllyDBG. Đợi OllyDBG load xong sẽ dừng lại tại đây:

3-6-2014 12-21-08 AM

Tại OllyDBG, nhấn chuột phải và chọn Search for > All referenced text strings. Tại màn hình Text strings referenced, cuộn chuột lên trên cùng, nhấn chuột phải chọn search for text. Nhập nội dung tìm kiếm như sau:

3-6-2014 12-27-28 AM

Nhấn OK sẽ tìm được tại:

3-6-2014 12-30-03 AM

Nhấp đúp chuột tại 004C3FE2 sẽ tới đoạn code sau:

3-6-2014 12-32-25 AM

Tại đây nhấn “Ctrl+-” để trở về đầu của hàm/thủ tục tại địa chỉ 004C3F71  /$  55            push    ebp

Quan sát bên dưới sẽ thấy có đoạn so sánh như sau:

3-6-2014 12-43-07 AM

Dừng lại phân tích một chút. Với thông tin trên có thể tạm suy luận tại [0x788D90] sẽ lưu thông tin về việc chương trình đã được đăng kí hoặc chưa. Nếu tại đó nó có giá trị khác 0x0 (thường là 1) thì tức là chương trình đã được đăng kí và sẽ bỏ qua đoạn code show ra cái pop up như đã gặp ở trên. Vậy phải đi tìm đoạn code nào đã làm thay đổi giá trị tại [0x788D90]

Trong OllyDBG, nhấn chuột phải tại đoạn code 004C3F76  |.  803D 908D7800>cmp     byte ptr [0x788D90], 0x0, chọn Find references to > Address constant. Kết quả có được như sau:

3-6-2014 12-53-58 AM

Tại đỉa chỉ đầu tiên 0049CF14 có được thông tin mov byte ptr [0x788D90], al. Nhấp đúp chuột tại địa chỉ đó sẽ tới đây:

3-6-2014 12-59-17 AM

Phân tích đoạn code trên sẽ nôm na như sau:

0049CF06   .  E8 A2660200   call    004C35AD ;  <== Check serials. Set eax=1 if bad; 0 if good
0049CF0B   .  83C4 14       add     esp, 0x14
0049CF0E   .  F7D8          neg     eax      ;  <== If bad, set eax=-1; else eax=0
0049CF10   .  1AC0          sbb     al, al   ;  <== If bad still set eax = -1; else eax=0
0049CF12   .  FEC0          inc     al       ;  <== If bad al=0; else al=1
0049CF14   .  A2 908D7800   mov     byte ptr [0x788D90], al   ;  <== [0x788D90] = al
0049CF19   .  75 4E         jnz     short 0049CF69            ;  <== If (al!=0) then Registered

Như vậy, để Registered tiến hành patch như sau:

3-6-2014 10-15-21 AM

Patch xong save lại thành sublime_text_Reg.exe. Chạy thử file sublime_text_Reg.exe để kiểm tra kết quả. Chọn Help > About:

3-6-2014 10-21-17 AM

Regards,

m4n0w4r

PS: Với bản cài đặt x86 của Sublime Text 2 v2.0.2, patch tại đoạn 004CAD59      8AC3          mov     al, bl thành 004CAD59      8AC3          mov     al, 0x1


Hôm nay, lục lại đống CD cũ, tìm thấy bộ sưu tập các bài viết trên CodeBreakers-Journal và CodeBreakers Magazine từ những năm 2003. Share lại lên đây coi như là kỉ niệm và để anh em download về đọc cho vui 🙂

CBJ_1_1_2004_Adding Imports by Hand.rar
CBJ_1_1_2004_Dracon_Adding_functions_to_any_program_using_a_DLL.pdf
CBJ_1_1_2004_Geddon_XP_SVCHOST_Reversed.pdf
CBJ_1_1_2004_Opic_Introductory_Primer_To_Polymorphism.pdf
CBJ_1_1_2004_Reverse_Engineering_the_Service_Control_Manager.pdf
CBJ_1_1_2006_Abril_VX_Reversing_II.pdf
CBJ_1_1_2007_Desnoyers_Tracing_for_Hardware.pdf
CBJ_1_1_2007_Mokbel_RCE_Profiling_Counterbalancing_the_Algo.this.Key.zip
CBJ_1_2_2004-Minesweeper Reversing.pdf
CBJ_1_2_2004_Biv_Replication_from_data_files.pdf
CBJ_1_2_2004_HolyFather_Hooking_Windows_API.pdf
CBJ_1_2_2004_HolyFather_UnseenNT.pdf
CBJ_1_2_2006_Kruse_Processless_Threads.pdf
CBJ_1_2_Abril_AsProtected_Notepad.pdf
CBJ_1_2_Abril_Unpacking_by_Code_Injection.pdf
CBJ_2_1_2005_Abril_VX_Reversing_III.pdf
CBJ_2_1_2005_Brulez_Scan33.zip
CBJ_2_1_2005_Nigurrath_Oraculumn.zip
CBJ_2_1_2005_Salihun_Embedded.pdf
CBJ_2_1_2005_Wang_Crypto.pdf
CBM_1_1_2006_Coding Smart and Dynamic Code.pdf
CBM_1_2_2006_Beginners Guide to Basic Linux Anti Anti Debugging Techniques.pdf
CBM_1_2_2006_Everything is Byte.pdf
CBM_1_2_2006_Examining Viruses.pdf
CBM_1_2_2006_Guide on how to play with processes memory.rar
CBM_1_2_2006_How to Write Your Own Packer.pdf
CBM_1_2_2006_Processless Applications.pdf
CBM_1_2_2006_Reverse Engineering Backdoored Binaries.pdf
CBM_1_2_2006_Reversing a Simple Virtual Machine.pdf
CBM_1_2_2006_Self Modifying Code.pdf
CBM_1_2_2006_Sharepad.pdf
CBM_3_1_2006_Webbit_Keygen_Injection.zip
Codebreakers-issue1-2003.zip
Codebreakers-issue2-2003.zip

Download here:
https://mega.nz/#!W41EHBoL!xxs8KvIVqGhm-V1m7f3aHGXw8atkag9fmMxpVTNzDgY

Regards,
m4n0w4r