前置技能1-http协议(请求方式+302跳转+Cookie+基础认证+响应包源代码)

一.题目链接:

二.基础知识

2.1 http/1.1定义的8种请求方式分别是?:

  • 哪八种
      1.get --> 请求获取指定资源,用于数据的读取,不会产生副作用,eg:获取网页内容或API数据
      2.post--> 向服务器提交数据(如表单,文件上传),可能导致资源创建或修改,eg:用户注册等
      3.put --> 替换目标资源的所有当前表示,向指定资源位置上上传最新内容,eg:更新用户全部信息
      4.delete --> 请求服务器删除指点资源,eg:删除一篇博客
      5.head --> 与get类似,但仅请求响应头,不返回响应体,eg:预检文件大小或类型
      6.trace --> 回显服务器收到的请求,主要用于测试或诊断
      7.connect --> 建立与目标资源的隧道(通常用于https代理),eg:将请求转换为透明的TCP/IP隧道
      8.options --> 获取目标资源支持的通信选项,eg:检查服务器是否支持PUT方法

2.2 介绍一下不同的重定向

  1.301:-- >永久性重定向。该状态码表示请求的资源已被分配了新的URL,以后应使用资源现在所指的URL。也就是说,如果已经把对应的URL保存为书签了,这时应按Location首部字段提示的URL重新保存
  2.302 -- >临时重定向。该状态码表示请求的资源已经被分配了新的URL,希望用户本次能够使用新的URL访问
  3.303 -- >改状态码表示请求对应的资源存在着另一个URL,应使用GET方法定向获取请求的资源
  4.307 -- >临时重定向。该状态码与302found有着相同的含义。尽管302标准禁止POST变换成GET,但实际使用大家并不遵守。307会遵循浏览器标准,不会从POST变成GET。但是,对于处理响应时的行为,每种浏览器有可能出现不同的行为。
  利用场景
  301 --> 缓存投毒,持久化恶意跳转,诱导用户访问长期有效的恶意URL
  302 --> 开放重定向,信息泄露,篡改location头进行钓鱼
  303 --> 绕过POST限制,强制GET跳转参数暴露
  307 --> http方法混淆,保持post方法触发后端逻辑漏洞

2.3 介绍一下burp里的custom iterator这个攻击载荷

  • 概念:中文名:自定义迭代器的高级攻击载荷playload类型,准许组合多个不同的输入列表,并按照自定义规则生成复杂的测试数据。
  • 核心功能
      1.多列表组合:将多个playload列表按规则拼接
      2.灵活迭代:可以控制不同的迭代顺序
      3.格式化输出:支持添加固定前缀,后缀或分隔符(如:admin:password)

2.4

三.开始解题

3.1.请求方式

1.它说只要用ctfhub请求的方法就把flag给我,于是我们尝试修改请求方法,将GET改为CTFHUB

2.通过burp抓包改包进行修改,成功

3.2.302跳转

1.题目说是重定向,那我们就先抓包重放,再发送,就可以得到flag了

3.3.cookie

1.阅读题目,什么??只有admin才能读取flag?于是抓包看看cookie中admin=0?改为1试试

3.4.基础认证

1.先读题目,看来和账户密码有关

2.得知附件是账户密码爆破常用的文本,于是使用burp爆破,先输入账户密码,再抓这个包,得到下面base64编码,我们解码看看,正是我们输入的账户密码


3.于是就选择在这两个地方进行爆,那么问题来了,要整成base64编码的样子吗?这个功能在burp里可以很好的实现,根据repeater重放,已经给了我们一个提示说,登录用户为admin

4.于是我们针对密码来进行爆破,操作如下
1.输入正确的登录名admin,随即输入一个密码,进行抓包:

2.攻击载荷这里一共设置三个参数:


3.点击爆破,找到长度不一样的密码,那个就是密码了

4.再添加base64加密这个选项,注意后面的正则匹配一定不能选

3.5.响应包源代码

1.果然题目就告诉了我们答案,直接F12查看源代码,就得到flag了哇!!

posted @ 2025-04-21 22:58  sun010  阅读(17)  评论(0)    收藏  举报