i春秋——“百度杯”CTF比賽 十月場——Not Found(http請求方法,client-ip偽造ip)


這道題也是讓我很迷。。。

打開就是not found,讓我一度以為是服務器掛了,細看發現有個404.php

訪問也沒發現什么東西,只有來自出題人的嘲諷 haha~

不過在首頁的header中發現個奇怪的東西,X-Method:haha,先記着,繼續找線索

 

用cansina掃描發現一個文件 1.php,不過訪問也沒發現什么有用的東西,只提示 not here,plese trying

 

接着我是一頓各種嘗試,無果。。。

 

最后看過提示,才知道X-Method:haha是在告訴我們要注意http的請求方法,http共有8種請求方法,如下

序號  方法描述

1  GET  請求指定的頁面信息,並返回實體主體。

2  HEAD  類似於get請求,只不過返回的響應中沒有具體的內容,用於獲取報頭

3  POST  向指定資源提交數據進行處理請求(例如提交表單或者上傳文件)。數據被包含在請求體中。POST請求可能會導致新的資源的建立和/或已有資源的修改。

4  PUT  從客戶端向服務器傳送的數據取代指定的文檔的內容。

5  DELETE  請求服務器刪除指定的頁面。

6  CONNECT  HTTP/1.1協議中預留給能夠將連接改為管道方式的代理服務器。

7  OPTIONS  允許客戶端查看服務器的性能。

8  TRACE  回顯服務器收到的請求,主要用於測試或診斷。

 

逐個測試,當到了OPTIONS時,發現

 

經測試直接訪問這個url的話,頁面不變,所以想到應該還是依舊用OPTIONS方法,於是在訪問該url的時候抓包,然后在burp中修改請求方法,得到

然而這個文件並沒有什么用,但是訪問index.php 和 404.php 又不被允許

 

折騰了很久,才想起來之前cansina掃描到幾個403無權訪問的文件

 

.htaccess文件(或者"分布式配置文件"),全稱是Hypertext Access(超文本入口)。提供了針對目錄改變配置的方法, 即,在一個特定的文檔目錄中放置一個包含一個或多個指令的文件, 以作用於此目錄及其所有子目錄。作為用戶,所能使用的命令受到限制。管理員可以通過Apache的AllowOverride指令來設置。概述來說,htaccess文件是Apache服務器中的一個配置文件,它負責相關目錄下的網頁配置。通過htaccess文件,可以幫我們實現:網頁301重定向、自定義404錯誤頁面、改變文件擴展名、允許/阻止特定的用戶或者目錄的訪問、禁止目錄列表、配置默認文檔等功能。

簡單說,就是一個只對該文件所在的目錄起作用的配置文件,里面的配置也會覆蓋php.ini。扯個題外話,這種分布式配置文件大有用途,詳見:

.user.ini文件構成的PHP后門:  http://www.vuln.cn/6001

利用.htaccess來執行你的webshell:  https://bbs.2cto.com/read.php?tid=204685

 

回到正題,訪問該文件,得到一個html的地址

 

看到如下,自然想到是利用X-Forwarded-For偽造ip

 

嘗試了多次 X-Forwarded-For:127.0.0.1 都不行,實在沒辦法,又看了下提示,發現除了X-Forwarded-For,還有client-ip。沒系統學過http協議,對這些也不甚了解真的吃虧啊。。。

詳見:https://segmentfault.com/q/1010000000686700/a-1020000000687155

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM