前端开发中的安全问题
1.xss(跨站脚本攻击)
指攻击者通过在网页输入添加恶意HTML代码,用户在访问页面的时候,嵌入在网页的代码就会被执行,恶意用户就可以利用这一点来完成特殊目的。
危害:
- 盗取各类用户账户
- 控制数据,对敏感信息进行增删改查
- 盗窃企业机密数据
- 非法转账
- 强制发送电子邮件
- 网站挂马
防范:不信任用户输入,对用户输入进行检查,对敏感信息比如‘<’,'>'进行转义。
2.SQL注入攻击
指应用程序或者前端网页在向后端数据库传递sql语句时,攻击者将恶意的sql命令插入到表单提交或者输入域名或者网页请求中的查询字符串中,最终达到欺骗服务器执行恶意sql语句的目的。
危害:攻击者无需密码就能登入网站,攻击者得到管理员权限
防范:1.始终坚持安全检测
2.增加黑名单验证或者白名单验证。白名单验证一般指检测用户输入是否预期的标准格式;黑名单验证一般指若是在用户输入中,包含明显的恶意内容就拒绝该条用户请求。
3.对数据表的访问权限进行严格控制,尽量限制用户不必要的访问权限。
3.跨站请求伪造(CSRF)
攻击者劫持受信任用户向服务器发送非预期请求。通常情况下就是指攻击者借助受害者的cookie来骗取服务器的信任,在受害者不知情的情况下以受害者的名义伪造请求发送给受攻击的服务器。
攻击一般发起在第三方网站而不是受攻击的网站
防范:1.设置验证码
2.进行同源检测
3.cookie的samesite属性,禁止第三方cookie
4.文件上传漏洞
指文件上传功能代码没有限制用户上传的文件后缀及类型,就让攻击者可以上传任意后台文件,然后将这些文件传入解释器中,就可以在远程服务器上执行恶意代码脚本。
防范;1.限制用户提交文件的后缀及类型
2.定义文件上传白名单,只能上传指定类型及后缀的文件
3.文件上传目录禁止执行脚本解析,避免攻击者二次攻击