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

Cracker Handbook 1.0 part 312 pdf

6 127 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

Tiêu đề Folder View v2.1
Tác giả Akira, REA, CrackerTeam
Trường học South Bay Software
Chuyên ngành Software Engineering
Thể loại Bài viết
Năm xuất bản 2000-2004
Thành phố South Bay
Định dạng
Số trang 6
Dung lượng 87,08 KB

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

Nội dung

--- I – Information : -**** Dùng PeiD v0.92 để Detect, chúng ta biết được chương trình này được tác... Vậy là vượt qua được cửa ải Unpack mà không mất một giọt mồ hôi nào.. -**** Chạy t

Trang 1

Vậy name và real serial tương ứng là:

name : akira

serial : c7fc42038d7eba72

name : REA cRaCkErTeAm

serial : 6cb21b0550838585

Akira(REA)

====South Bay SoftWare====

Reverse Engineering Association

SoftWare

Homepage :http://www.southbaypc.com/

Production :South Bay SoftWare

SoftWare :FolderView v2.1

Copyright by :Copyright (C) 2000-2004 South Bay Software

Type :N/S

Packed :N / A

Language :Microsoft Visual C++ 6.0

Crack Tool :OllyDbg 1.09d, PEiD 0.92, kWdsm 10

Unpack :N / A

Request :Correct Serial/Kegen

Comment :

Folder View v2.1

FolderView lets you view the contents of any folder on your computer, and then print it out or save it to a text file on disk This is very convenient for times when you need to send someone the contents of a directory You can simply attach the saved file to an e-mail and send it the other person The directory contents can be sorted by name, file size, file type, or date modified FolderView even gives you information on your MP3s, such as the artist, song title, length of the song, and more!

-

I – Information :

-**** Dùng PeiD v0.92 để Detect, chúng ta biết được chương trình này được tác

Trang 2

giả Code bằng Microsoft Visual C++ 6.0 , không hề bị Pack Vậy là vượt qua được cửa ải Unpack mà không mất một giọt mồ hôi nào

-**** Chạy thử chương trình , một Nag thông báo của chương trình hiện lên Cụ thể là nó chỉ cho phép chúng ta dùng thử chương trình này trong vòng không quá

