指定参数访问类型
要求从本地访问,则增加字段 x-forwarded-for:127.0.0.1
Referer:是指从哪个网站跳转过来的
一句话木马
<?php @eval( $_post['a'] ); ?> (os:姐不理解但大受震撼
语句解析
@符号
@符号 表示后面的语句即使执行错误,也不报错。
eval()函数
eval()函数的作用是把括号内的字符串全部当作php代码来执行。
$_POST['a']
post方法是html中<form>标签中的方法,在页面中,所有的POST方法都会(由submit输入方式)向action中的php文件返还信息,而且因为这样的php文件是连着着数据库的,甚至可以直接对文件进行操作,所以说它是一句话木马。 这里 的a就是参数名 或者说是连接密码
(蚁剑)
cookie
在网址后面加上/f14g.txt
双写绕过
(在第三个字符串中,看有没有第一个字符串的内容,有的的话,就替换为空,不是空格,)
这里的include 'flag.php' 就是调用这个页面,链接是:
想要到work的那个页面去,所以链接改为:
这样就可以满足replace函数的要求,从而replace函数运行;而且replace函数生效后,
yy1ng_pretty_handsome1ng_pretty_handsome,会恢复原本的y1ng_pretty_handsome。
补充:在链接后面加上 ?参数名=xxxx 是isset ($_get[' xxx'])方法才可以!
php基础
多重验证和data协议、filter协议
存在多个参数值的验证
这里是post方法,可以用hackbar
第一个是看post的数据有没abc 第二个是说post的数据有没http 第三个说不能有hello123 但是第四个又要是hello123
所以 可以使用 data协议绕过验证,
(那个aG..jM是hello123的base64的编码 )
使用fliter协议查看flag.php源代码