2013-01-07 75 views
0

我使用ASP.NETSQL Server創建了一個網站。現在我正在測試網站的漏洞。當我根據各種輸入測試網絡時,它拒絕了無效輸入。然而,一些輸入,如:admin' or 1=1--當進入網站時,不斷加載,然後超時。這是否表示SQL Injection漏洞? P:我在使用參數化查詢而不是連接字符串方面做了功課,我也知道用於自動化SQL Injection的各種工具,如SQL Map針對SQL注入的網站進行測試

+1

要回答這個問題,你應該先確定無盡循環發生的地方 –

回答

1

1 = 1--可能會導致選擇數據庫中的所有用戶,如果您擁有如此大量的用戶,可能會導致掛起。否則,其他事情正在發生。

總的來說,我認爲你應該使用像Sqlmap這樣的自動SQL注入工具來檢查你的網站的SQL注入。它是開源的,並用Python編碼。您也可以使用Acunetix掃描您的整個網站以查找所有類型的安全漏洞。

0

既然你說這是你創建的網站,你應該知道登錄的SQL語句。

例如,如果SQL語句如下所示。

SELECT username, passwd FROM table_name WHERE username='<userinput>' AND passwd='<userinput>'; 

以下是您在登錄表單中提供的內容。現在以上述查詢爲例,考慮可以使上述說明成立的各種方法。

例如:

假設註釋未被轉義。

'validusername' 和 '1'= '1' - //

'或 '1'=' 1' - //

如果註釋字符轉義或不工作:

'或 '1'=' 1

這些都是一些基本的攻擊向量SQLI在登錄頁面。有關更多信息,請參閱link上的備忘單。

由於您是開發人員,查看代碼是瞭解SQLi是否可行的更好方法。我只是想給你一個pentester的見解。