step 1 首先要检查一下自己是否安装过gdb了 终端中输入gdb -v即可
step2 直接在终端中用wget命令下载:wget http://ftp.gnu.org/gnu/gdb/gdb-8.0.1.tar.gz,这是一个压缩包
wget http://ftp.gnu.org/gnu/gdb/gdb-8.0.1.tar.gz
step 3 解压刚才下载的压缩包,指令如下
tar -zxvf /home/kali/Desktop/gdb-8.0.1.tar.gz
/home/kali/Desktop/是我的文件位置
step 4 1.生成makefile文件,指令如下
./configure
2.make(这是为了check文件,大概需要花费3,4min的时间)
make
3.sudo make install,最后一步了,安装即可
sudo make install
4.检查,有两种方法 一种是文章最开始的gdb -v 第二种是直接在终端输入gdb,出现下图即可
在确保安装好gdb之后进行 在终端中输入两行指令即可
git clone https://github.com/longld/peda.git ~/peda
echo “source ~/peda/peda.py” >> ~/.gdbinit
这个题是攻防世界的逆向进阶题,大家可以试试看,链接是这个simple-check-100 我们跳过ida中的分析,直接进行到gdb-peda部分
指令如下:
gdb
file /home/kali/Desktop/task9_x86_64_46d01fe312d35ecf69c4ff8ab8ace75d080891dc
指令如下:
b mian
r
然后就会出现如下的图片
之后的指令如下:
n
n的意思是单步跳跃 直到看到这个图片
然后我们设置这个eax的值,指令如下:
set $eax=1
n跳过这步,按c,我们看到了flag如图: 附上一些指令: file 路径 附加文件 r 开始执行 c 继续执行 step 单步步入 next 单步步过 b *地址 下断点 enable 激活断点 disable 禁用断点 info b 查看断点 del num 删除断点 x/wx esp 以4字节16进制显示栈中内容 stack 100 插件提供的,显示栈中100项 find xxx 快速查找,很实用 s 按字符串输出 x 按十六进制格式显示变量。 d 按十进制格式显示变量。 u 按十六进制格式显示无符号整型。 o 按八进制格式显示变量。 t 按二进制格式显示变量。 a 按十六进制格式显示变量。 c 按字符格式显示变量。 f 按浮点数格式显示变量。 x/<n/f/u> n、f、u是可选的参数。 b表示单字节,h表示双字节,w表示四字 节,g表示八字节 但是实际的组合就那么几种: x/s 地址 查看字符串 x/wx 地址 查看DWORD x/c 地址 单字节查看 x/16x
希望大家可以学到一些东西,。