打开网页,开启burp suite 的Proxy中的interceptison on,刷新网页,生成抓包数据。
右键执行 send to repeater,打开repeater,执行send。发现这样一句话:it must come from https://www.penson.com,说明需要进行url的伪造。
在左侧增加:referer:https://www.penson.com。继续send。
出现如下提示信息:
要求必须使用:penson browser浏览器。将user-agent的参数修改为:penson browser。执行send。
修改前 修改后执行send后,出现如下提示:
你的主机必须是本地主机,此时需要使用x-forwarded-for,来伪造主机。在左侧输入:x-forwarded-for:127.0.0.1。执行send。
又出现新的提示:you must satisfy this condition $_POST['a'] > 1 && intval($_POST['a']) == 1 && !is_numeric($_POST['a'])
此时需要用post传入一个值,但是这个值不能是数字,而且要大于1,并且intval($_POST['a']) 的值要等于1,于是在左侧执行:change request methon,输入a=1.2a 。
flag依然没有出现,又有了新的提示:
于是更改:POST /?cmd=;ls / HTTP/1.1,出现以下信息:
最后,反复绕过限制,终于得到了flag.
最后一步需要绕过cat、空格和flag的过滤,才能最终完成任务。
网友评论