ctf-web-web前置技能-http协议

HTTP协议-请求方式

一、HTTP请求方式

  HTTP请求方式分为8种,常见的为get,post、head。具体方式及效果如下:

 

 

 

 二、CTF题目

  

 

 

 

  1、点击网页地址进入

 

 

   2、网页提示:HTTP方法是GET,使用CTFHUB方法将会得到你的flag。Hint:如果你得到了HTTP Method Not Allowed的错误,你应该请求index.php。所以这里使用windows下的cmd命令访问目标网页,然后提交获取到的flag:ctfhub{7adf03fc1bfc20bf4df9c37df951b8e0fc3a68bd}

 

  PS:curl命令进行网页访问等操作,curl -X get:发送get请求获取网页资源,这里用的是curl -X CTFHUB。

 

——————————————————————————————————————————————————————————————————————————————————————————————————

 

 

 

 HTTP协议-302跳转

 

一、302,301

  302和301都代表资源被移动,但是301表示资源永久移除;302代表资源暂时被移动,服务器会返回个正确的地址再次进行网页请求。

 

二、题解

 

 

 

 

  1、点击网页

 

 

 

 

 

再次点击“Give me Flag”

 

 

 

 

  2、打开网页源查看,发现进行了302跳转

 

 

 

 

 

  3、然后使用抓包工具burp suite抓包发送数据查看回显

 

 

 

 

 

  4、最后提交flag即可

 

————————————————————————————————————————————————————————————————————————————————————————————————————

 

HTTP协议-Cookie

一、Cookie

cookie是什么呢?
  cookie是由后端服务器端创建保存在客服端一种数据库结构。浏览器请求和后端服务端响应都会携带创建的cookie来回传输。cookie在传输时存储在请求头和响应头中。
 
  cookie的作用: 保存用户与后端服务器的交互状态。
 
 
二、题解

 

   1、点击网址

 

 网页提示只有admin才能获取flag,根据不知道就抓包的基本方法,我们先抓个包。

 

  2、请求报文里面的Cookie:admin=0,0为否,1为真,我们把0改为1然后发送。

 

 

  3、获取Flag,提交

 

——————————————————————————————————————————————————————————————————————————————————————————————————————————————

 

 

 

HTTP协议-基础认证

一、基础认证

  基础认证就是输入账号密码,这里就是密码爆破,一个一个挨着试。

 

二、题解

 

   1、题目给出了一个网址一个附件。附件为密码爆破的字典文件,里面全是一些常见的不常见的、随机组合的密码,然后我们点开网页;网页提示 ”Do u know admin“ 说明账户为admin,只需要爆破密码

 

 

 

 

   2、随便输入账户密码,如:1,2;然后进行万精油操作,抓包。

 

  3、认真分析这个请求报文,发现我们输入的用户密码1,2莫嘚呢,看到最后一行,authorization“授权”,MToy是什么,会不会是加密的。接着我们就打开加密解密网站  www.cmd5.com  来解密,发现确实是我们输入的账户密码。

 

 

  4、看懂请求报文里面上传的格式 “用户名:密码”,然后就是进入抓包软件进行爆破了。

    (1)首先将报文发送到intruder模块

 

 

    (2)选中"MToy"点击右边”Add &“ 将 “MToy” 添加为变量

 

 

    (3)选择payloads子模块,选择自定义迭代器;

 

 

位置 Position 选择2,然后点击 Load.. 加载字典文件;

 

 

 

然后位置 Position 选择1,在 Add 栏输入用户名 “admin:”;

 

 

 

然后在有效载荷处理这栏add添加解码文件;

 

 

 

 

 

 

 

 

 

    (4)点击右上角开始爆破,在弹出界面点击Length排序,找出不同的那一个就是最终密码,然后解密

 

 

 

 

 

 

 

    (5)输入账户密码获取Flag提交。

 

 

 PS:up主刚开始选择解码文件base64时选成了 “encode ”,后面才知道base64-encode是编码的程序,base64-decode才是解码,hhh

 

——————————————————————————————————————————————————————————————————————————————————

 

HTTP协议-响应包源代码

一、源代码

  直接右键点击网页查看源,或者F12查看

二、题解

 

 

   提交即可

 

posted @ 2020-07-15 22:30  禾子日生  阅读(780)  评论(0)    收藏  举报