《攻防世界》Web新手題總結

這一週我一直在攻防世界上做web新手題,今天剛剛做完,特意寫篇博客來做一下總結。下面就開始寫我的解題過程。

先把所有題目貼出來
在這裏插入圖片描述
Web新手題一共有12道題,分別是

view_source
get_post
robots
backup
cookie
disabled_button
simple_js
xff_referer
weak_auth
webshell
command_execution
simple_php

==============================================================
一、view_source

在這裏插入圖片描述
查看網頁源代碼的方式有4種,分別是:1、鼠標右擊會看到”查看源代碼“,這個網頁的源代碼就出現在你眼前了;2、可以使用快捷Ctrl+U來查看源碼;3、在地址欄前面加上view-source,如view-source:https://www.baidu.com ; 4、瀏覽器的設置菜單框中,找到“更多工具”,然後再找開發者工具,也可以查看網頁源代碼。

這道題明顯考查查看源代碼的方式,雖然不能通過鼠標右鍵的方式來查看,但是可以通過上面其他方式查看。
在這裏插入圖片描述
這裏只舉通過view-source來查看,其他方式你們自己去嘗試。
在地址前面加上view-source,效果如下圖:
在這裏插入圖片描述
所應就可以得到了flag,flag值爲: cyberpeace{7f26e057a08a433d0147937622d87676}

二、get_post
在這裏插入圖片描述
http的兩種請求方式是get和post,比如我用通過通過這兩種方式傳參,分別傳a=1和b=2。get的請求方式是通過在網址後面加上“?a=1&b=2”,例如:https://adworld.xctf.org.cn/task/answer?a=1&b=2
post傳參的話通過hackbug,在下面的解題中,會給出方法。

在這裏插入圖片描述
我們在網址後面加上"?a=1".例:119.198.29.45:48280?a=1。
在這裏插入圖片描述
post方式提交的話,我們要用到hackbug,如下:
在這裏插入圖片描述
在這裏插入圖片描述
得到flag。flag=cyberpeace{7fbfccb395244ac5e90120197e55396c}

三、robots
在這裏插入圖片描述
robots是網站跟爬蟲間的協議,用簡單直接的txt格式文本方式告訴對應的爬蟲被允許的權限,也就是說robots.txt是搜索引擎中訪問網站的時候要查看的第一個文件。當一個搜索蜘蛛訪問一個站點時,它會首先檢查該站點根目錄下是否存在robots.txt,如果存在,搜索機器人就會按照該文件中的內容來確定訪問的範圍;如果該文件不存在,所有的搜索蜘蛛將能夠訪問網站上所有沒有被口令保護的頁面。

我們可以查看robots.txt文件,看看裏面有什麼內容
在這裏插入圖片描述
robots裏的文件不可自己爬取。但我們可以手動打開。
在這裏插入圖片描述

四、backup
在這裏插入圖片描述
常見的備份文件後綴名爲.bak
在這裏插入圖片描述
在這裏插入圖片描述
打開便看到flag
在這裏插入圖片描述
五、cookie
在這裏插入圖片描述
Cookie是保存在客戶端的純文本文件。比如txt文件。所謂的客戶端就是我們自己的本地電腦。當我們使用自己的電腦通過瀏覽器進行訪問網頁的時候,服務器就會生成一個證書並返回給我的瀏覽器並寫入我們的本地電腦。這個證書就是cookie。一般來說cookie都是服務器端寫入客戶端的純文本文件。

我們用burp來查看該網址的cookie值。
在這裏插入圖片描述
發現有個cookite.php文件,嘗試打開
在這裏插入圖片描述
我們打開開發者工具查看http response
在這裏插入圖片描述
六、disabled_button
在這裏插入圖片描述
打開效果
在這裏插入圖片描述
打開開發者工具
在這裏插入圖片描述
disabled 屬性規定應該禁用 input 元素。
被禁用的 input 元素既不可用,也不可點擊。可以設置 disabled 屬性,直到滿足某些其他的條件爲止(比如選擇了一個複選框等等)。然後,就需要通過 JavaScript 來刪除 disabled 值,將 input 元素的值切換爲可用。

刪掉" disable="" "後便可點擊按鈕,點擊後效果如下
在這裏插入圖片描述

