2016-04-24 46 views
0

可以通過舊的Mysql API中的複選框等輸入執行SQL注入,以及如何執行? 也許這是一個愚蠢的問題,但我不知道是否有可能。SQL注入是否可以通過類似複選框的輸入來執行?

+1

防止SQL注入的基本規則是:Trust * nothing *由用戶提供,並將您放入數據庫的所有內容全部轉義。儘可能使用準備好的語句,它們是最可靠的防禦。 – tadman

+0

談到網絡安全時,唯一愚蠢的問題就是從未問過的問題。 –

+0

@JonathanEustace這意味着每一個有問題的問題都是一個愚蠢的問題。有點不合邏輯。 –

回答

5

100%肯定的。這一切都歸結於你的服務器端實現。當您將數據發送到服務器時,您應該執行輸入驗證。在複選框的情況下,它是一個布爾值。您應該只接受值如truefalse,01,checked等等。如果發送到服務器的數據的值與期望值不相符,則應該拋棄它,或者更好的是IP發送它應該被記錄下來,因爲這很可能是試圖破解你的服務器。

使用fiddler,CURL或瀏覽器(以及瀏覽器的devconsole)等工具,您可以輕鬆地將任何值傳遞到表示該複選框的字段,因此輸入驗證是服務器端的關鍵。

+0

人們經常會忘記,Chrome需要花費兩秒鐘的時間來編輯複選框的值並提交表單。 – tadman

2

是。複選框的值屬性可以在Web Inspector中編輯,或者有人可以通過代碼提交到URL。它只是發送文本。

相關問題