2.CTFhub技能树 web前置技能 http协议 302跳转


2.CTFhub技能树 web前置技能 http协议 302跳转

 

这题没有思路,看着别人的解析进行的做题

首先先了解什么是301跳转什么是302跳转,以及http重定向

(在http 1.0规范中有2个重定向——301和302,在http 1.1规范中存在4个重定向——301、302、303和307。)

301:永久重定向,如我们访问知乎 - 有问题,就会有答案2.CTFhub技能树 web前置技能 http协议 302跳转http://www.zhihu.com会跳转到 知乎 - 有问题,就会有答案2.CTFhub技能树 web前置技能 http协议 302跳转https://www.zhihu.com(我之前纠结为什么我输入改包时referer:https和http为何都可以发送服务器得到正确的flag,这就是答案),发送请求之后,就会返回301状态码,然后返回一个location,提示新的地址,浏览器就会拿着这个新的地址去访问。

像本题的我们访问 url/index.php

302:暂时性重定向,一条对网站浏览器的指令来显示浏览器被要求显示的不同的URL,当一个网页经历过短期的URL的变化时使用。一个暂时重定向是一种服务器端的重定向,能够被搜索引擎正确地处理。

303:继承了HTTP 1.0中302的实现(即原请求是post,也允许自动进行重定向,结果是无论原请求是get还是post,都可以自动进行重定向)。307:继承了HTTP 1.0中302的规范(即如果原请求是post,则不允许进行自动重定向,结果是post不重定向,get可以自动重定向)。
(如本题的10800/index.php被重定向为10800/index.html)

2.CTFhub技能树 web前置技能 http协议 302跳转

 通过HacKBar可以找到10800的url下和点击Give me Flag跳转后得到的10800/index.html下所含的域名不同

 2.CTFhub技能树 web前置技能 http协议 302跳转

 

点击10800/index.html下所含的/index.php域名,发现又跳转回/index.html.得知是这两个域名发生302跳转

下一步在Linux环境下用curl进行抓取

打开kali,发现没有换源下的kali是无法进行curl抓取的

//换源教程:

https://blog.csdn.net/Fish_cyy/article/details/105797084?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163575727916780262516816%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=163575727916780262516816&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-3-105797084.pc_search_result_hbase_insert&utm_term=kali%E6%8D%A2%E6%BA%90&spm=1018.2226.3001.4187

//

2.CTFhub技能树 web前置技能 http协议 302跳转

 

换源之后使用curl进行抓取curl -v +要抓取的url(这里不能ctrlc ctrlv,要手动的复制粘贴)

Curl+v:获得更多的信息.v代表verbose模式.

//转自https://www.jianshu.com/p/fc0eb6c60816

需要学习到一些curl指令:

  1. 下载文件

1.1curl -# -o index.html www.baidu.com [-# 显示下载进度 -o(全称为--output 要另存为的文件名 将百度首页的信息进行下载另存为index.html文件]

1.2curl -O -C - https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz [断点续传,在下载过程中 按 Ctrl + C 就会停止下载,下次想接着上次的接着下载(也就是已经下载下来的不用再下载了,节省时间),加上参数 -C - (注意-C后面 还有一个 空格,还有一个英文中划线)

1.3curl -v www.baidu.com [-v 显示详细信息] 

1.4curl -s -o /dev/null www.baidu.com [ 不输出任何信息,且不显示传输进度,也就是将所有的输出,都输出到 黑洞,-o 表示指定输出的地方,-s 不显示传输进度,等价于 curl www.baidu.com > /dev/null 2 > &1 ]

//

得到flag

2.CTFhub技能树 web前置技能 http协议 302跳转

2.CTFhub技能树 web前置技能 http协议 302跳转 

 

上一篇:Piping Server – 支持 curl 的轻量级开源文件传输工具


下一篇:Caused by: java.lang.RuntimeException: can not run elasticsearch as root