zoukankan      html  css  js  c++  java
  • gdb用法

    PWN入门使用 2018-02-16 16:10:23

    GDB是一个由GNU开源组织发布的、UNIX/LINUX操作系统下的、基于命令行的、功能强大的程序调试工具。

    敲gdb进入gdb-peda

    file pwn1 #选择加载的文件

    gdb -q

    # -q 静默模式

    gdb: r(run ) #执行

    gdb:disas main   #反编译main()函数 经常用

    gdb:b (break) #设置断点

    b func_name #对函数下断点

    b *addr   #对地址下断点

    info b   # 查看断点

    分别对应寄存器取值情况/代码/栈的情况

    info r(egister) #查看寄存器情况

    ni #单步调试

    si #step into 步进 进到某个函数里面

    bt  #backtrace 查看现在的堆栈情况   对于了解程序执行比较有用

    c  #continue 继续执行到下一个断点


    打印地址的值

    x/wx adress #打印该地址的值,w代表 word.在32位嵌入式系统中,一个字WORD占32bit,即4个字节,1个字节=bit。

    如x/10wx 0xffffce90 #10代表打印10个,w代表32位,可以换为b/h/g 分别对应1  2  8byte, x可以替换为 u (unsigned int ) s(string) d(10进制) i(指令)

     


    set *addr =value #设置地址的值

    list  #列出源码

    print val_name #打印变量值

    info locals #查看所有局部变量的值

    在cmp eax edx处下断点 然后r执行

    set $eax=$edx 敲击回车。。


    gdb-peda 版本中的好用的功能

    elfsymbol #可以把程序中的函数以及地址列出来 做ROP特别有用

    vmmap #查看进程中的权限

    readelf  #查看section

    find 字符串  #查找在内存中查找字符串 如/bin/sh(就是shell)

     

  • 相关阅读:
    MPTCP iperf 发包方式
    Java 中的覆盖@Override注解 写与不写的一点点理解
    servlet 方法有哪些
    java 获取HTTP 头部信息
    七种访问方式(get post及上传文件)
    Enumeration接口的用法
    HTTP头部详解及使用Java套接字处理HTTP请求
    以debug模式启动tomcat服务器
    第一个servlet 使用out输出html文档
    基于Servlet3.0的文件上传
  • 原文地址:https://www.cnblogs.com/rookieDanny/p/8451298.html
Copyright © 2011-2022 走看看