Web安全笔记
- SQL注入
- 说明:将SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令
- 防范:
- 对输入字符进行严格验证,可以用正则表达式等。
- 尽量不要使用原始错误信息输出,可以自己对原始错误信息进行包装。
- 不要全部使用管理员权限连接,应为每个应用设置独立的权限。
- 验证码
- 说明:为了防止批量提交达到试错的目的而产生
- 防范 :加入杂色,网格,线条等。尽量不要被机器识别的内容
- 刷新提交
- 说明:刷新导致重复提交
- 防范
- 刷新重定向
- 提交表单后你关闭页面
- 禁止缓存(header中添加no-cache)
- 漏洞扫描
- 说明 :常见的端口扫描等
- 防范 : 防火墙,IP端口开放,禁ping等
- DOS攻击
- 说明:目的是消耗目标对象的资源(包括网络带宽,文件系统空间容量,开放的进程或者允许的连接)
- 防范:配置路由器、防火墙和入侵检测系统来抵御常见DDoS攻击
- CSRF(跨域请求伪造)
- 说明:通过伪装成受信任用户的请求来利用受信任的网站。
- 防范:
- 进行token验证,每次都要验证token
- 对请求来源进行验证,通过refer来检验。
- XSS :跨站脚本攻击
- 说明:用户输入表单中恶意植入JavaScript内容,其中的script标签中的内容,将会直接被当成脚本执行,有心的攻击者可以利用这一漏洞,随心所欲地写自己的攻击脚本,比如获取用户的cookie、进行恶意请求、监听用户输入等
- 防范:
- 对用户输入的数据进行过滤。
- 对能影响代码的特殊符号进行转义,如’<'等