1. Trang chủ
  2. » Công Nghệ Thông Tin

Cracking part 11 docx

6 234 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 6
Dung lượng 155,58 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bấm Ctrl+A để analysis đoạn code này, ta thấy OEP của ta là: 004D8F60 .55 PUSH EBP Khà khà ta đang ở OEP rồi, việc ta cần làm là dump nó ra 1 file trên đĩa cứng thui, chọn Plugins -> Oll

Trang 1

Crack vài soft của www.zealot-soft.com

Quote:

Overview

Amor SWF to Video Converter is a powerful utility that supports to convert Macromedia Flash SWF files to AVI or VCD / SVCD / DVD compatible MPEG files including movie clips, action scripts and audio in the Flash movies Also join many Swf files in one large AVI or VCD / SVCD / DVD compatible MPEG file.Allow the human interaction on Flash content during conversion, no skip frames and support 32bits RGBA alpha channel video that can be directed imported by video authoring tool for composition

Soft: Amor SWF to Video Converter

Homepage: http://www.zealot-soft.com/

Protection: ASPack 2.12 -> Alexey Solodovnikov

Language: Borland Delphi 6.0 - 7.0

Tools: Peid 0.94; OllyDbg 1.10 ; ImpREC 1.6

Cracker: backstrix

Giờ phong trào làm nhạc flash phát triển rộng rãi nhiều cái nhìn trông hay hay burn CD tặng bạn bè cũng good lắm Muốn vậy lại phải convert swf > video Search được cái Amor hay hay nhưng mà kiếm hoài hổng thấy crack của version mới toàn ver cũ không

hà mà ver cũ thì biết kím đâu giờ chứ Nếu không đăng ký ta chỉ được dùng trong 7 ngày thôi Hơn nữa, nó thêm vào dòng chữ báo đây là bản dùng thử to đùng giữa file video sau khi convert Thôi thì giở olly ra xem xét tí vậy Bắt đầu nào

PEiD đâu, ra nhờ tí nào Úy giựt cả mình ASPack 2.12 -> Alexey Solodovnikov Thấy

AS lại tưởng aspr hehe may mà không phải Thằng này thì nhanh gọn thôi Load vô olly

Nó hiện ra cái bảng hỏi xem các pác có thích nó analysis nó tiếp không -> click Yes Các pác sẽ ở đây

Code:

00563001 > 60 PUSHAD

00563002 E8 03000000 CALL swftovid.0056300A

00563007 - E9 EB045D45 JMP 45B334F7

0056300C 55 PUSH EBP

0056300D C3 RETN

Nhấn F7 trace into vào rồi chuột fải vào thanh ghi ESP và chọn Follow In Dump Pác sẽ thấy trong dump window, địa chỉ các pác break là 0012FFA4 Bôi đen 4 bytes đầu rồi

Trang 2

nhấn chuột fải chọn Breakpoint -> Hardware, On Access -> Dword

Nhấn F9 cho run 1 fát ta break tại

Code:

005633B0 /75 08 JNZ SHORT swftovid.005633BA; We're here

005633B2 |B8 01000000 MOV EAX,1

005633B7 |C2 0C00 RETN 0C

Đến đây là quá trình giải mã đã xong, chỉ việc trace vài fát nữa là nó sẽ nhảy đến cúa OEP thui, F7 3 lần nó sẽ thoát khỏi quá trình giải mã soft trong memory và nhảy ngay đến OEP = lệnh RET Bấm Ctrl+A để analysis đoạn code này, ta thấy OEP của ta là: 004D8F60 55 PUSH EBP

Khà khà ta đang ở OEP rồi, việc ta cần làm là dump nó ra 1 file trên đĩa cứng thui, chọn Plugins -> Ollydump -> Dump Debugged Process bỏ chọn Rebuild import & ghi nhớ giá trị ở ô Modify Okie bấm dump lưu lại với tên pác thích em chọn là dump.exe cho dễ nhớ Giữ nguyên olly, run ImpREC mở bảng liệt kê process chọn file swf2video.exe Nhập địa chỉ OEP vào ô OEP Sau đó nhấn "IAT AutoSearch" Nhấn "Get Imports" Có duy nhất

1 chú mà lại là invalid Chuột phải Advanced command > Get API calls Hix một lô valid:NO hiện ra nhức cả mắt Nhấn Show invalid, chờ chút xíu Okie giờ chuột phải chọn Cut thunk(s) Xong roài, nhấn Fix dump và chọn lấy file dump hồi nãy Run thử file mới này, wow không crash vậy là unpack thành công Scan lại bằng PEiD nó báo liền Borland Delphi 6.0 - 7.0 Xong unpack giờ xử nó được gòi

Run thử soft xem nào một nag văng luôn ra This software can only tray 7 day Please registration! Convert thử 1 file Chài, một dòng chữ to oành ngay giữa file vừa convert Thế thì chán chết Thử reg xem nào Nhập N\S úm ba la chíu bùm Trời đất ơi Thank you for registering Amor SWF to Video Converter,Please restart the program! Thế này thì không mon men theo string được rồi phải dựa vào các hàm API thôi

