加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 可接受的安全性:使用Paramatised SQL和HTML编码字符

发布时间:2020-12-16 04:07:10 所属栏目:asp.Net 来源:网络整理
导读:我正在尝试确保我的webforms ASP.NET应用程序尽可能安全,它只接收具有登录功能的用户接收并将用户输入数据存储到SQL数据库(通常的东西),因此一般公众无法使用. 通过对输入页面禁用ValidateRequest,我感谢存在XSS攻击的风险 – 所有SQL查询都是参数化的,因此
我正在尝试确保我的webforms ASP.NET应用程序尽可能安全,它只接收具有登录功能的用户接收并将用户输入数据存储到SQL数据库(通常的东西),因此一般公众无法使用.

通过对输入页面禁用ValidateRequest,我感谢存在XSS攻击的风险 – 所有SQL查询都是参数化的,因此从SQL注入是安全的(正确吗?).

我可以在输入文本上使用HTMLencode,而不是使用Anti-XSS库吗?然后我存储HTMLencoded字符串?

或者我是以错误的方式看待它?我应该逐字存储用户输入,然后在输出到浏览器的任何时候输入HTMLencode或XSS-HTMLencode吗?

解决方法

好吧,阅读它似乎常见的智慧是逐字存储输入,不做任何调整,只需参数化以防止SQL注入.

这里有一些好评:What are the best practices for avoiding xss attacks in a PHP site

然后使用HTML Encode(似乎可以使用),或者使用XSS-Library对输出进行编码 – 如上面的链接中所述,数据的目标可能在稍后的某个时间点不是浏览器.

然后在这里使用XSS攻击的例子:https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet将其中一些输入到数据库,并回读到浏览器.使用正确的编码,您应该看到文本,而不是执行脚本.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读