地址:https://www.cnblogs.com/widget90/p/7650890.html,一些常用的http头
地址:BUUCTF在线评测
开始时页面长这样,随便输一个用户名和密码
可以登入 ,发现可以点击下面的hello,123
页面再次跳转,发现是一个博主的学习笔记经验分享,没有方向回到最初页面。
转换思路,假装自己是admin,
不可以
不输密码试一下
血压上来了!!!直接使用burp抓包!,注意要在输入密码登入时抓包(冷静)
看不出来什么,放入repeater进行<( ̄︶ ̄)↗[GO!]
拉到下面发现这个,一个后缀是.php的纯文本文件,需要联想到之前所做的URL的笔记
替换,得到下一个网页。
得到这个网页,提示我们,出现一个错误,无厘头,试着刷新一次。
出现下一个提示,无厘头,继续试着刷新,没用,那就试着抓这个页面的数据包
同样送到repeater试着<( ̄︶ ̄)↗[GO!]一下。
Response没看出啥来,这时看到cookie头中有time=一串数字,试着改一下,(这时候结合给到的99years)
<( ̄︶ ̄)↗[GO!],有变化了(*^_^*)
这样看来,最后一句话就是给我们的提示了,它说,该站点仅针对来自本地主机的用户进行了优化,这就是告诉我们仅支持本地操作,思考一下有哪个HTTP头是与本地相关的
X-Forwarded-For 一个事实标准,用来标识客户端通过HTTP代理或者负载均衡器连接的web服务器的原始IP地址
X-Forwarded-For:原始IP地址
输入后<( ̄︶ ̄)↗[GO!],告诉我们不可以用X-Forwarded-For,这下咋办,想一想老师说如果不能用X-Forwarded-For那我们就可以用client-ip,这两个相互可以代替,试一下
client-ip=X-Forwarded-For:原始IP地址
发现可以,继续根据提示进行下一步操作,其实做到这里我们就意识到这道题考察的是我们对HTTP头的了解应用。
提示说,他的网站只针对来自gem-love.com的用户进行了优化,就是让我们思考什么头后面可以跟host
Referer 设置前一个页面的地址,并且前一个页面中的连接指向当前请求,意思就是如果当前请求是在A页面中发送的,那么referer就是A页面的url地址
Referer:host
进行到下一步,这一步考察的是浏览器版本,也就是User-Agent,UA头,但请注意,这时候他给我们设置了一个陷阱当我们将浏览器版本换为Commodo 64后,发现无法进行到下一步,通过搜索Commodo 64后我们知道
Commodo 64其实是Commodore 64,少了两个字母,(是不是前面的referer头拼写是错的,然后出题人就把Commodo 64改成错的,猜测~~~)
然后输入正确的浏览器版本
这一步是让我们使用邮箱头
From 设置发送请求的用户的email地址
From: user@example.com
到这一步,让我们运用代理头
Via 通知服务器代理请求
Via: 1.0 fred, 1.1 example.com (Apache/1.1)
ok,最后,经过无限套娃之后,我们到达了最后一步,观察绿色代码,后面有两个等号,猜测是Base64编码
终于,经过Decoder解码后成功得到flag。
总结:这题考查我们对http头的运用,难度不高,重要的是细致,特别是time:后面这串数字,他们有多少位,我们输入9的位数就不能少于这个位数,还有就是各种头的运用了。