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

Cracking part 15 pptx

6 236 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 101,66 KB

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

Nội dung

Nếu menu item không tồn tại, giá trị trả về sẽ là 0xFFFFFFFF EnableWindow Hàm EnableWindow có nhiệm vụ enable hoặc disable chuột và bàn phím input vào specified window hoặc control.. 03.

Trang 1

BPM, BPMB, BPMW, BPMD Breakpoint on memory access BPR Breakpoint on memory range

BPIO _Breakpoint on I/O port access

BPINT Breakpoint on Interrupt

BPX Breakpoint on execution

BPMSG _Breakpoint on windows message C Compare two data blocks

CLASS Display window class information

D, DB, DW, DD, DS, DL, DT _Display memory

DATA _Change data window

E, EB, EW, ED, EL, ET Edit memory

EXIT EXIT

F _Fill memory with data

FORMAT _Change format of data window G _Go to address

H _Help on specific function

HBOOT System boot (total reset)

HERE _Go to current cursor line

HWND _Display window handle information M _Move Data

MOD Display windows module list

P _Step skipping calls, Int, etc

R _Display/Change Register contents S _Search for data

T _Single Step one instruction

TASK Display windows task list

THREAD Display thread information

U _Un-Assemblers instructions

VER _SoftICE Version

WATCH Add watch

WHAT _Identify the type of expression WMSG _Display windows messages

X Return to host debugger or program

Những lệnh cấp cao :

CPU _Display CPU register information GDT _Display global descriptor table GENINT Generate an interrupt

HEAP Display windows global heap

LHEAP _Display windows local heap

IDT _Display interrupt descriptor table

I, IB, IW, ID Input data from I/O Port

O OB, OW, OD Output data form I/O Port

Trang 2

LDT _Display local descriptor table

MAP32 _Display 32Bit section map

MAPV86 Display v86 memory map

PAGE Display page table information

PCI Display PCI device information

PEEK Read from physical address

PHYS Display all virtual addresses for physical address POKE Write to physical address

PROC Display process information

QUERY Display process virtual address space map TSS _Display task state segment

STACK _Display call stack

VCALL _Display VxD calls

VM Display virtual machine information VXD _Display windows VxD map

XFRAME Display active exeption frames

Mode Control :

FAULTS Enable/Disable SoftIce fault trapping I1HERE Direct INT1 to SoftICE

I3HERE Direct INT3 to SoftICE

SET _Change an internal variable

ZAP _Zap embedded INT1 or INT3

Những lệnh chỉnh sửa :

ALTKEY _Set key sequence to invoke window ANSWER Auto-answer and redirect console to modem CODE _Display insctruction bytes in code window COLOR Display/Set screen colors

DEX Display/Assign window data expression DIAL Redirect console to modem

FKEY Display/Set function keys

LINES _Set/Display number of lines on screen MACRO Define a named macro command

PAUSE _Control display scroll mode

PRN _Set printer output port

SERIAL Redirect console

TABS Set/Display tab setting

Window Commands :

. _ Locate current instruction

EC Enable/Disable code window

WC _Toggle code window

Trang 3

WD _Toggle data window

WF _Toggle float point stack window

WL _ Toggle locals window

WR _Toggle register window

WW _Toggle watch window

Window Control :

ALTSCR Change to alternate display

CLS _Clear window

FLASH _Restore screen during P and T

RS Restore program screen

Symbole / Source Commands :

EXP _Display export symbols

FILE Change/Display current source file

LOCALS Display locals currently in scope

SRC _Toggle between source, mixed & code

SS Search source module for string

SYMLOC _Relocate symbol base

TAB _Select/Remove symbol table

TYPES _List all types, or display type defination

Back Trace Commands :

SHOW _Display from backtrace buffer

TRACE Enter backtrace simulation mode

XT Step in trace simulation mode

XP Program step in trace simulation mode

XG Go to address in trace simulation mode

XRSET _Reset backtrace history buffer

Special Operators :

. _Preceding a decimal number specifies a line number

$ Preceding an address specifies SEGMENT addressing

# Preceding an address specifies SELECTOR

@ Preceding an address

PHẦN 3 : Breakpoint và Win API Details

