CTFHub Web技能樹


web前置技能 HTTP協議

請求方式

chrome_2020-03-03_10-30-45

使用bp抓包,send to repeater。

將開頭的GET更改成CTFHUB,點擊send。

java_2020-03-03_10-37-36

在response中獲得flag。

java_2020-03-03_10-37-03

另外還可以用curl命令來獲得flag,具體可以看官方的writeup。

302跳轉

chrome_2020-03-03_10-41-47

用bp抓包,點擊Give me Flag的鏈接,send to repeater。

java_2020-03-03_10-43-28

在response中獲得flag。

java_2020-03-03_10-45-45

cookie

chrome_2020-03-03_10-46-51

依舊是用bp抓包……

java_2020-03-03_10-48-10

可以看到這里admin=0,結合網頁內容,可以聯想到把admin改成1就可以獲得flag了。

java_2020-03-03_10-49-38


基礎認證

chrome_2020-03-03_12-11-55

題目已經給了參考鏈接。

chrome_2020-03-03_13-22-58

chrome_2020-03-03_13-23-15

打開網頁,點擊give會出現一個輸入賬號密碼的窗口。

chrome_2020-03-03_13-10-44

隨便輸個賬號密碼,抓包查看,會在response里面看到提示。

java_2020-03-03_13-13-12

Do u know admin?

由此知道賬號名是admin。

但是密碼不知道怎么找,這里密碼的部分用了base64加密,也不好直接爆破。

看了題目才發現有個附件被我漏了(暈)

打開來就是一個密碼本。

notepad_2020-03-03_13-16-39

那么就好解決了,把這些密碼前面加上“admin:”然后再base64加密交給bp爆破就可以了。

經過加密之后的密碼。

pythonw_2020-03-03_13-20-21

爆破之后的結果,長度和其他的不一樣的就是正確密碼了,在response里面可以看到flag。

java_2020-03-03_13-21-08

響應包源代碼

打開題目是個貪吃蛇游戲。

實際上flag就在源碼里面,f12查看源碼就看到flag在注釋里面。

chrome_2020-03-03_13-31-01

web 信息泄露

目錄遍歷

由於配置錯誤導致網站的目錄可被遍歷,一般該類漏洞可以為后續利用提供一些信息上的幫助。

chrome_2020-03-03_13-54-43

點擊會出現目錄,一個一個找就可以找到flag了。

chrome_2020-03-03_13-55-25

打開就是flag。

PHPINFO

chrome_2020-03-03_13-58-57

chrome_2020-03-03_13-59-29

直接查找就是了。

chrome_2020-03-03_13-59-53

備份文件下載

網站源碼

chrome_2020-03-03_14-02-59

可以一個一個試,也可以直接掃描后台。

御劍后台掃描工具_2020-03-03_14-20-55

打開www.zip,會下載一個文件,里面有一個flag文件,打開來是這個。

notepad_2020-03-03_14-22-30

在網址后面輸入這個文件的名稱,就可以獲得flag了。

chrome_2020-03-03_14-24-05

bak文件

chrome_2020-03-03_16-07-21

題目提示是bak文件,在網址后面加上index.php.bak.

chrome_2020-03-03_16-08-16

會下載index.php.bak。

用記事本打開就可以看到flag了。

notepad_2020-03-03_16-09-47

vim緩存

這道題講的是vim的緩存,可以參考這個https://www.cnblogs.com/zwfc/p/5466885.html

和上一道題的方法差不多。

chrome_2020-03-03_16-22-55

notepad_2020-03-03_16-23-42

.DS_Store

chrome_2020-03-03_16-26-40

打開.DS_Store。

chrome_2020-03-03_16-30-14

會下載一個叫.DS_Store的文件,翻一翻會看到這個。

notepad_2020-03-03_16-32-24

題目告訴我們.DS_Store可以知道這個目錄里面所有文件的清單,所以這個應該就是flag所在的文件。

網址訪問。

訪問了半天都是404,最后發現有一段被我忘掉了……

notepad_2020-03-03_16-43-46

加上去之后訪問就可以獲得flag了。

chrome_2020-03-03_16-44-18

