目录

  1. 1. 前言
  2. 2. Web
    1. 2.1. 真·签到
    2. 2.2. 真的是文件上传吗?

LOADING

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

要不挂个梯子试试?(x

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

NSSCTF Round#17

2024/1/28 CTF线上赛 NSS
  |     |   总文章阅读量:

前言

web疑似编码有点多了

Web

真·签到

页面标题提示看robots.txt

hint:E794A8E688B7E5908DE7869FE68289E590972CE696B0E7949FE8B59BE58FAFE98187E8A781E8BF87E593A67E0AE8AEB0E5BE97E794A8E688B7E5908DE585A8E794A8E5B08FE58699E593A6EFBD9EEFBD9E
username:13 44 21 15 42
password:LF5GY3KZKRVTCT2EM54FUV2FO5GVIVLZJZ5GW6C2IRJGQTT2KU2VUR2GNJNEIYZVLJDVKPI=

hint是hex,username是敲击码(解码时记得删掉空格),password是base32+64

用户名熟悉吗,新生赛可遇见过哦~
记得用户名全用小写哦~~
ctfer
c9fa95881ea0152791d4a759dacd79de	(md5爆破得Nss)

账密为ctfer/Nss

登录来到w4it111ng.php,ctrl+u查看源码

image-20240128143001152

Fin4l.php

告诉我们Give me what you want,看来是要给个参数want,试了一下发现这里啥都没有,get传参want=flag会让我们回去看前端

F111n4l.php

<?php
error_reporting(0);
highlight_file(__FILE__); 
include('flag.php');  
if (isset($_GET['nss'])){
    if ($_GET['nss'] == 732339662){
        assert("is_numeric($_GET[nss])==0") || die('oops!此路不通!!');
        echo $FLAG;
    } else{
        echo "这里不是说了吗!!!必须是 732339662 (招新群群号!)";
    }
}else{
    echo "啊?这是什么新型比较?";
    echo "<br/>";
    echo "是不是题错了啊";
}

一眼assert命令注入

传入?nss=732339662)or(0即可


真的是文件上传吗?

进入题目,给我们一串brainfuck

++++++++[>>++>++++>++++++>++++++++>++++++++++>++++++++++++>++++++++++++++>++++++++++++++++>++++++++++++++++++>++++++++++++++++++++>++++++++++++++++++++++>++++++++++++++++++++++++>++++++++++++++++++++++++++>++++++++++++++++++++++++++++>++++++++++++++++++++++++++++++<<<<<<<<<<<<<<<<-]>>>>>>>-------.>-.++++++.<<<<<.>>>>>++.<++++++++.>---------.++++++.<<<<<.>>>>.<<<<.>>>>+++++++.+.+++++.>.<<<-.<<<------.>>>++++++++.>>-----.>++.<----.<<<<.>>>>++++++++.--------.<<<<.>>>>----.<<<<.>>>>+++++.++++++.-----------.++++++.<<<<+....<.>>>------.>>+++++++.----------.<<<<-.>>>>>+++.----------.++++++.<<<<<.>>>>>++.<+++++.+++..<<<<.>>>>----.-------.>-.<.<<<<.>>>>+++++++.+.+++++.>--.<<<<<+.

解码得

You want a hint?
Give me a flag!!!!
And you will hava hint!

结合上一题的经验,我们传入?flag=1,回显

image-20240128151018074

ctrl+u,发现jsfuck和一堆base编码

控制台里面跑一下jsfuck,得到传个木马?

尝试传点东西

image-20240128152241667

发现这里会打开文件并根据里面的内容进行python命令执行

那就直接读环境变量得到flag

__builtins__.__import__('os').system('env')

image-20240128152410603