2019攻防世界web新手区
robots
看了題目描述,發現與robots協議有關,過完去百度robots協議。發現了robots.txt,然后去構造url訪問這個文件
?http://111.198.29.45:42287/robots.txt
得到提示:Disallow: f1ag_1s_h3re.php,再次構造url,訪問這個文件。
http://111.198.29.45:42287/f1ag_1s_h3re.php
成功得到flag:cyberpeace{bffdd8b6fd5db04fd274822c68d5fadb}
backup
進去題目后,看到提示與index.php的備份文件有關,想起index.php.bak,果斷構造url訪問文件。
?111.198.29.45:58119/index.php.bak
下載文件后,使用記事本打開,即可得到flag:cyberpeace{d7646fa539c6b115deef155a73830462}
cookie
看到題目和cookie有關,果斷按下F12查看cookie,發現了cookie.php,構造url去訪問
http://111.198.29.45:33679/cookie.php
得到提示:See the http response
然后再網絡請求的消息頭里面看到的flag:cyberpeace{2c2587a68a1db6c2a413631531030da1}
?
disabled button
看到一個flag按鈕,但卻無法點擊。覺得應該和參數的設置有關,F12改下參數,把下面位置的disabled更改為able,
再次點擊flag按鈕,即可獲得flag:cyberpeace{0ca54cb222b4d649d8e193467f5c8f52}
?
simple js
看題目覺得這應該是一道關于js的題目,因為沒怎么學過js,心里小發慌。查看網頁源代碼。
其中pass為假密碼,可以看到無論輸入什么都會返回這個假密碼,真正的密碼在:javascript String"fromCharCode"; - 用python處理一下:
s="\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"
print (s) - 得到` 55,56,54,79,115,69,114,116,107,49,50
s=[55,56,54,79,115,69,114,116,107,49,50]
for i in s:
print(chr(i),end='')
- 得到?786OsErtk12
?
?
xff referer:
看到題目覺得應該和XFF有關,進去后要求IP地址必須為123.123.123.123,使用burpsuite偽造XFF:X-Forwarded-For:123.123.123.123
go之后又要求innerHTML="必須來自https://www.google.com",再偽造Referer:Referer:https://www.google.com
go之后得到flag:cyberpeace{e9f742dcdb07a05638f0c004c4a27368}
?
weak auth:
進入后看到一個登陸框界面,試著隨便輸入一個賬戶密碼,提示輸入admin,然后再源碼里發現“./check.php”,點進去發現提示:maybe you need a dictionary,利用burpsuite選擇一個字典進行爆破。爆破出密碼為123465.
輸入正確密碼得到flag:cyberpeace{5469437256d685fbb6ba239b163bd400}
?
webshell
題目描述給出了php一句話的提示,進去題目后看到了<?php @eval($_POST['shell']);?>
發現連接密碼為“shell”,用菜刀連接,發現flag.txt文件,里面包含flag。
?
?
command execution
這個題需要了解一些命令執行的知識:windows或linux下: command1 && command2 先執行command1后執行command2 command1 | command2 只執行command2 command1 & command2 先執行command2后執行command1
我們先在ping的輸入框里隨便輸入一個地址,比如127.0.0.1,然后打開hackbar,發現它是通過target參數以post的方式提交的,我們構造target參數的值:
首先構造這個命令:target=127.0.0.1 | ls ../../../home,提交后會執行后面的“ls ../../../home”命令,發現含有flag.txt文件
然后我們構造查看home下flag.txt文件內容的命令:target=127.0.0.1 | cat ../../../home/flag.txt,即可輸出flag:
simple php
一道代碼審計的題,用到了知識點,一個是php弱等于,一個是%00截斷。先看代碼
<?php show_source(__FILE__); include("config.php"); $a=@$_GET['a']; //get方式提交一個a $b=@$_GET['b']; //get方式提交一個b if($a==0 and $a){ //如果a滿足條件,數組flag的前一部分echo $flag1; } if(is_numeric($b)){exit(); } if($b>1234){ //如果b滿足條件,輸入flag的后一部分echo $flag2; } ?>
?
在判斷語句里,要求a==0,并且a不為0;看到兩個等號,想到php弱等于,這里可以讓a=admin,在“==”判斷是,admin會被轉換成“0”,a滿足天劍
然后是b,is_numeric這個函數要求b不能是數字,下面要求b大于1234,這里可以讓b=2345%00,%00是空格的意思,這樣b就不會被判斷為數字,且大于1234,b滿足條件。
構造url:http://111.198.29.45:40060/?a=admin&b=2345%00,即可得到flag。
對于is_numeric這個函數的繞過,還可以讓b=2345a。即在后面加一個字母也可以。
?(ps:本人太菜,若有錯誤的地方歡迎大佬隨時責罵。。。。xixixii)
轉載于:https://www.cnblogs.com/liangxiyang/p/10949243.html
總結
以上是生活随笔為你收集整理的2019攻防世界web新手区的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 求一个微信网名四个字的网名
- 下一篇: 文件夹内多文件上传到服务器