zoukankan      html  css  js  c++  java
  • CTFHUB-HTTP协议

    前言

    在CTFHUB这个平台上看到了有一组题是HTTP类型的。还蛮好奇的,想着试着玩儿一下。

    请求方式

    方法一

     上面提示我们HTTP协议中定义了八种请求方法。这八种都有:

    1、OPTIONS
    返回服务器针对特定资源所支持的HTTP请求方法,也可以利用向web服务器发送‘*’的请求来测试服务器的功能性
    2、HEAD
    向服务器索与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以再不必传输整个响应内容的情况下,就可以获取包含在响应小消息头中的元信息。
    3、GET
    向特定的资源发出请求。注意:GET方法不应当被用于产生“副作用”的操作中,例如在Web Application中,其中一个原因是GET可能会被网络蜘蛛等随意访问。Loadrunner中对应get请求函数:web_link和web_url
    4、POST
    向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。 Loadrunner中对应POST请求函数:web_submit_data,web_submit_form
    5、PUT
    向指定资源位置上传其最新内容
    6、DELETE
    请求服务器删除Request-URL所标识的资源
    7、TRACE
    回显服务器收到的请求,主要用于测试或诊断
    8、CONNECT
    HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。

    然后我们打开环境

     这大概意思就是说需要我们使用CTF**B的请求方法才能给我们flag,可是这八种方法当中并没有CTF**B,有点儿意思了昂。那我们就先抓包吧,把请求方法强行改成CTF**B。

    这里我们猜测CTF**B或许就是CTFHUB。

     我们把这个GET请求方法改成CTFHUB请求方法

     然后我们再放包,这样我们便可拿到flag

     方法二:

    我们可以在cmd窗口当中使用curl命令 curl -v -X CTFHUB http://challenge-a4a48607da63e196.sandbox.ctfhub.com:10080/index.php 

    也可拿到flag,大家可以参考curl命令大全

     302跳转

    打开环境,进入页面。点击链接发现没什么用

     题目是302跳转,我们单击链接出现的是index.html。那就是了,302重定向。

    什么是重定向

    HTTP重定向:服务器无法处理浏览器发送过来的请求(request),服务器告诉浏览器跳转到可以处理请求的url上。(浏览器会自动访问该URL地址,以至于用户无法分辨是否重定向了。) 
    重定向的返回码3XX说明。Location响应首部包含了内容的新地址或是优选地址的URL。

    状态码

    301:在请求的URL已被移除时使用。响应的Location首部中应该包含资源现在所处的URL。 
    302:与301状态码类似,但是,客户端应该使用Location首部给出的URL来零食定位资源,将来的请求仍然使用老的URL。

    那好我们还可以利用curl命令: curl -i http://challenge-9015d8e997a381c8.sandbox.ctfhub.com:10080/index.php 

    注意,这里我们要将html改成php,要请求的页面是同一目录下的index.php而非html

     这样便可以拿到flag

    Cookie

    打开环境,页面提示我们只有admin才能拿到flag,这肯定是要我们进行cookie欺骗了,那我们先抓包

     将admin=0改成admin=1造成cookie伪造这样就可以拿到flag了

    基础认证

    当我们下载好环境之后,发现题目下面有个附件,我们先下载下来看看,发现里面有好多东西,好像是一个密码集。类似一个字典。我们打开页面

     当我们单击的时候,会弹出一个框来,上面需要我们输入用户名和密码。用户名得知是admin。那我们需要密码。而刚才我们下载了一个附件,那里应该存放的是密码。这里我们就需要爆破一下,而那个就密码集就是我们需要的字典。

    我们输入admin;admin,然后抓包

     它是以base64加密的,我们发送报文

     把我们下载的字典给添加上。

     

     开始爆破

     这样就成功了

    响应包源代码

    这道题一定是搞笑来的。我们打开页面之后发现是一个贪吃蛇的游戏,我还以为多难,尝试了一下抓包,啥都没有,结果在源代码里发现了flag

  • 相关阅读:
    Spark基础
    flink杂记
    算法
    算法小结
    Java内存模型
    LeetCode---Backtracking && DP
    LeetCode---Sort && Segment Tree && Greedy
    LeetCode---Depth-first && Breadth-first
    LeetCode---Bit Manipulation && Design
    MD5
  • 原文地址:https://www.cnblogs.com/awsole/p/14675330.html
Copyright © 2011-2022 走看看