web安全注意点和应对方案
2017-06-02 18:16
225 查看
1.web开发中,将url暴露在外面,所有人都可以对这个地址进行修改(坏人就会在这里做手脚,比如,sql注入,xss,crsf)
处理sql注入,不管用什么框架,如果是地址栏直接传递参数就得去过滤
xss:
对用户的所有输入数据进行检测,比如过滤其中的“<”、“>”、“/”等可能导致脚本注入的特殊字符,或者过滤“script”、“javascript”等脚本关键字,或者对输入数据的长度进行限制等等。同时,我们也要考虑用户可能绕开 ASCII码,使用十六进制编码来输入脚本。因此,对用户输入的十六进制编码,我们也要进行相应的过滤。只要能够严格检测每一处交互点,保证对所有用户可能的输入都进行检测和XSS过滤,就能够有效地阻止XSS攻击。
通过前面对XSS攻击的分析,我们可以看到,之所以会产生XSS攻击,就是因为Web应用程序将用户的输入直接嵌入到某个页面当中,作为该页面的HTML代码的一部分。因此,当Web应用程序将用户的输入数据输出到目标 页面中时,只要用HtmlEncoder等工具先对这些数据进行编码,然后再输出到目标页面中。这样,如果用户输入一些HTML的脚本,也会被当成普通的文字,而不会成为目标页面HTML代码的一部分得到执行。
处理sql注入,不管用什么框架,如果是地址栏直接传递参数就得去过滤
xss:
1. 输入过滤
对用户的所有输入数据进行检测,比如过滤其中的“<”、“>”、“/”等可能导致脚本注入的特殊字符,或者过滤“script”、“javascript”等脚本关键字,或者对输入数据的长度进行限制等等。同时,我们也要考虑用户可能绕开 ASCII码,使用十六进制编码来输入脚本。因此,对用户输入的十六进制编码,我们也要进行相应的过滤。只要能够严格检测每一处交互点,保证对所有用户可能的输入都进行检测和XSS过滤,就能够有效地阻止XSS攻击。
2. 输出编码
通过前面对XSS攻击的分析,我们可以看到,之所以会产生XSS攻击,就是因为Web应用程序将用户的输入直接嵌入到某个页面当中,作为该页面的HTML代码的一部分。因此,当Web应用程序将用户的输入数据输出到目标 页面中时,只要用HtmlEncoder等工具先对这些数据进行编码,然后再输出到目标页面中。这样,如果用户输入一些HTML的脚本,也会被当成普通的文字,而不会成为目标页面HTML代码的一部分得到执行。
相关文章推荐
- Web程序中要注意的安全问题
- 用ewebeditor的用户注意了,请检查安全问题
- WEB开发中需要注意哪些安全问题?
- 在web开发中你不得不注意的安全验证问题#1-SQL
- Web应用中保证密码传输安全的应对思路
- [ASP.net]开发Web应用程序应注意的安全
- Web安全开发注意事项
- Web网页配色方案及安全色谱
- Web安全开发注意事项
- Android:为WebView中的Java与JavaScript的交互漏洞提供【安全可靠】的多样互通方案
- 用ewebeditor的用户注意了,请检查安全问题
- Web网页配色方案及安全色谱 配色技巧
- Web网页配色方案及安全色谱
- WEB开发安全漏洞修复方案
- WEB 服务器软件配置和安全配置方案
- 开发Web应用程序应注意的安全
- Web网页配色方案及安全色谱
- 关于再做发布安全web网站时有关证书方面的注意
- WEB开发中安全注意事项
- Web开发中需要注意的安全问题