1.通过对输出进行编码防治跨站攻击,在输出数据之前对潜在的威胁的字符进行编码、转义是防御XSS攻击十分有效的措施。如果使用好的话,理论上是可以防御住所有的XSS攻击的。
对所有要动态输出到页面的内容,通通进行相关的编码和转义。当然转义是按照其输出的上下文环境来决定如何转义的。
此时的转义规则如:< 转成 <> 转成 >& 转成 &等等。
实例如下:
在没有替换时提交JS代码:<script>alert("xxx")</script>,结果如下。
在项目中编写代码,在用户提交留言和评论信息时将<和>分别替换。运行程序提交JS代码:<script>alert("xxx")</script>,结果如下。
2.预防SQL注入
在项目中找到用户登录模块所使用的关键SQL语句。
攻击与防御一直是对立存在的两面,在计算机网络方面两者更是通过长期竞争实现共同的进步;任何系统都不是完美的,既然我们不能开发出绝对安全的系统,那我们就要时刻防范各种可能的攻击。出现漏洞及时修复,这样才能保证我们系统的安全与稳定!