2016-04-25 48 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. 永远不要在公共领域显示错误的详细信息。这给黑客们提供了他们可以使用的线索。