WP CTF-Web 攻防世界 GFSJ0475 get_post

「场景」

进入场景后提示

请用GET方式提交一个名为a,值为1的变量

「思路」

根据提示在url后加上?a=1,回车发送请求。出现新提示。

请再以POST方式随便提交一个名为b,值为2的变量

打开brupsuite,配置本地代理为brupsuite中proxy的地址和端口号,刷新浏览器页面,brupsuite捕获到请求。
将请求发送到Repeater。

切换到Repeater标签页

  • 将GET修改为POST
  • 增加Content-Type: application/x-www-form-urlencoded
  • 增加b=2

点击Go,发送请求,得到flag

「工具」

  • Chrome
  • Brupsuite

「知识拓展」

Content-Type详解

什么是Content-Type

在HTTP协议消息头中,使用Content-Type来表示媒体类型信息。它被用来告诉服务端如何处理请求的数据,以及告诉客户端(一般是浏览器)如何解析响应的数据,比如显示图片,解析html或仅仅展示一个文本等。
Post请求的内容放置在请求体中,Content-Type定义了请求体的编码格式。数据发送出去后,还需要接收端解析才可以。接收端依靠请求头中的Content-Type字段来获知请求体的编码格式,最后再进行解析。

Content-Type的格式

Content-Type:type/subtype ;parameter

  • type:主类型,任意的字符串,如text,如果是*号代表所有;
  • subtype:子类型,任意的字符串,如html,如果是*号代表所有,用“/”与主类型隔开;
  • parameter:可选参数,如charset,boundary等。

POST请求常见Content-Type类型

  • application/x-www-form-urlencoded 默认form表单
  • application/json 目前最常用的POST方式
  • multipart/form-data 用于文件上传
posted @ 2023-06-28 21:45  没事摸摸小肚子  阅读(283)  评论(0编辑  收藏  举报