03.1 Crippled Programs

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

EnableMenuItem

Hàm EnableMenuItem có nhiệm vụ enable, disable, hay gray 1 item nào đó trong menu Code:

Trang 4

BOOL EnableMenuItem(

HMENU hMenu, _// handle of menu

UINT uIDEnableItem, // menu item to enable, disable, or gray

UINT uEnable // menu item flags

);

Returns

Giá trị trả về sẽ chỉ rõ trạng thái trước đó của menu item (đó là MF_DISABLED,

MF_ENABLED hay MF_GRAYED) Nếu menu item không tồn tại, giá trị trả về sẽ là 0xFFFFFFFF

EnableWindow

Hàm EnableWindow có nhiệm vụ enable hoặc disable chuột và bàn phím input vào specified window hoặc control Khi input bị disable, window không thể nhận input như click chuột và gõ phím Khi input enable, window nhận tất cả input

Code:

BOOL EnableWindow(

HWND hWnd, // handle of window

BOOL bEnable _// flag for enabling or disabling input

);

Returns

Nếu window đã bị disable, giá trị trả về là TRUE, ngược lại giá trị trả về là FALSE Để biết thông tin về lỗi, chúng ta dùng lệnh GetLastError

03.2 Dialog Boxes

===========

CreateDialogIndirectParamA / CreateDialogIndirectParamW

Hàm CreateDialogIndirectParamA có nhiệm vụ tạo ra modeless dialog box từ dialog box template trong memory Trước khi display dialog box, function sẽ pass program-defined value vào dialog box procedure giống như thông số Iparam của WM_INITDIALOG message Chương trình có thể sử dụng giá trị này để initialize (chạy) dialog box controls Code:

HWND CreateDialogIndirectParam(

HINSTANCE hInstance, // handle of application instance

LPCDLGTEMPLATE lpTemplate, // address of dialog box template

HWND hWndParent, // handle of owner window

DLGPROC lpDialogFunc, _// address of dialog box procedure

LPARAM lParamInit _// initialization value

);

Returns

Nếu function succeed (tạm dịch là hoàn thành), giá trị trả về là handle của dialog box

Trang 5

Còn nếu function fail (không hoàn thành), giá trị trả về là NULL, giá trị là 0xFFFFFFFF

CreateDialogParamA / CreateDialogParamW

Hàm CreateDialogParamA có nhiệm vụ tạo ra modeless dialog box từ dialog box

template resource Trước khi display dialog box, function sẽ pass program-defined value vào dialog box procedure giống như thông số Iparam của WM_INITDIALOG message Chương trình có thể sử dụng giá trị này để initialize dialog box controls

Code:

HWND CreateDialogParam(

HINSTANCE hInstance, // handle of application instance

LPCTSTR lpTemplateName, _// identifies dialog box template

HWND hWndParent, _ // handle of owner window

DLGPROC lpDialogFunc, _// address of dialog box procedure

LPARAM dwInitParam // initialization value

);

Returns

Nếu window bị disable, giá trị trả về là TRUE, ngược lại giá trị trả về là FALSE Để biết thông tin về lỗi, chúng ta dùng lệnh GetLastError

DialogBox

Hàm DialogBox có nhiệm vụ tạo ra modal dialog box từ dialog box template resource DialogBox không return control cho đến khi specified callback function kết thúc modal dialog box bằng cách gọi EndDialog

Code:

int DialogBox(

HANDLE hInstance, // handle of application instance

LPCTSTR lpTemplate, _// identifies dialog box template

HWND hWndParent, _// handle of owner window

DLGPROC lpDialogFunc // address of dialog box procedure );

Returns

Nếu function hoàn thành, giá trị trả về là thông số nResult trong lệnh call EndDialog được dùng để kết thúc dialog box Nếu function không hoàn thành, giá trị trả về là -1

DialogBoxIndirect

Hàm DialogBoxIndirect có nhiệm vụ tạo ra modal dialog box từ dialog box template trong memory

Code:

int DialogBoxIndirect(

HANDLE hInstance, _// handle of application instance

LPDLGTEMPLATE lpTemplate, // identifies dialog box template

Trang 6

 

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