美文网首页CTFLinuxCTF
如何更高效地调试你的shellcode

如何更高效地调试你的shellcode

作者: 王一航 | 来源:发表于2017-03-17 15:58 被阅读96次

    今天发现了 gdb 的一个功能很好用 , 分享出来 :

    GDB 的宏定义功能
    

    具体的使用方法是 :

    键入 define [KEYWORD]
    

    然后输入你想要在输入 KEYWORD 的时候执行的命令
    每一行输入一条
    输入 end 可以结束输入
    这里总结了一个比较简单的宏定义 :

    define k
    si
    printf "--------------------------------------   [Stack]   --------------------------------------\n"
    x /16xb $esp
    printf "-------------------------------------- [Registers] --------------------------------------\n"
    printf "[eax]:%08x\t[ebx]:%08x\t[ecx]:%08x\t[edx]:%08x\n", $eax, $ebx, $ecx, $edx
    printf "[esi]:%08x\t[edi]:%08x\t[esp]:%08x\t[ebp]:%08x\n", $esi, $edi, $esp, $ebp
    printf "[cs] :%04x\t[ss] :%04x\t[ds] :%04x\t[es] :%04x\t[fs] :%04x\t[gs] :%04x\n", $cs, $ss, $ds, $es, $fs, $gs
    printf "[eip]:%08x\t[eflags]:%08x\n", $eip, $eflags
    printf "--------------------------------------   [Codes]   --------------------------------------\n"
    x/8i $pc
    printf "=========================================================================================\n"
    end
    

    执行效果如下 :

    Paste_Image.png Paste_Image.png

    相关文章

      网友评论

        本文标题:如何更高效地调试你的shellcode

        本文链接:https://www.haomeiwen.com/subject/mgkenttx.html