2015-09-14 26 views
2

我有一個小應用程序,有一個字段,我可以寫一個數字並提交它,頁面請求到服務器,我得到一個響應或沒有響應(根據參數)通過sqlmap驗證sql注入

現在我檢查了SQL注入領域,並得到它是可注射的,這對我來說很好,因爲我處於測試模式。

enter image description here

這是結果,現在我怎麼能確認的是,這些領域實際上是注射,我試圖複製在該領域的有效載荷,並利用它,但它沒有工作。

這需要論證的查詢是這樣的

$q = " select * from users where id = $_REQUEST['cnic']"; 

// REST OF CODE FOR ITERATING QUERY 
+1

您確實需要發佈此漏洞發現的弱代碼。由於您沒有提供足夠的內容,因此不可能知道如何重現這一點。 – tadman

+0

@tadman done ... – user3646405

+2

是的,這是**危險**錯誤的代碼,[原型注入漏洞](http://bobby-tables.com/),所以這是很好的掃描儀發現它。在測試注入漏洞時,您必須正確地對您的參數進行URI編碼。在這種情況下,'page.php?id = PAYLOAD',其中'PAYLOAD'是正確編碼的注入有效載荷。 – tadman

回答

1

鑑於SqlMap的使用和/或時間基於基於時間的盲注射,你需要尋找它是怎麼用來執行查詢。

如果您提交值「111' AND (SELECT * FROM (SELECT...」,則需要5秒鐘或更長時間(因爲其中的SLEEP(5)被執行)。

請參閱sqlmap文檔,我相信他們在這裏描述的更深。