2016-01-30 34 views
-1

我有一個易受SQL注入攻擊的網站。它有一個用戶名和一個密碼,當我們將用戶名寫爲admin並將密碼寫爲'或1 = 1--時,它會登錄並說您已成功以管理員身份登錄。我想使用SQL注入來查找admin的密碼。我能做什麼 ?嚴格用於學習目的。 在用戶名和密碼字段上執行SQL注入時,我需要admin的密碼。使用SQL注入獲取管理員密碼

+3

可能的重複[如何防止SQL注入在PHP?](http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php) - 哦等待,你沒有指定你的編程語言?關鍵是準備好陳述和「?」替代(參數綁定)。 – Kenney

+2

不知道我們告訴你如何利用這個偉大的你,你應該試圖解決它。 – DominicEU

+1

你不應該在第一時間以明文形式存儲密碼 –

回答

1

您檢索管理員密碼的能力取決於密碼的存儲方式以及如何寫入訪問數據庫的服務器端腳本。如果密碼被正確地醃製和散列,實際上不可能檢索它;你簡單地覆蓋了檢查密碼的系統。如果不是,它仍然是非常困難的,你需要做很多實驗(參見Information Security Stack Exchange上的this answer)。無論哪種方式,您都需要了解很多關於系統以及它如何工作才能嘗試這樣的攻擊。

+0

通過通過密碼值注入來覆蓋可能意味着密碼驗證也發生在同一個SQL查詢中。注入值「或1 = 1--」意味着它可能是純文本。因此可能會盲目地泄漏明文密碼。 – Gumbo

+0

@Gumbo非常好的一點,但是即使可以運行SELECT查詢,你如何獲得它將結果發回給你? –

+1

有某些滲濾技術可以處理布爾行爲,甚至發送DNS請求(盲帶外)。看看[我的回答*什麼是盲注,以及如何模擬這個問題?](http://security.stackexchange.com/a/59097/539)。 – Gumbo