博客
关于我
[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/

你可能感兴趣的文章
PHP支付宝SDK使用,电脑网页支付
查看>>
php支付宝手机网页支付类实例
查看>>
PHP改变数组key值的方法
查看>>
php教程之php空白页的原因及解决方法
查看>>
PHP数据库操作
查看>>
PHP数据文件过大,导致PHP加速器eaccelerator在PHP5.2版本下崩溃
查看>>
RabbitMQ - 死信、TTL原理、延迟队列安装和配置
查看>>
PHP数据访问的多重查询(租房子查询)
查看>>
RabbitMQ - 如保证消息的可靠性?(消息确认、消息持久化、失败重试机制)
查看>>
RabbitMQ - 基于 SpringAMQP 带你实现五种消息队列模型
查看>>
php数组函数分析--array_column
查看>>
php数组去重复数据的小例子
查看>>
php数组实现:哈希 +双向链表
查看>>
PHP数组排序函数array_multisort()函数详解(二)
查看>>
php数组的几个函数和超全局变量
查看>>
PHP文件上传详解
查看>>
PHP文件锁
查看>>
php文本框输入制定文本,php – 当用户没有向文本框输入任何内容时...
查看>>
PHP时间戳和日期相互转换操作总结
查看>>
php时间戳知识点,php 时间戳函数总结与示例
查看>>