七、simple_js
在這裏插入圖片描述
打開題目網址試試:
一來要輸入密碼,隨便輸入123。
在這裏插入圖片描述
在這裏插入圖片描述
查看源碼
在這裏插入圖片描述
我也不知道該如何做。接下來的做法是參考大佬的:

看到\x35\x35\x2c\x35\x36\x2c\x35\x34\x2c\x37\x39\x2c\x31\x31\x35\x2c\x36\x39\x2c\x31\x31\x34\x2c\x31\x31\x36\x2c\x31\x30\x37\x2c\x34\x39\x2c\x35\x30"想到把\x轉換爲%,將字符串轉換爲URL編碼,%35%35%2c%35%36%2c%35%34%2c%37%39%2c%31%31%35%2c%36%39%2c%31%31%34%2c%31%31%36%2c%31%30%37%2c%34%39%2c%35%30
用burp 解碼得:55,56,54,79,115,69,114,116,107,49,50
在這裏插入圖片描述
將這串數字進行ASCII碼轉換得:786OsErtk12
根據提示flag格式爲Cyberpeace{xxxxxxxxx} ,提交Cyberpeace{786OsErtk12}得到正確答案。

八、xff_referer
在這裏插入圖片描述
xff:是X-Forwarded-For的簡寫,用來識別通過HTTP代理或負載均衡方式連接到Web服務器的客戶端最原始的IP地址的HTTP請求頭字段。
referer:是告訴服務器我是從哪個地方來的

這道題跟今年強網杯web第一題基本一樣,只有去增加或者修改xff和referer的值即可
用burp解題如下:
在這裏插入圖片描述
構造X-Forwarded-For=123.123.123.123
在這裏插入圖片描述
在這裏插入圖片描述
構造referer:https://www.google.com
在這裏插入圖片描述
在這裏插入圖片描述

九、weak_auth
在這裏插入圖片描述
此題考查弱口令,進入題目,原來是道暴力破解題
暴力破解適合題目類型:登錄密碼較爲簡單,且不會限制登錄次數
在這裏插入圖片描述
用brup爆破,根據字節長度不同,就可知道密碼。brup爆破缺點就是找到密碼後還在不斷嘗試,知道字典用完。我覺得如果會寫python腳本來爆破的話,效率肯定比brup好。
在這裏插入圖片描述

十、webshell
在這裏插入圖片描述
在這裏插入圖片描述
這道題明顯考查後門的利用,對於這道題我們用菜刀工具。
在這裏插入圖片描述
一連接服務器,就看到flag.txt
在這裏插入圖片描述
打開便可拿到flag值
在這裏插入圖片描述
十一、command_execution(命令執行)
在這裏插入圖片描述

ping命令常常會存在命令注入漏洞,如我們可以用127.0.0.0.1&&ls 來測試
在這裏插入圖片描述
在這裏插入圖片描述
看到除了執行ping命令,而且執行ls命令
用腳本找到flag位置

import requests

url = "http://111.198.29.45:38835/"  

list = ['bin', 'boot', 'dev', 'etc', 'home', 'lib', 'lib64', 'media', 'mnt', 'opt', 'proc', 'root', 'run', 'run.sh', 'sbin', 'srv', 'sys', 'tmp', 'usr', 'var'] 

for i in list: 

    payload = {"target": "127.0.0.1 | ls ../../../%s" % i} 

    res = requests.post(url, data=payload).text 

    if "flag" in res: 

        print("current: ", i)

        break

找到flag位置在home目錄下
在這裏插入圖片描述
進去home目錄下看看,構造命令127.0.0.1&&ls …/…/…/…/…/…/…/home/
在這裏插入圖片描述
讀取flag.txt,命令是:cat …/…/…/…/…/…/home/flag.txt
在這裏插入圖片描述

十二、simple_php
在這裏插入圖片描述
打開網址頁面如下:
在這裏插入圖片描述
簡單審計下代碼,發現需要以get的方式傳入兩個參數a和b。

a參數的要求 a必須等於0且a爲真

b參數的要求 b不能爲數字且b大於1234

這道題的核心問題是理解PHP語言的弱類型

構造命令:http://111.198.29.45:44957/?a=00a&&b=12345s
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章