Dựa vào cái câu Thank you for registering đểu giả này em đoán là nó lưu thông tin vào registry hoặc một file nào đó rồi check khi restart chương trình Ta thấy FU & FS được nó lưu trong file ini trong install dir Hề, vậy là nó check file Biết thế đã, giờ load

nó vào olly Chuột phải -> Search for -> All intermodular calls Chuột phải típ > Sort by > Destination để nhìn cho dễ Giờ chạy đi kiếm hàm GetPrivateProfileStringA Sau khi kiếm được rồi, pác hãy RightClick tại 1 hàm bất kì và chọn Set breakpoint on every call to GetPrivateProfileStringA ta có tất cả 3 hàm thôi không nhiều nhặn gì Xong nhấn F9 run soft nó break tại hàm đầu tiên, ngó nghiêng chả thấy gì quan trọng cả, F9 típ, cũng thía Pác cứ F9 đến khi nào thấy mí cái này bên cửa sổ Register thì dừng lại

ECX 004D8BC8 ASCII "Pass"

hehe cái này hay đây F8 trace over nào, chắc cái hàm kiểm tra serial của ta nó nằm quanh đây thôi F8 một hồi, ta đến đoạn code sau

Code:

Trang 3

004D905C | A1 E4CA4D00 MOV EAX,DWORD PTR DS:[4DCAE4]

004D9061 | 8338 00 CMP DWORD PTR DS:[EAX],0

004D9064 0F84 EE000000 JE dump_.004D9158

Hà, có vẻ khả nghi Ta sẽ dừng lại tại đây xem xét một chút Ta thử patch je > jne để xem nó thế nào nhé Save lại thành file mới với tên 1.exe Run thử file này oh nag không còn nữa form register đã bị disable Và cái dòng chữ đáng ghét ở giữa file video cũng không còn We have successfully patched the registration check! :d

Creating an Inline Patch:

Inline Patch được s/d khi ta muốn Patch một chương trình bị Pack mà không muốn

Unpack nó Chúng ta thay đổi program sao cho tại đoạn cuối của quá trình unpacking thay vào việc nhảy tới OEP thì nó nhảy tới đọan code chúng ta tạo ra Ta đưa đoạn code này vào một "code cave" Đoạn code mà ta thêm vào ở thời điểm này sẽ Patch những chỗ cần thiết khi mà program đạng được unpack Sau khi program đã được Patch ta sẽ nhảy tới OEP và run như chưa có chuyện gì xảy ra cả :d Cái cần làm bây giờ là tìm được một

"nơi" trong program đã bị Pack để thêm đoạn code của ta vào Nơi đó gọi là "code cave",

nó là một vùng của bộ nhớ(memory) trong chương trình đang còn trống(empty) Việc tìm Code cave tưởng chừng có vẻ khó nhưng thực ra lại rất chi là izì Trong các files exe thường thường đoạn mã bên trong một section không dùng hết toàn bộ section Vậy thì điều đó cũng có nghĩa ta sẽ s/d những khoảng trống này để viết code của ta Chúng ta sẽ

đi lùng một code cave bên trong program này.(Nguyên văn của bác haule_nth trong loạt tut trans của ARTeam)

Bắt đầu nào, load file swftovideo.exe vào olly Hãy di chuyển scrollbar cho tới khi không nhìn thấy dòng chỉ thị nào nữa thì lúc đó dừng lại Khi các pác tiếp tục nhìn thấy những dòng ADD BYTE PTR DS:[EAX],AL có nghĩa là các pác đang tiến tới gần cuối của section Lúc này tôi đã tìm thấy code cave của mình:

Code:

00563564 CB RETF ; Far return

00563565 15 E8770000 ADC EAX,77E8

0056356A 0000 ADD BYTE PTR DS:[EAX],AL

0056356C 0000 ADD BYTE PTR DS:[EAX],AL

0056356E 0000 ADD BYTE PTR DS:[EAX],AL

00563570 0000 ADD BYTE PTR DS:[EAX],AL

00563572 0000 ADD BYTE PTR DS:[EAX],AL

Các pác có thấy những dòng có 4 số 0000 dưới dòng chỉ thị cuối cùng ko? đó là nơi lý tưởng để tạo code cave của chúng ta Hãy scroll xuống chút nữa wow "bạt ngàn" những dòng code như trên Tôi bắt đầu viết code của tôi tại địa chỉ 0056359C Nhưng trước khi viết code ta phải biết ta sẽ chèn đoạn code vào chỗ nào trong quá trình unpack chứ nhỉ Xem xét chút đã

Trang 4

Các pác có nhớ sau khi set hardware bp và nhấn F9 chương trình dừng lại tại đâu không

Đó là một lệnh nhảy

Code:

005633B0 /75 08 JNZ SHORT swftovid.005633BA

005633B2 |B8 01000000 MOV EAX,1

005633B7 |C2 0C00 RETN 0C

