CTF_WriteUp_HTTP——302臨時重定向問題

HTTP——302臨時重定向

題目描述

點擊給出的連接後,沒有發生任何變化。php

解決方案

經過擦好看網絡請求,能夠發現發生了302臨時跳轉,因此咱們沒法經過瀏覽器直接訪問未跳轉的頁面,而flag 可能藏在咱們目前沒法訪問的頁面之中。因此咱們要想辦法去訪問未跳轉的原網站。html

而不強制跳轉咱們能夠經過curl指令來完成。由於curl默認是不跟隨重定向的。瀏覽器

成功在命令行中找出flag;bash

相關知識

什麼是HTTP 302 跳轉?

首先咱們要知道狀態碼,狀態碼是HTTP請求過程結果的描述,由三位數字組成。這三位數字描述了請求過程當中所發生的狀況。狀態碼位於響應的起始行中,如在 HTTP/1.0 200 OK 中,狀態碼就是 200。服務器

每一個狀態碼的第一位數字都用於描述狀態(「成功」、「出錯」等)。如200 到 299 之間的狀態碼錶示成功;300 到 399 之間的代碼表示資源已經轉移。400 到 499 之間的代碼表示客戶端的請求出錯了。500 到 599 之間的代碼表示服務器出錯了。 | 總體範圍 | 已定義範圍 | 分  類 | | -------- | ---------- | -------- | |100~199 |100~101 |信息提示| |200~299 |200~206 |成功| |300~399 |300~305 |重定向| |400~499 |400~415 |客戶端錯誤| |500~599 |500~505 |服務器錯誤|網絡

那麼302就屬於重定向的狀態碼,它表示你要訪問的資源在別的地方。 | | | | | ---- | ---- |----| |301|Moved Permanently |在請求的URL已被移除時使用。響應的Location首部中應該包含資源如今所處的URL| |302 |Found |與301狀態碼相似;可是,客戶端應該使用Location首部給出的URL來臨時定位資源。未來的請求仍應使用老的URL|curl

302表示臨時重定向,而301表示永久重定向;工具

PHP 302 跳轉代碼網站

<?php
    header("HTTP/1.1 302 found"); 
    header("Location:https://www.baidu.com");
    exit();
?>

PHP 301 跳轉代碼ui

<?php
    header("HTTP/1.1 301 Moved Permanently"); 
    header("Location: http://www.baidu.com/"); 
    exit(); 
?>

curl 指令

curl是一種命令行工具,做用是發出網絡請求,而後獲得和提取數據

咱們直接在curl命令後加上網址,就能夠看到網頁源碼。

curl www.baidu.com
$ curl www.baidu.com
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  2381  100  2381    0     0  20350      0 --:--:-- --:--:-- --:--:-- 20350<!DOCTYPE html>
<!--STATUS OK--><html> <head><meta http-equiv=content-type content=text/html;charset=utf-8><meta http-equiv=X-UA-Compatible content=IE=Edge><meta content=always name=referrer>
   ......
    
    
 </html>

curl 默認是不進行重定向的。若是要進行重定向,咱們須要加上-L參數

curl -L taobao.com

加上 -o 參數能夠保存網頁源代碼到本地

curl -o taobao.txt taobao.com -L

加上-i參數能夠看到響應報文

curl -i baidu.com
$ curl -i baidu.com
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    81  100    81    0     0    627      0 --:--:-- --:--:-- --:--:--   627HTTP/1.1 200 OK
Server:
Date: Wed, 25 Mar 2020 16:00:02 GMT
Content-Type: text/html
Content-Length: 81
Connection: keep-alive
Last-Modified: Tue, 12 Jan 2010 13:48:00 GMT
ETag: "51-47cf7e6ee8400"
Accept-Ranges: bytes

<html>
<meta http-equiv="refresh" content="0;url=http://www.baidu.com/">
</html>

除此以外,curl 的功能遠不止如此。之後再慢慢研究。

原文出處:https://www.cnblogs.com/dedragon/p/12571728.html

相關文章
相關標籤/搜索