2016-04-25 61 views
0

有一個在我公司的網頁只包含了一些數據一個GridView安全性有一個超鏈接在我的GridView

今天我看到這段文字中的一個細胞(我改變一點點,展現給你)

[div style="display:none"]discount online BLABLABLA[a href="http://www.[randonURL].net/page/[randompage].aspx"]click[/a] new prescription  coupon[/div] 

我搜索這個文本不知何故,有人插入這在我的數據庫

他怎麼做呢?...我能做些什麼呢?

+1

use插入值前的編碼/解碼方法;您也可以在頁面級別進行驗證以在有人輸入此文本時引發錯誤 – techspider

+0

我該怎麼做?...對不起,我不知道如何開始 – Liev04

+1

嘗試在您的Page指令中保留ValidateRequest =「true」以防止任何人輸入HTML數據在形式上; – techspider

回答

0

這聽起來像是一個經典的SQL注入案例。有很多事情可以做,以防止它。這裏有一些。儘管如此,我還是建議閱讀。

  1. 對於您的數據庫方法,始終使用參數化SQL,存儲過程或ORM。切勿使用動態SQL。在極少數情況下,您也必須保護這些方法。但這是一個相當長的討論。
  2. 始終對用戶輸入進行編碼。對於JavaScript,使用encodeURI()方法。在服務器端使用HtmlDecode()方法。
  3. 永遠不要在公共領域顯示錯誤的詳細信息。這給黑客們提供了他們可以使用的線索。