精华内容
下载资源
问答
  • Debugger

    2020-12-08 23:15:31
    <div><p>Debugger implementation. The plugin is functional with support for multiple debugger windows. </p><p>该提问来源于开源项目:analogdevicesinc/scopy</p></div>
  • debugger

    2019-09-19 18:00:13
    js中使用debugger断点调试

    js中使用debugger断点调试

    展开全文
  • 断点debugger

    2019-04-17 15:21:03
    debugger

    debugger

    展开全文
  • antiDebugger&anti anti debugger---ios逆向反编译反编译反编译 反编译,反调试书籍
  • Extended debugger

    2021-01-01 16:17:26
    <ul><li>Resized window when entering debugger</li><li>Display emulator output and memory heatmap (activity) next to the debugger console</li><li>Emulator output follows the video counter (CRT beam) ...
  • Remote Debugger

    2014-07-31 10:30:14
    Remote Debugger
  • debugger for windows

    2020-09-16 09:43:32
    debugger for windows
  • Debugger extension

    2021-01-06 10:41:12
    <div><p>This extension is for adding interractions with the debugger. For now it only has breakpoints. In the future it may be extended (sort of console in debugger with console logging?) <p>The PR ...
  • Debugger Improvements

    2020-11-25 01:26:38
    <div><p>Tracking issue for debugger improvements: <ul><li>[ ] Fix/cleanup <code>ruby-debug-ide</code> integration with editor. This includes making sure the debugger properly handles breakpoints (#270...
  • Debugger improvements

    2020-12-28 04:39:25
    <p>Copy and pasting large text fields hangs the debugger command field (workaround is to press F3, but its still annoying when you copy from the debugger window then accidentally paste that in). ...
  • remove debugger

    2020-12-09 08:09:53
    <div><p>Please consider removing the <code>debugger</code> statement in the generated code. <p>If an assert fails the debugger kicks in so you can inspect the stack and quickly find out what's ...
  • <div><p>Add ability to test the support minus the actual debugger. <p>Fixes #2411 <p>Signed-off-by: Ralph Castain </p><p>该提问来源于开源项目:open-mpi/ompi</p></div>
  • Debugger learning

    2019-04-23 15:38:29
    Debugger learning debugger white box debugger black box debugger user mode debugger(ring 3) kernel debugger(ring 0) when you interact with windows driver(like network driver), the driver works...

    Debugger learning

    • debugger
      • white box debugger
      • black box debugger
        • user mode debugger(ring 3)
        • kernel debugger(ring 0)

    when you interact with windows driver(like network driver), the driver works in kernel mode

    • windows debugger

      • winDbg
      • OllyDbg
    • Linux debugger

      • GNU Debugger(gdb)
    • Intelligent debugging

      • PyDbg
      • Immunity Debugger
    • debugging theory

      • low-level theory(CPU architecture, stack)

    Goal

    Create my own debugger for any operation system

    CPU architecture

    • x86 instruction set

      • x86 assembly
        • instruction(a sentence, high level command, like MOV EAX, EBX)
        • opcode or opreation code (machine language that command CPU executes, like 8BC3)
          在这里插入图片描述
          在这里插入图片描述
    • EAX, EDX, ECX, ESI, EDI, EBP, ESP, EBX, EIP(General purpose register)

      • EAX(accumulator register, for calculations and store return values from function calls)
      • EDX(data register, storing extra data for more complex calculation, helper of EAX)
      • ECX(counter register, for loop operation, counts downward)
      • ESI(source index for the input, hold location of input stream, for reading)
      • EDI(destination index for the output, hold location of output stream, for writing)
      • ESP(stack pointer)
      • EBP(base pointer)
      • EBX(for extra storage)
      • EIP(point to current instruction that is being executed)
    • Stack

      • store info
        • how a function is called (when called)
        • the parameters it takes(input var)
        • how the function return(return address)
      • Local variables
        • part of memory, where lifecycle exist when function exists
        • local variables are allocated on the stack
        • in the stack, after input parameters and return address push into the stack

    Debugger

    • debugger

      • debugger run as an endless loop to wait for the debugger event happen
      • when a debugging event occurs, the loop break
      • and a handler is called to deal with the event
    • debugger event

      • breakpoint
      • memory violations(access violations or segmentation faults)
      • exeception generated by debugged program
    • breakpoints

      • soft breakpoints
        • a single-byte instruction that stops the execution, and passes control to breakpoint handler
      • hardware breakpoints
        • CPU level
        • debugger register(DR0-DR7)
          • DR0-DR3 for addresses
          • DR4, DR5 reserved
          • DR6 status register(determine the type of debugging event)
          • DR7 switch of hardware breakpoint
            • break condition
            • break when executed at a particular address
            • break when data is written to address
            • break on read or write but not execution
              在这里插入图片描述
      • memory breakpoints
        • change the permission on a region or page of memory
        • the memory page is a part of memory that the operating system handles on
          • page execution permission
          • page read permission
          • page write permission
          • guard page permission
            • useful, separating heap from the stack
            • ensure a portion of memory doesn’t grow beyond the boundary

    Soft breakpoints

    In order to place soft breakpoints, we need to be able to read and write into process's memory.(via ReadProcessMemory() and WriteProcessMemory())

    Debug flow

    debugger should:

    • open an executable file
    • attach the debugger to a running process
    • be able to capture the state of CPU register at any given time

    Exception and stack

    the state of stack changes when an exception occurs

    the exception is interesting, it can include breakpoints, access violations, improper access permission on memory.
    IP(instruction pointer is something currently executing, we should get a handle to the
    currently executing thread in the debuggee)

    Process and thread

    threads are executing inside the process. We can use OpenProcess() to select the thread we want
    to handle. the first step is Thread Enumeration.(especially the running threads in the process).
    the method corresponds Thread Enumeration is CreateToolhelp32Snapshot() which is from kernal32.dll

    Takes a snapshot of the specified processes, as well as the heaps, modules, and threads used by these processes
    

    Remember our target is to obtain the register state from a process. ( be able to capture the state of CPU register at any given time and from any process or threads)

    Thread

    a process contains at least one thread(main thread)

    Context and register

    in windows operating system, context is the status of some basic component, like CPU register value is the context of the process or thread. context structure holds all the register values.

    typedef struct _WOW64_CONTEXT {
      DWORD                    ContextFlags;
      DWORD                    Dr0;  // debugger regiesters
      DWORD                    Dr1;
      DWORD                    Dr2;
      DWORD                    Dr3;
      DWORD                    Dr6;
      DWORD                    Dr7;
      WOW64_FLOATING_SAVE_AREA FloatSave;
      DWORD                    SegGs; // segment registers
      DWORD                    SegFs;
      DWORD                    SegEs;
      DWORD                    SegDs;
      DWORD                    Edi; // registers
      DWORD                    Esi;
      DWORD                    Ebx;
      DWORD                    Edx;
      DWORD                    Ecx;
      DWORD                    Eax;
      DWORD                    Ebp;
      DWORD                    Eip;
      DWORD                    SegCs;
      DWORD                    EFlags;
      DWORD                    Esp;
      DWORD                    SegSs;
      BYTE                     ExtendedRegisters[WOW64_MAXIMUM_SUPPORTED_EXTENSION];
    } WOW64_CONTEXT;
    

    Debugging event handlers

    debugging event handlers solve debugging events when they occur.

    Order

    • CREATE_PROCESS_DEBUG_EVENT
    • LOAD_DLL_DEBUG_EVENT
    • CREATE_THREAD_DEBUG_EVENT
    • EXCEPTION_DEBUG_EVENT
    • EXIT_THREAD_DEBUG_EVENT
    展开全文
  • <div><h1>command-line-arguments <p>./debug.go:16: cannot use Debugger literal (type *Debugger) as type Debugger in assignment</p><p>该提问来源于开源项目:shimberger/gohls</p></div>
  • JWT Debugger

    2020-01-22 01:23:24
    使用jwt.io的Debugger工具可以编码、验证和生成JWT 网址:https://jwt.io/#debugger

    使用jwt.io的Debugger工具可以编码、验证和生成JWT
    网址:https://jwt.io/#debugger

    在这里插入图片描述

    展开全文
  • zenddebugger

    2012-10-23 13:54:44
    在php配置文件里加入 [Zend] zend_extension_ts="F:/xdebug/ZendDebugger.dll" zend_debugger.allow_hosts=127.0.0.1/10 zend_debugger.expose_remotely=always 其中zend_extension_ts指向你拷贝的文件夹
  • vbdebugger_ha

    2020-11-17 16:10:45
    vbdebugger_ha!
  • js debugger

    2012-09-27 15:58:29
    IE js调试工具js debugger
  • Unexpected 'debugger' statement no-debugger

    千次阅读 2020-02-13 21:22:11
    vue项目出现Unexpected 'debugger' statement no-debugger 解决: 1.点击灯泡 2.点击Suppress 3.出现//eslint,问题解决
  • Google cloud debugger

    2020-12-01 22:56:29
    <div><p>This PR introduces google-cloud-debugger gem to the family. It contains the Debugger GAPIC client and instrumentation for Debugger.The GAPIC client is similar to other GAPIC generated clients ...
  • Debugger not running

    2020-12-09 05:10:28
    m trying to run python debugger, but I can't run on any command this is my project file <pre><code>json { "folders": [ { "path": "D:\\Amjad\\Python_project" } ], &#...
  • affinic debugger

    2020-02-18 13:54:18
    之前一直使用affinic debugger 调试代码。该软件可以免费使用一个月。也有去找绿化的软件,翻墙之后只是有linux版本。win版本未找到。在吾爱破解网站上也没有找到有用的信息。 最近几天找到一篇相关文章,墙裂推荐:...
  • debugger使用

    2020-03-16 14:32:26
    在需要调试的地方写上debugger,保存代码 打开f12 debugger快捷键 ①进入下个断点 ,快捷键F8,如果有多个断点,点击时可以直接进入下个断点,忽略断点内部所有逻辑。 ②忽略代码内部实现,进入下个方法 ,快捷键 ...
  • ZendDebugger

    2012-03-16 12:51:56
    ZendDebugger zend studio开发工具的调试工具
  • <div><p>There have been a few reports about issues with the debugger, and in some cases having to restart VS Code to make it work again. The following comments seem to indicate that we are not ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 30,073
精华内容 12,029
关键字:

debugger