Home | Trees | Indices | Help |
|
---|
|
The main debugger class.
|
|||
|
|||
|
|||
|
|||
int |
|
||
|
|||
|
|||
bool |
|
||
bool |
|
||
bool |
|
||
bool |
|
||
bool |
|
||
bool |
|
||
bool |
|
||
bool |
|
||
bool |
|
||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
Breakpoint |
|
||
|
|||
|
|||
HardwareBreakpoint |
|
||
|
|||
|
|||
bool |
|
||
bool |
|
||
bool |
|
||
Inherited from |
|||
Debugging | |||
---|---|---|---|
Process |
|
||
Process |
|
||
Process |
|
||
|
|||
|
|||
|
|||
|
|||
|
|||
int |
|
||
list( int... ) |
|
||
bool |
|
||
bool |
|
||
bool |
|
||
bool |
|
||
|
|||
Debugging loop | |||
Event |
|
||
|
|||
|
|||
|
|||
|
|||
|
|||
Debugging events | |||
EventHandler |
|
||
EventHandler |
|
||
Breakpoints | |||
bool |
|
||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
bool |
|
||
|
|||
BufferWatch |
|
||
|
|||
Stalking | |||
|
|||
|
|||
|
|||
|
|||
bool |
|
||
BufferWatch |
|
||
bool |
|
||
|
|||
Tracing | |||
list( int... ) |
|
||
bool |
|
||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
Symbols | |||
int, None |
|
||
int |
|
||
Advanced breakpoint use | |||
CodeBreakpoint |
|
||
HardwareBreakpoint |
|
||
PageBreakpoint |
|
||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
CodeBreakpoint |
|
||
HardwareBreakpoint |
|
||
PageBreakpoint |
|
||
bool |
|
||
bool |
|
||
bool |
|
||
Listing breakpoints | |||
list of tuple( pid, tid, bp ) |
|
||
list of tuple( int, CodeBreakpoint ) |
|
||
tuple of (int, str, callable, bool) |
|
||
list of tuple( int, HardwareBreakpoint ) |
|
||
list of tuple( int, PageBreakpoint ) |
|
||
list of tuple( pid, tid, bp ) |
|
||
list of CodeBreakpoint |
|
||
tuple of (int, str, callable, bool) |
|
||
list of tuple( int, HardwareBreakpoint ) |
|
||
list of PageBreakpoint |
|
||
list of HardwareBreakpoint |
|
||
Batch operations on breakpoints | |||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|
|||
Debugging events | |||
---|---|---|---|
callable |
|
|
|||
_debug_static_init = False
|
|||
Breakpoint types | |||
---|---|---|---|
int |
BP_TYPE_ANY = 0 To get all breakpoints (Inherited from winappdbg.breakpoint._BreakpointContainer) |
||
int |
BP_TYPE_CODE = 1 To get code breakpoints only (Inherited from winappdbg.breakpoint._BreakpointContainer) |
||
int |
BP_TYPE_HARDWARE = 3 To get hardware breakpoints only (Inherited from winappdbg.breakpoint._BreakpointContainer) |
||
int |
BP_TYPE_PAGE = 2 To get page breakpoints only (Inherited from winappdbg.breakpoint._BreakpointContainer) |
||
Breakpoint states | |||
int |
BP_STATE_DISABLED = 0 Breakpoint is disabled. (Inherited from winappdbg.breakpoint._BreakpointContainer) |
||
int |
BP_STATE_ENABLED = 1 Breakpoint is enabled. (Inherited from winappdbg.breakpoint._BreakpointContainer) |
||
int |
BP_STATE_ONESHOT = 2 Breakpoint is enabled for one shot. (Inherited from winappdbg.breakpoint._BreakpointContainer) |
||
int |
BP_STATE_RUNNING = 3 Breakpoint is running (recently hit). (Inherited from winappdbg.breakpoint._BreakpointContainer) |
||
Memory breakpoint trigger flags | |||
int |
BP_BREAK_ON_ACCESS = 3 Break on memory read or write. (Inherited from winappdbg.breakpoint._BreakpointContainer) |
||
int |
BP_BREAK_ON_EXECUTION = 0 Break on code execution. (Inherited from winappdbg.breakpoint._BreakpointContainer) |
||
int |
BP_BREAK_ON_WRITE = 1 Break on memory write. (Inherited from winappdbg.breakpoint._BreakpointContainer) |
||
Memory breakpoint size flags | |||
BP_WATCH_BYTE = 0
(Inherited from winappdbg.breakpoint._BreakpointContainer)
|
|||
BP_WATCH_DWORD = 3
(Inherited from winappdbg.breakpoint._BreakpointContainer)
|
|||
BP_WATCH_QWORD = 2
(Inherited from winappdbg.breakpoint._BreakpointContainer)
|
|||
BP_WATCH_WORD = 1
(Inherited from winappdbg.breakpoint._BreakpointContainer)
|
|
|||
System |
system A System snapshot that is automatically updated for processes being debugged. |
|
|||
Inherited from |
|
Debugger object.
Warning: When hostile mode is enabled, some things may not work as expected! This is because the anti-anti debug tricks may disrupt the behavior of the Win32 debugging APIs or WinAppDbg itself. Note:
The |
|
Attaches to an existing process for debugging.
|
Starts a new process for debugging. This method uses a list of arguments. To use a command line string instead, use execl.
|
Starts a new process for debugging. This method uses a command line string. To use a list of arguments instead, use execv.
|
Use this method only when for some reason the debugger's been attached to the target outside of WinAppDbg (for example when integrating with other tools). You don't normally need to call this method. Most users should call attach, execv or execl instead.
|
Perform the necessary cleanup of a process about to be killed or detached from. This private method is called by kill and detach.
|
Kills a process currently being debugged.
See Also: detach |
Kills from all processes currently being debugged.
|
Detaches from a process currently being debugged.
Note: On Windows 2000 and below the process is killed. See Also: attach, detach_from_all |
Detaches from all processes currently being debugged.
Note: To better handle last debugging event, call stop instead. |
Waits for the next debug event.
|
Calls the debug event notify callbacks.
|
Resumes execution after processing a debug event.
See Also: dispatch(), loop(), wait() |
Stops debugging all processes. If the kill on exit mode is on, debugged processes are killed when the debugger is stopped. Otherwise when the debugger stops it detaches from all debugged processes and leaves them running (default). For more details see: __init__
Note: This method is better than detach_from_all because it can gracefully handle the last debugging event before detaching. |
Handles the next debug event.
|
Simple debugging loop. This debugging loop is meant to be useful for most simple scripts. It iterates as long as there is at least one debugee, or an exception is raised. Multiple calls are allowed. This is a trivial example script: import sys debug = Debug() try: debug.execv( sys.argv [ 1 : ] ) debug.loop() finally: debug.stop()
|
|
|
Determine if the debugger is debugging the given process.
See Also: is_debugee_attached, is_debugee_started |
Determine if the given process was started by the debugger.
See Also: is_debugee, is_debugee_attached |
Determine if the debugger is attached to the given process.
See Also: is_debugee, is_debugee_started |
Determine if we're in hostile mode (anti-anti-debug).
|
Start an interactive debugging session.
Warning: This will temporarily disable the user-defined event handler! This method returns when the user closes the session. |
Notify the creation of a new process.
Warning: This method is meant to be used internally by the debugger. |
Notify the creation of a new thread.
Warning: This method is meant to be used internally by the debugger. |
Notify the load of a new module.
Warning: This method is meant to be used internally by the debugger. |
Notify the termination of a process.
Warning: This method is meant to be used internally by the debugger. |
Notify the termination of a thread.
Warning: This method is meant to be used internally by the debugger. |
Notify the unload of a module.
Warning: This method is meant to be used internally by the debugger. |
Notify of a RIP event.
Warning: This method is meant to be used internally by the debugger. |
Notify of a Debug Ctrl-C exception.
Warning: This method is meant to be used internally by the debugger. Note: This exception is only raised when a debugger is attached, and applications are not supposed to handle it, so we need to handle it ourselves or the application may crash. See Also: http://msdn.microsoft.com/en-us/library/aa363082(VS.85).aspx |
Notify of a Microsoft Visual C exception.
Warning: This method is meant to be used internally by the debugger. Note: This allows the debugger to understand the Microsoft Visual C thread naming convention. See Also: http://msdn.microsoft.com/en-us/library/xcb2z8hs.aspx |
|
systemA System snapshot that is automatically updated for processes being debugged. Processes not being debugged in this snapshot may be outdated.
|
Home | Trees | Indices | Help |
|
---|
Generated by Epydoc 3.0.1 on Fri Dec 20 17:54:51 2013 | http://epydoc.sourceforge.net |