标签:url 重写 用户 nbsp 正式 服务 产生 设置 验证
关于速度要快这个题,我是拖了一周左右才解决,之前一直没弄懂,今天终于是正式解决了。之前也接触过这类题,知道要写脚本提交key,查看源码后就知道,
直接用burpsuite抓包,
然后发现这里出现了一个Cookie:PHPSESSION,(这就是个坑)我是一个脚本菜鸟,不知道这是个啥东西,然后当时就没在意,发送到Repeater,急急忙忙的就找flag去了,
go了之后就发现了flag,
把自己写的脚本贴上:
其实这个是完善后的代码,第一次写的没有第二次解码,看了别人写的之后才知道要解两次base64,然后post提交的data中的键是margin,这个在源代码中有说到,
然后写完之后高高兴兴的运行了,然而我运行了好几次一直都是提示:
傻傻的我以为是网速太慢。然后又运行了十几次。.............然后看了一篇猪哥的文章后才发现是session在捣乱。大家都知道cookie,因为HTTP无状态的特性而产生的,主要用于会话状态管理(如用户登陆状态、购物车、游戏分数或其他需要记录的信息)、个性化设置(如用户自定义设置、主题等)、浏览器行为跟踪(如跟踪分析用户行为等),浏览器对服务器发送登陆等的请求,服务器验证后将请求信息封装成cookie放在请求头中返回给浏览器,浏览器收到服务器返回数据,将请求头中的Set-Cookie保存下来,下次浏览器再请求服务器的时候把Cookie放在请求头中传给服务器,然而这是一种不安全的策略,用户信息保存在Cookie中,用户可以随意修改用户信息。
就是因为很不安全,存储的尺寸大小也有限制,就有了session,一种新的存储会话机制,Session翻译为会话,服务器为每个浏览器创建的一个会话对象,浏览器在第一次请求服务器,服务器便会为这个浏览器生成一个Session对象,保存在服务端,并且把Session的id以Cookie的形式发送给客户端浏览,而以用户显示结束或Session超时为结束。工作原理:1.当一个用户向服务器发送第一个请求时,服务器为其建立一个Session,并为此Session创建一个标识号(Sessionid)。2.这个用户随后的所有请求都应包括这个标识号(sessionid),服务器会校对这个标识号以判断请求属于那个session。
对于session标识号,有两种实现方式:Cookie和URL重写,session将数据保存在服务端,根据这个,我们就知道写这个脚本需要将session提交,不然服务器无法识别我们是哪一个session,是不会得到flag的,然后贴上可用的脚本:
上面一些session的知识为摘抄。————————————————————————————写完好有成就感!
标签:url 重写 用户 nbsp 正式 服务 产生 设置 验证
原文地址:https://www.cnblogs.com/pikaqiuaiteme/p/11278112.html