博客
关于我
[watevrCTF-2019]Cookie Store
阅读量:788 次
发布时间:2019-03-25

本文共 876 字,大约阅读时间需要 2 分钟。

为了确保用户能够购买到100美元的Flag Cookie,尽管只拥有的钱是50美元,我们需要在技术层面进行操作和修改。以下是分步骤的解决方法:

步骤一:抓包分析

在购买按钮上点击,使用工具如Fiddler或Burp Suite抓包记录HTTP请求和响应。这一步确认会发送请求到服务器,获取当前购物车的金额数据。通常,这种数据会嵌入在Session或Cookie中。

步骤二:解码Session

查看浏览器中的Cookie,找到包含Session数据的cookie。这类cookie通常使用base64编码。使用在线工具或编码解码工具,将Session数据解码,从而获取原始的数据,比如{"amount": "100"}或其他与金额相关的信息。

步骤三:修改Session中的金额

使用解码后的Session数据,修改金额字段从50改为100。确保修改后的数据格式与服务器预期一致,避免引发反 CSRF检查。使用自动化工具或脚本进行操作,或者手动输入修改后的值,根据具体的数据结构进行替换。

步骤四:发送修改后的Session

将修改后的Session数据发送到服务器,通常需要模拟用户登录或重新提交购买请求。这一步骤可能需要处理重定向或验证流程,确保服务器接受修改后的请求。

步骤五:处理响应和获取flag

在服务器回复之后,查看cookie中的新Session数据,可能会发现金额已经更新为100美元。检查是否有flag或验证token的变化,这些通常也会嵌入在Session或cookie中。使用相同的解码方法,再次对响应cookie进行base64解码,获取隐藏的flag。

注意事项:

  • 确保脚本的稳定性和可维护性,避免因过度修改导致服务器拒绝。
  • 在修改Session时,可以选择直接替换cookie的值或通过其他方式触发金额更新功能。
  • 注意服务器可能的反-CSRF措施,确保修改操作的有效性。
  • 检查所有步骤是否符合网站的隐私政策和规则,避免触发反馈机制。

通过以上步骤,我们可以绕过价格限制,成功购买到100美元的商品,同时获取所需的验证信息。

转载地址:http://qaouk.baihongyu.com/

你可能感兴趣的文章
netty——Channl的常用方法、ChannelFuture、CloseFuture
查看>>
netty——EventLoop概念、处理普通任务定时任务、处理io事件、EventLoopGroup
查看>>
netty——Future和Promise的使用 线程间的通信
查看>>
netty——Handler和pipeline
查看>>
Vue输出HTML
查看>>
netty——黏包半包的解决方案、滑动窗口的概念
查看>>
Netty中Http客户端、服务端的编解码器
查看>>
Netty中使用WebSocket实现服务端与客户端的长连接通信发送消息
查看>>
Netty中实现多客户端连接与通信-以实现聊天室群聊功能为例(附代码下载)
查看>>
Netty中的组件是怎么交互的?
查看>>
Netty中集成Protobuf实现Java对象数据传递
查看>>
netty之 定长数据流处理数据粘包问题
查看>>
Netty事件注册机制深入解析
查看>>
netty代理
查看>>
Netty入门使用
查看>>
netty入门,入门代码执行流程,netty主要组件的理解
查看>>
Netty原理分析及实战(一)-同步阻塞模型(BIO)
查看>>
Netty原理分析及实战(三)-高可用服务端搭建
查看>>
Netty原理分析及实战(二)-同步非阻塞模型(NIO)
查看>>
Netty原理分析及实战(四)-客户端与服务端双向通信
查看>>