信息泄露后面的不會做了……

密碼口令

弱口令

題目都說了是弱口令就拿常見的賬號密碼試試吧。

admin和123456,flag就出來了。

默認口令

題目名是默認口令,讓我們百度一下。

馬上就有結果了。

參考鏈接

2020-03-05_19-00-29

題目用的是億郵郵的網關,找一找默認口令就行了。

chrome_2020-03-05_19-02-15

每一個都試一遍,最后找到flag。

chrome_2020-03-05_19-04-03

密碼口令目前能夠做的題就結束了。

SQL注入

整數型注入

第一種方法 手注

進入題目,提示輸入1試試?

那就試唄。

chrome_2020-03-05_19-13-25

直接把語句顯示出來了。

因為是整數型注入,不用加單引號。

猜字段。

在字段數為二的時候有回顯,所以字段數為2.

chrome_2020-03-06_09-54-43

看哪個字段能夠回顯,這里要把id改成-1讓它能夠爆錯。(其他的能夠爆錯的也可以)

chrome_2020-03-06_10-04-40

在2處注入,查找數據庫。

chrome_2020-03-06_10-05-18

數據庫為sqli。

查表。

chrome_2020-03-06_10-12-47

表名為news和flag。

查字段名。

chrome_2020-03-06_10-14-40

查數據。

chrome_2020-03-06_10-20-08

第二種方法 sqlmap

在url后面加上?id=1然后在sqlmap中檢查是否有注入點。

cmd_2020-03-06_10-23-19

cmd_2020-03-06_10-24-05

存在注入點。

查數據庫。

  1 sqlmap.py –u http://challenge-2ace14d871435db0.sandbox.ctfhub.com:10080/?id=1 –current-db

cmd_2020-03-06_10-26-48

數據庫名為sqli。

爆表名。

  1 sqlmap.py –u http://challenge-2ace14d871435db0.sandbox.ctfhub.com:10080/?id=1 –D sqli –-tables

cmd_2020-03-06_10-29-49

表名為flag和news。

爆字段名。

  1 sqlmap.py –u http://challenge-2ace14d871435db0.sandbox.ctfhub.com:10080/?id=1 –D sqli –T flag --columns

cmd_2020-03-06_10-33-00

字段名為flag。

爆數據。

  1   1 sqlmap.py –u http://challenge-2ace14d871435db0.sandbox.ctfhub.com:10080/?id=1 –D sqli –T flag -C flag --dump

字符型注入

第一種方法 手注

輸入1,可以看到語句。

chrome_2020-03-06_11-04-28

這道題和上一題不同,1變成了‘1’.

加上單引號並且注釋屏蔽后面的語句。

chrome_2020-03-06_11-07-02

查字段。

chrome_2020-03-06_11-08-06

查看哪個字段能夠回顯。

chrome_2020-03-06_11-09-07

查數據庫。

chrome_2020-03-06_11-10-29

查表。

chrome_2020-03-06_11-12-12

查字段。

chrome_2020-03-06_11-14-30

查數據。

chrome_2020-03-06_11-16-09

第二種方法 sqlmap

跟上一題方法一樣

報錯注入

參考鏈接

聯想題目:bugku多次第二部分 https://www.cnblogs.com/truthilia-12580/p/12288529.html

前面的題目字段數都是2,這回就先拿2試一試。

chrome_2020-03-06_12-09-52

拿3試一試。

chrome_2020-03-06_12-10-54

說明字段數是3.

當前數據庫。

chrome_2020-03-06_12-14-47

數據庫中的表。

chrome_2020-03-06_12-17-28

表中的字段。

chrome_2020-03-06_12-19-10

數據。

chrome_2020-03-06_12-21-55

這里只有前32位的,用substr截取就可以看到后面了。

  1 substr(a,b,c)
  2 從字符串a的b位置開始截取c個字符,當b為負數時截取位置是從字符串a右端向左數b個字符

chrome_2020-03-06_12-25-53

拼接起來就是完整的flag了。

這一篇寫得太長了,尋思着再分一篇ヽ(*。>Д<)o゜


免責聲明!

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



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