Home | Trees | Indices | Help |
|
---|
|
Represents a crash, bug, or another interesting event in the debugee.
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
Inherited from |
|||
Report | |||
---|---|---|---|
tuple( str, str, str ) |
|
||
str |
|
||
str |
|
||
str |
|
||
str |
|
||
Notes | |||
|
|||
|
|||
list( str ) |
|
||
listiterator |
|
||
bool |
|
||
Miscellaneous | |||
|
|
|||
int |
_rowid Row ID in the database. |
||
Basic information | |||
---|---|---|---|
object |
signature Approximately unique signature for the Crash object. |
||
str |
arch Processor architecture. |
||
int |
bits32 or 64 bits.
|
||
int |
eventCode Event code as defined by the Win32 API. |
||
str |
eventName Event code user-friendly name. |
||
None or str |
labelPC Label pointing to the program counter. |
||
str |
os Operating system version. |
||
int |
pid Process global ID. |
||
dict( str → int ) |
registers Dictionary mapping register names to their values. |
||
int |
tid Thread global ID. |
||
float |
timeStamp Timestamp as returned by time.time(). |
||
Optional information | |||
None or str |
debugString Debug string sent by the debugee. |
||
None or int |
exceptionAddress Memory address where the exception occured. |
||
None or int |
exceptionCode Exception code as defined by the Win32 API. |
||
None or str |
exceptionDescription Exception description. |
||
None or str |
exceptionLabel Label pointing to the exception address. |
||
None or str |
exceptionName Exception code user-friendly name. |
||
None or int |
faultAddress Access violation memory address. |
||
None or str |
faultLabel Label pointing to the access violation memory address. |
||
None or int |
faultType Access violation type. |
||
None or bool |
firstChanceTrue for first chance exceptions, False for
second chance.
|
||
bool |
isOurBreakpointTrue for breakpoints defined by the Debug class,
False otherwise.
|
||
bool |
isSystemBreakpointTrue for known system-defined breakpoints,
False otherwise.
|
||
None or int |
lpBaseOfDll Base of module where the program counter points to. |
||
None or str |
modFileName File name of module where the program counter points to. |
||
None or tuple of tuple( int, int, str ) |
stackTrace Stack trace of the current thread as a tuple of ( frame pointer, return address, module filename ). |
||
None or tuple( str... ) |
stackTraceLabels Tuple of labels pointing to the return addresses in the stack trace. |
||
None or tuple( int... ) |
stackTracePC Tuple of return addresses in the stack trace. |
||
None or tuple of tuple( int, str ) |
stackTracePretty Stack trace of the current thread as a tuple of ( frame pointer, return location ). |
||
Extra information | |||
None or str |
commandLine Command line for the target process. |
||
None or dict( str → str ) |
environment Environment variables for the target process. |
||
None or list of str |
environmentData Environment data for the target process. |
||
None or str |
faultCode Data pointed to by the program counter. |
||
None or tuple of tuple( long, int, str, str ) |
faultDisasm Dissassembly around the program counter. |
||
None or str |
faultMem Data pointed to by the exception address. |
||
None or dict( int→ str ) |
faultPeek Dictionary mapping guessed pointers at faultMem to the data they point to. |
||
None or list of win32.MemoryBasicInformation objects. |
memoryMap Memory snapshot of the program. |
||
None or dict( str → str ) |
registersPeek Dictionary mapping register names to the data they point to. |
||
None or str |
stackFrame Data pointed to by the stack pointer. |
||
None or dict( int → str ) |
stackPeek Dictionary mapping stack offsets to the data they point to. |
||
tuple( int, int ) |
stackRange Stack beginning and end pointers, in memory addresses order. |
||
Notes | |||
list( str ) |
notes List of strings, each string is a note. |
|
|||
Inherited from |
|||
Basic information | |||
---|---|---|---|
int |
pc Value of the program counter register. |
||
int |
sp Value of the stack pointer register. |
||
int |
fp Value of the frame pointer register. |
|
x.__init__(...) initializes x; see help(type(x)) for signature
|
Fetch extra data from the Event object.
Note: Since this method may take a little longer to run, it's best to call it only after you've determined the crash is interesting and you want to save it. |
str(x)
|
Alias of signature. Deprecated since WinAppDbg 1.5. |
Guess how likely is it that the bug causing the crash can be leveraged into an exploitable vulnerability.
Note: Don't take this as an equivalent of a real exploitability analysis, that can only be done by a human being! This is only a guideline, useful for example to sort crashes - placing the most interesting ones at the top. See Also: The heuristics are similar to those of the !exploitable extension for WinDBG, which can be downloaded from here: |
Private method to tell if the instruction pointed to by the program counter is a control flow instruction. Currently only works for x86 and amd64 architectures. |
Private method to tell if the instruction pointed to by the program counter is a block data move instruction. Currently only works for x86 and amd64 architectures. |
|
|
|
|
Add a note to the crash event.
|
Get the list of notes of this crash event.
|
Iterate the notes of this crash event.
|
|
|
signatureApproximately unique signature for the Crash object.This signature can be used as an heuristic to determine if two crashes were caused by the same software error. Ideally it should be treated as as opaque serializable object that can be tested for equality.
|
_rowidRow ID in the database. Internally used by the DAO layer. Only present in crash dumps retrieved from the database. Do not rely on this property to be present in future versions of WinAppDbg.
|
commandLineCommand line for the target process.
|
debugStringDebug string sent by the debugee.
|
environmentEnvironment variables for the target process.
|
environmentDataEnvironment data for the target process.
|
exceptionAddressMemory address where the exception occured.
|
exceptionCodeException code as defined by the Win32 API.
|
exceptionDescriptionException description.
|
exceptionLabelLabel pointing to the exception address.
|
exceptionNameException code user-friendly name.
|
faultAddressAccess violation memory address. Only applicable to memory faults.
|
faultCodeData pointed to by the program counter.
|
faultDisasmDissassembly around the program counter.
|
faultLabelLabel pointing to the access violation memory address. Only applicable to memory faults.
|
faultMemData pointed to by the exception address.
|
faultPeekDictionary mapping guessed pointers at faultMem to the data they point to.
|
faultTypeAccess violation type. Only applicable to memory faults. Should be one of the following constants:
|
firstChanceTrue for first chance exceptions, False for
second chance.
|
isOurBreakpointTrue for breakpoints defined by the Debug class,
False otherwise.
|
isSystemBreakpointTrue for known system-defined breakpoints,
False otherwise.
|
labelPCLabel pointing to the program counter.
|
lpBaseOfDllBase of module where the program counter points to.
|
memoryMapMemory snapshot of the program. May contain the actual data from the entire process memory if requested. See fetch_extra_data for more details.
|
modFileNameFile name of module where the program counter points to.
|
osOperating system version.May indicate a 64 bit version even if arch and bits indicate 32 bits. This means the crash occurred inside a WOW64 process.
|
registersPeekDictionary mapping register names to the data they point to.
|
stackFrameData pointed to by the stack pointer.
|
stackPeekDictionary mapping stack offsets to the data they point to.
|
stackRangeStack beginning and end pointers, in memory addresses order.
|
stackTraceStack trace of the current thread as a tuple of ( frame pointer, return address, module filename ).
|
stackTraceLabelsTuple of labels pointing to the return addresses in the stack trace.
|
stackTracePCTuple of return addresses in the stack trace.
|
stackTracePrettyStack trace of the current thread as a tuple of ( frame pointer, return location ).
|
|
pcValue of the program counter register.
|
spValue of the stack pointer register.
|
fpValue of the frame pointer register.
|
Home | Trees | Indices | Help |
|
---|
Generated by Epydoc 3.0.1 on Fri Dec 20 17:54:51 2013 | http://epydoc.sourceforge.net |