关于One_gadget
题目描述存在用户输入获取函数指针,并通过函数指针调用相应的函数。需要注意的是,这种通过用户输入来获取函数指针并调用函数的做法极其危险。
one_gadget是libc中存在的一些执行execve(“bin/sh”,NULL,NULL)的片段,当可以泄露libc地址,并且可以知道libc版本的时候,可以使用此方法来快速控制指令寄存器开始shell。相当于system(“/bin/sh”),这种方式更方便,不用控制RDI,RSI,RDX等寄存器。
安装方式
sudo apt -y install ruby
sudo gem install one_gadget
使用方法
one_gadget libc.so.6
one_gadget并不总是可以获取shell,它首先要满足一些条件才能执行成功。