CTFHub技能树-请求方式

题目描述

打开后得到如下的页面

题目考点

HTTP Method

解题思路

由题意得知,本题所涉及的知识为HTTP的八种请求方式,起初按网页的文字,尝试用 GET 方式进行解题,但是无解。在查询了有关于HTTP请求方式的相关信息后发现,HTTP支持自定义请求方式,结合“CTF**B”不难联想到,我们应该自定义一个名为“CTFHUB”的HTTP请求方式,故我们用Burp suite进行抓包及改包。

改包:更改请求方式GET为CTFHUB:

得到的结果如下图所示:

有关知识

序号 方法 描述
1 GET 请求指定的页面信息,并返回实体主体。
2 HEAD 类似于 GET 请求,只不过返回的响应中没有具体的内容,用于获取报头
3 POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST 请求可能会导致新的资源的建立和/或已有资源的修改。
4 PUT 从客户端向服务器传送的数据取代指定的文档的内容。
5 DELETE 请求服务器删除指定的页面。
6 CONNECT HTTP/1.1 协议中预留给能够将连接改为管道方式的代理服务器。
7 OPTIONS 允许客户端查看服务器的性能。
8 TRACE 回显服务器收到的请求,主要用于测试或诊断。
9 PATCH 是对 PUT 方法的补充,用来对已知资源进行局部更新 。

要注意的是:

  1. 方法名称是区分大小写的,当某个请求所针对的资源不支持对应的请求方法的时候,服务器应当返回状态码405(Mothod Not Allowed);当服务器不认识或者不支持对应的请求方法时,应返回状态码501(Not Implemented)。
  2. HTTP服务器至少应该实现GET和HEAD/POST方法,其他方法都是可选的,此外除上述方法,特定的HTTP服务器支持扩展自定义的方法。

另解

在查询有关知识的时候看到了本题的第二解法,利用 curl 命令对本题求解
在命令行中输入curl -v -X CTFHUB http://challenge-aeda8a453e8c041f.sandbox.ctfhub.com:10080/index.php
得到如下的结果:

curl 的相关用法

本题结束。

posted @ 2020-11-14 19:13  pengchen1019  阅读(448)  评论(0)    收藏  举报