30 days , nếu quá 30 days nó tự động nghỉ hưu liền à :(( Ngay tại Nag này bạn có thể nhìn thấy một button là Enter Registration Oki , click vào đây , nó sẽ hiện một Dialog box yêu cầu chúng ta phải nhập Name & Serial vào để sử dụng chương trình một cách hợp pháp

-**** Nhưng chúng ta làm gì có đâu để mà nhập , do đó có 2 cách một là dùng hết

30 ngày (để rồi lại reinstall lại) , hai là chúng ta phải crack nó để có được Serial hợp pháp với Name chúng ta nhập vào Ở đây mình chọn cách thứ hai à Nhập đại một cái Name & Code vào , ví dụ ( Name : kienmanowar & Code : 11111982) Nhập xong nhấn Ok, ngay lập tức một Nag văng ra “ Sorry , you have entered an

incorrect registration code” .Nó mắng ta như thể thì cũng đành chịu chứ biết làm

thể nào bây giờ, hãy ghi nhớ thông tin này lại chúng ta sẽ làm cho nó không còn xuất hiện nữa ke ke

-**** Bây giờ chúng ta hãy Load chương trình này trong Olly , tìm chuỗi thông báo trên Chúng ta sẽ tìm thấy tại địa chỉ sau :

Quote:

0040C1C9 68 90B84200 PUSH FolderVi.0042B890 ; |Text = "Sorry, you have entered an incorrect registration code."

-**** Lần ngược lên trên chúng ta sẽ đặt Break Point tại đây :

Quote:

0040C148 FFD7 CALL EDI ; \GetDlgItemTextA

II – Cracking :

-**** Oki , sau khi đặt BP, nhấn F9 để run chương trình , nhập lại Name & Code vào hộp thọai đăng kí , sau đó nhấn Ok Chúng ta sẽ quay trở lại Ollydbg và Ice tại chỗ mà chúng ta đã Set BP :

Code:

0040C148 FFD7 CALL EDI ; \GetDlgItemTextA <==We’re here (Get FU)

0040C14A 8D5424 08 LEA EDX,DWORD PTR SS:[ESP+8]

0040C14E 68 00010000 PUSH 100 ; /Count = 100 (256.)

0040C153 52 PUSH EDX ; |Buffer

Trang 3

0040C154 68 ED030000 PUSH 3ED ; |ControlID = 3ED (1005.)

0040C159 56 PUSH ESI ; |hWnd

0040C15A FFD7 CALL EDI ; \GetDlgItemTextA <== Get FS 0040C15C E8 AFF5FFFF CALL FolderVi.0040B710

0040C161 85C0 TEST EAX,EAX

0040C163 5F POP EDI

0040C164 75 5C JNZ SHORT FolderVi.0040C1C2

0040C166 8D4424 04 LEA EAX,DWORD PTR SS:[ESP+4] ; FS 0040C16A 8D8C24 040100>LEA ECX,DWORD PTR SS:[ESP+104] ; FU 0040C171 50 PUSH EAX

0040C172 51 PUSH ECX

0040C173 E8 D8040000 CALL FolderVi.0040C650 ; Encrypt <== Trace Into

-=== Trace Into === - 0040C650 /$ 81EC 00010000 SUB ESP,100

0040C656 | 56 PUSH ESI

0040C657 | 8BB424 080100>MOV ESI,DWORD PTR SS:[ESP+108]

0040C65E | 56 PUSH ESI

0040C65F | E8 ACFEFFFF CALL FolderVi.0040C510

0040C664 | 83C4 04 ADD ESP,4

0040C667 | 85C0 TEST EAX,EAX

0040C669 | 74 0A JE SHORT FolderVi.0040C675

0040C66B | 33C0 XOR EAX,EAX

0040C66D | 5E POP ESI

0040C66E | 81C4 00010000 ADD ESP,100

0040C674 | C3 RETN

0040C675 |> 8D4424 04 LEA EAX,DWORD PTR SS:[ESP+4]

0040C679 | 50 PUSH EAX

0040C67A | 56 PUSH ESI

0040C67B | E8 B0000000 CALL FolderVi.0040C730 ; Calculation

<== Trace Into

-=== Trace Into === -

-========= NOTE ========= - Trong phần Caculation này có tất cả 4 đoạn Code tính toán Right Code của chương trình này , thực chất chỉ là việc cộng dồn các FU[i] lại với nhau và cộng với một default value nằm trong thanh ghi EDX hoặc là sử dụng phép nhân FU[i] với

default value , sau đó đem cộng lại Mỗi đoạn sẽ tương ứng với từng SecX (4 function thì sẽ có 4 SecX , mỗi SecX sẽ được nối với nhau thông qua “-“

-========= NOTE ========= -

Trang 4

0040C730 /$ 81EC 00010000 SUB ESP,100

0040C736 | A0 C4DA4300 MOV AL,BYTE PTR DS:[43DAC4]

0040C73B | 53 PUSH EBX

0040C73C | 55 PUSH EBP

0040C73D | 56 PUSH ESI

0040C73E | 57 PUSH EDI

0040C73F | 884424 10 MOV BYTE PTR SS:[ESP+10],AL

0040C743 | B9 3F000000 MOV ECX,3F

0040C748 | 33C0 XOR EAX,EAX

0040C74A | 8D7C24 11 LEA EDI,DWORD PTR SS:[ESP+11]

0040C74E | F3:AB REP STOS DWORD PTR ES:[EDI]

0040C750 | 66:AB STOS WORD PTR ES:[EDI]

0040C752 | AA STOS BYTE PTR ES:[EDI]

0040C753 | 8BBC24 140100>MOV EDI,DWORD PTR SS:[ESP+114] ; <===

FU

0040C75A | 57 PUSH EDI ; /String

0040C75B | FF15 AC614200 CALL DWORD PTR

DS:[<&KERNEL32.lstrlenA>] ; \lstrlenA <==Length(FU)

0040C761 | 8BF0 MOV ESI,EAX ;<== Length (FU)

0040C763 | 33C9 XOR ECX,ECX ;<== Sec1 = 0;

0040C765 | 33C0 XOR EAX,EAX ;<== i=0;

0040C767 | 85F6 TEST ESI,ESI

0040C769 | 76 13 JBE SHORT FolderVi.0040C77E

0040C76B | 8B15 54B54200 MOV EDX,DWORD PTR DS:[42B554] <=1st Default Value (0x32)

-=== Calculation 0 === - 0040C771 |> 0FBE1C38 /MOVSX EBX,BYTE PTR DS:[EAX+EDI] ;<== FU[i]

0040C775 | 03DA |ADD EBX,EDX ;<== Temp = FU[i] + 1st Default Value (0x32)

0040C777 | 03CB |ADD ECX,EBX ;<== Sec1 = Sec1 + Temp

0040C779 | 40 |INC EAX ; <== i++

0040C77A | 3BC6 |CMP EAX,ESI ;<=== While (i < Length(FU)) 0040C77C |.^ 72 F3 \JB SHORT FolderVi.0040C771 ;<== Continue Loop 0040C77E |> 8B9C24 180100>MOV EBX,DWORD PTR SS:[ESP+118]

0040C785 | 51 PUSH ECX ; /<%u> <== Sec1 (Convert hex > dec)

0040C786 | 68 10B94200 PUSH FolderVi.0042B910 ; |Format = "%u-" <== Sec1 + “-“

Trang 5

0040C78B | 53 PUSH EBX ; |s

0040C78C | FF15 70624200 CALL DWORD PTR DS:[<&USER32.wsprintfA>]

; \wsprintfA <==Display Sec1

-=== Calculation 0 === - 0040C792 | 83C4 0C ADD ESP,0C

0040C795 | 33C9 XOR ECX,ECX ; <== Sec2 = 0;

0040C797 | 33C0 XOR EAX,EAX ; <=== i = 0;

0040C799 | 85F6 TEST ESI,ESI

0040C79B | 76 14 JBE SHORT FolderVi.0040C7B1

0040C79D | 8B15 58B54200 MOV EDX,DWORD PTR DS:[42B558] <=2nd Default Value (0x28)

-=== Calculation 1 === - 0040C7A3 |> 0FBE2C38 /MOVSX EBP,BYTE PTR DS:[EAX+EDI] ;<== FU[i]

0040C7A7 | 0FAFEA |IMUL EBP,EDX ; <== Temp = FU[i] * 2nd Default Value (0x28)

0040C7AA | 03CD |ADD ECX,EBP ; <== Sec2 = Sec2 + Temp

0040C7AC | 40 |INC EAX ; i++

0040C7AD | 3BC6 |CMP EAX,ESI ; While ( i <Length (FU))

0040C7AF |.^ 72 F2 \JB SHORT FolderVi.0040C7A3 ;<=== Continue Loop 0040C7B1 |> 51 PUSH ECX ; /<%u> <=== Sec2 (Convert hex >dec)

0040C7B2 | 8D4C24 14 LEA ECX,DWORD PTR SS:[ESP+14] ; | 0040C7B6 | 68 10B94200 PUSH FolderVi.0042B910 ; |Format = "%u-"

<== Sec2 + “-“

0040C7BB | 51 PUSH ECX ; |s

0040C7BC | FF15 70624200 CALL DWORD PTR

DS:[<&USER32.wsprintfA>] ; \wsprintfA <==Display Sec2

-=== Calculation 1 === - 0040C7C2 | 83C4 0C ADD ESP,0C

0040C7C5 | 8D5424 10 LEA EDX,DWORD PTR SS:[ESP+10]

0040C7C9 | 52 PUSH EDX ; /StringToAdd

0040C7CA | 53 PUSH EBX ; |ConcatString

0040C7CB | FF15 C4614200 CALL DWORD PTR

DS:[<&KERNEL32.lstrcatA>] ; \lstrcatA <== Sec1 Ghép với Sec2

0040C7D1 | 33C9 XOR ECX,ECX ;<== Sec3 = 0 ;

0040C7D3 | 33C0 XOR EAX,EAX ;<== i = 0 ;

0040C7D5 | 85F6 TEST ESI,ESI

0040C7D7 | 76 13 JBE SHORT FolderVi.0040C7EC

Trang 6

0040C7D9 | 8B15 5CB54200 MOV EDX,DWORD PTR DS:[42B55C]<=3rd

Default Value(0x1E)

-=== Calculation 2

=== -0040C7DF |> 0FBE2C38 /MOVSX EBP,BYTE PTR DS:[EAX+EDI] ;<==

FU[i]

0040C7E3 | 03EA |ADD EBP,EDX ;<== Temp = FU[i] + 3rd Default

Value (0x1E)

0040C7E5 | 03CD |ADD ECX,EBP ;<== Sec3 = Sec3 + Temp

0040C7E7 | 40 |INC EAX ; <=== i++

0040C7E8 | 3BC6 |CMP EAX,ESI ; <== While (i < Length (FU))

0040C7EA |.^ 72 F3 \JB SHORT FolderVi.0040C7DF ;<== Continue Loop

0040C7EC |> 51 PUSH ECX ; /<%u> ;<== Sec3 (Convert

hex > dec)

0040C7ED | 8D4424 14 LEA EAX,DWORD PTR SS:[ESP+14] ; |

0040C7F1 | 68 10B94200 PUSH FolderVi.0042B910 ; |Format = "%u-"

<== Sec3 + “-“

0040C7F6 | 50 PUSH EAX ; |s

0040C7F7 | FF15 70624200 CALL DWORD PTR DS:[<&USER32.wsprintfA>]

; \wsprintfA <== Display Sec3

Ngày đăng: 03/07/2014, 18:20

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN