0x01 Intro
暑假跟着高中学弟偷偷混入了某科技大学的战队招新群 群公告里有他们迎新平台的地址,便跟学弟一起做了做,题目大部分比较简单,正好适合我这种菜鸡做 ,便记录WriteUp如下
0x02 Web
Get
看题目名便可知道利用get传参便可获得flag
当传入id=3 时便可得flag
Post
与上一题差不多,只不过换成了post传参
打开hackbar在post data里将id=3传过去即可
当然了,也可以用其他方法来用post方式传参
如按f12在网络里修改,CURL, 写脚本等
下面是一个post传参得py脚本
import requests r = requests.post('http://47.98.139.42:8083/post.php', data={'id' : '3'}) print(r.text)
Ip欺骗
打开后只发现了这句话
也就是说这个网站现在只允许本地地址访问,因此我们要伪造ip地址
服务器判断浏览者ip得方法一般有下面三个
l HTTP_CLIENT_IP头是有的,只是未成标准,不一定服务器都实现了。
l HTTP_X_FORWARDED_FOR 是有标准定义,用来识别经过HTTP代理后的客户端IP地址,格式:clientip,proxy1,proxy2。详细解释见 http://zh.wikipedia.org/wiki/X-Forwarded-For
l REMOTE_ADDR 是可靠的, 它是最后一个跟你的服务器握手的IP,可能是用户的代理服务器,也可能是自己的反向代理。
我们可以通过修改http头中的X-Forwarded-For或Clint-Ip来伪造ip
下面演示通过firebug来修改X-Forwarded-For
首先 按F12打开firebug,点击网络,选择编辑与重发
发送之后在响应中便可看到flag
当然了 也可用burp抓包修改头再放包来获取flag,在此不做演示
Cookie欺骗
由题目可知 修改cookie便可
抓包,修改cookie字段,再放包
Bingo
302转跳
302转跳:当域名或者网址临时弃用时,为了方便可以将此域名或网址重定向到新的域名或url。
点一下题目中flag后会跳到其他页面,而不是flag所指向的/redirect.php
我们可以通过抓包来阻止302跳转,也可以直接用curl获取页面信息,从而得到flag
Referer
Burp抓包,修改http头中的referer字段为https://www.google.com即可
HTTP Response
根据题意,应该是查看服务器的response相应的flag
或者
或者
import requests r = requests.get('http://47.98.139.42:8083/HTTPResponse.php') print(r.headers)