005633BA \68 608F4D00 PUSH swftovid.004D8F60

005633BF C3 RETN

Okie rùi, ta sẽ thay đổi JNZ thành JMP cho nhảy đến code cave của ta sau đó mới nhảy ngược lại 005633BA Bắt tay vào việc nào

Còn nhớ ta đã thay đổi BYTE tại ADDRESS 004D9065 từ 84 thành 85 Vậy lệnh đầu tiên ta viết sẽ là: MOV BYTE PTR DS:[004d9065], 85 Vậy là patch xong giờ thì ta cần cho nó nhảy ngược về chỗ cũ lệnh jump sẽ viết như sau: JMP 005633BA Lúc này code cave sẽ như sau

Code:

0056359C C605 65904D00 8>MOV BYTE PTR DS:[4D9065],85

005635A3 ^ E9 12FEFFFF JMP swftovid.005633BA

Bây giờ bôi đen cả 2 dòng và ấn Right-Click rồi chọn Copy to Executable -> Selection Một cửa sổ mới hiện ra tại cửa sổ này ấn Right-Click và chon Save File -> Save file với tên bất kỳ Lệnh cuối cùng phải thay đổi đó là lệnh Jump ở giai đoạn cuối của quá trình unpack để jump tới code cave vừa tạo Đóng file hiện thời lại và mở file vừa tạo ra Bây giờ ta cần tới đoạn code gần cuối của quá trình unpack chính là đoạn JNZ mà ta phân tích bên trên đó Ta sẽ change lệnh jump này để nó để nó nhảy tới code cave Để change ta bấm SPACE -> trong Assemble box đánh JMP 0056359C rồi ấn Assemble Right-Click

và chọn Copy to Executable -> trong cửa sổ đang mở hãy Right-Click lần nữa và chọn Save File Tôi save với tên là swftovideo_patch_inline.exe Đóng Olly run thử, khà khà phê quá, nó run ầm ầm

Site này còn mấy soft khác cách patch cũng tương tự

Em là super newbie vì vậy kiến thức của em vẫn còn rất hạn chế nên không tránh khỏi nhầm nhọt chỗ này sai xót chỗ kia Mong các bác chỉ giáo để em có thể khá hơn

Mrangelx (http://www.reaonline.net) Windows Cracking Tutorial (complete)

Trang 5

Chào các bác, em chỉ là 1 newbie nhưng hôm rồi đọc được bài viết này về SoftICE nên hôm nay mạn phép translate ra cho các newbie đọc và nếu được cao thủ góp ý cho thì hay quá :) Em mong bài này sẽ giúp ích được cho các bác vì em thấy bài viết này viết kĩ lắm Mong nhận được sự quan tâm của các bác để cùng nhau tiến bộ

Bài viết : Windows Cracking Tutorial

Tác giả : ED!SON

Biên dịch : the_lighthouse

Trong bài có tham khảo bài viết của bác Hacnho Thank a lot

************************************************** **************

Nội dung :

1 Giới thiệu về cracking

2 Giới thiệu về SoftICE/Win 2.00

3 Tìm đoạn code registration

3.1 Phần mềm thực hành : Task Lock 3.00

3.2 Phần mềm thực hành : Command Line 95

4 Tạo keymaker cho phần mềm Command Line 95

5 Làm thế nào mà lệnh PUSH và lệnh CALL và những lệnh khác thật sự làm việc khi mà chương trình gọi 1 funtion

6 Đôi điều về chương trình viết bằng Visual Basic

Phụ lục :

A Làm thế nào để kiểm tra SoftICE đã load symbols ?

B Cú pháp cho functions

************************************************** ***************

1 Giới thiệu về cracking

================

Cracking 1 chương trình Windows thường dễ hơn 1 chương trình chạy trong Dos, bởi vì trong Windows rất khó mà che dấu bất cứ cái gì nếu như các bác xem kĩ phần thông tin Công cụ đầu tiên ( mà thường là duy nhất ) mà các bác cần là SoftICE/Win2.00, đó là công cụ degug tuyệt vời của Numega Có thể các bác cho là nó khó sử dụng ( mà em cũng nghĩ dzậy ) vì nó thường làm Windows bị ice , nhưng trong bài viết này em sẽ cho các bác thấy làm thế nào để sử dụng nó 1 cách hiệu quả

2 Giới thiệu về SoftICE/Win 2.00

=====================

* How to install SoftICE :

Trang 6

Mặc dù điều này đã được rất, rất… nhìu tut nói rùi nhưng em cũng xin được nói lại (để có

ai chưa biết thì bây giờ biết :) )

Các bác tiến hành install SoftICE như bình thường ( bằng cách nhấn vào file Setup ), khi được hỏi số serial thì bác gõ số serial vào ( thường kèm theo sẵn ) nhưng nếu ko có thì các bác có thể tham khảo số serial ở đây :

+ SoftICE 3.24 : 1900-0000DD-9B

 

Ngày đăng: 01/07/2014, 13:20

TỪ KHÓA LIÊN QUAN