目录
Method-1
getshell的过程中需要用到onegadget来简化做题,因此需要ruby的环境进行安装onegadget。一般来说ubuntu18以上的版本都可以直接apt安装one_gadget,但是16.04的版本有点久远,因此需要源码编译安装。
ruby源码下载链接:下载 Ruby (ruby-lang.org)http://www.ruby-lang.org/zh_cn/downloads/
这里以ruby3.0.5为例子。
下载好ruby的源码后,在ubuntu系统中解压压缩包,并进入对应的文件夹中(可以用以下命令)
tar -zxvf ruby-3.0.5.tar.gz&&cd ./ruby-3.0.5
接下来就在ruby-3.0.5的文件夹中进行编译安装。这里因为笔者的环境问题,因此需要在编译的时候加入openssl的路径,否则在使用gem的时候会存在和ssl相关的问题。
如果需要将编译结果创建在指定位置,可以向--predix参数传入你想要创建的位置,建议用默认配置创建在/usr/local文件夹下。
./configure --with-open-ssl=/usr/lib/ssl [--prefix=dir]
make
sudo make install
openssl的安装路径,可以进行查看。
openssl version -a
如果在前面的安装时忘记加上openssl的路径,可以在configure脚本中加上相应路径,重新进行一次编译即可。
最后就可以正常安装one_gadget (ps:感谢S4n_v1师傅提醒
sudo gem install one_gadgt
------------------------------------------------------分割线-----------------------------------------------------------------
Method-2
如果上述方法觉得过于麻烦,或者不能成功安装one_gadget,可以尝试以下方法:
<tips: 本方法需要时间较长,下载时请耐心等待>
下载网址:
Ruby packages for Ubuntu - Brightboxhttps://www.brightbox.com/docs/ruby/ubuntu/#installation
在apt中添加PPA源并更新源
sudo add-apt-repository ppa:brightbox/ruby-ng
sudo apt-get update
删除原有的ruby(如果你有安装过ruby环境的话
sudo apt-get purge --auto-remove ruby
安装ruby 2.6版本
sudo apt-get install ruby2.6 ruby2.6-dev
最后,安装one_gadget即可,seccomp_tools也可以接着安装了。
sudo gem install one_gadget
感谢Shura_phoenix大佬的文章指点,附上搬运地址
安装seccomp-tools以及遇到的问题 (yuque.com)https://www.yuque.com/chenguangzhongdeyimoxiao/xx6p74/pn5v60