前端安全问题及解决办法
前端安全问题及解决办法
xss(Cross-site Scripting)脚本注入攻击
核心:恶意脚本注入
描述:攻击者通过在目标网站上注入恶意脚本,使之在用户的浏览器上运行。利用这些恶意脚本,攻击者可获取用户的敏感信息如 Cookie、SessionID 等,进而危害数据安全。
解决方案:
1、打开npmjs.com下载xss插件,引入xss插件之后就没有任何问题了。
2、将html进行内容转换,或者将
var HtmlUtil = { /*1.用浏览器内部转换器实现html转码*/ htmlEncode:function (html){ //1.首先动态创建一个容器标签元素,如DIV var temp = document.createElement ("div"); //2.然后将要转换的字符串设置为这个元素的innerText(ie支持)或者textContent(火狐,google支持) (temp.textContent != undefined ) ? (temp.textContent = html) : (temp.innerText = html); //3.最后返回这个元素的innerHTML,即得到经过HTML编码转换的字符串了 var output = temp.innerHTML; temp = null; return output; }, /*2.用浏览器内部转换器实现html解码*/ htmlDecode:function (text){ //1.首先动态创建一个容器标签元素,如DIV var temp = document.createElement("div"); //2.然后将要转换的字符串设置为这个元素的innerHTML(ie,火狐,google都支持) temp.innerHTML = text; //3.最后返回这个元素的innerText(ie支持)或者textContent(火狐,google支持),即得到经过HTML解码的字符串了。 var output = temp.innerText || temp.textContent; temp = null; return output; } };
CSRF(Cross-sit request forgery)漏洞
核心:利用用户身份伪造请求描述:利用受害者在被攻击网站已经获取的注册凭证,绕过后台的用户验证,冒充用户对被攻击的网站发送执行某项操作的请求
解决方案:
1.增加token验证.因为cookie发送请求的时候会自动增加上,但是token却不会,这样就避免了攻击
2.Referer验证。页面来源的判断
iframe安全隐患问题
有时候前端页面为了显示别人的网站或者一些组件的时候,就用iframe来引入进来,比如嵌入一些广告等等。但是有些iframe安全性我们无法去评估测试,有时候会携带一些第三方的插件啊,或者嵌入了一下不安全的脚本啊,这些都是值得我们去考虑的。
解决办法:
1.使用安全的网站进行嵌入;
2.在iframe添加一个叫sandbox的属性,浏览器会对iframe内容进行严格的控制,详细了解可以看看相关的API接口文档。
HTTP劫持
核心:广告、弹框html注入
描述:当我们访问页面的时候,运营商在页面的HTML代码中,插入弹窗、广告等HTML代码,来获取相应的利益
本地存储数据问题
很多开发者为了方便,把一些个人信息不经加密直接存到本地或者cookie,这样是非常不安全的,黑客们可以很容易就拿到用户的信息,所有在放到cookie中的信息或者localStorage里的信息要进行加密,加密可以自己定义一些加密方法或者网上寻找一些加密的插件,或者用base64进行多次加密然后再多次解码,这样就比较安全了。
第三方依赖安全隐患
现如今的项目开发,很多都喜欢用别人写好的框架,为了方便快捷,很快的就搭建起项目,自己写的代码不到20%,过多的用第三方依赖或者插件,一方面会影响性能问题,另一方面第三方的依赖或者插件存在很多安全性问题,也会存在这样那样的漏洞,所以使用起来得谨慎。
解决办法:手动去检查那些依赖的安全性问题基本是不可能的,最好是利用一些自动化的工具进行扫描过后再用,比如NSP(Node Security Platform),Snyk等等。
- 点赞
- 收藏
- 分享
- 文章举报
- ASP.NET 4.0中使用FreeTextBox和FCKeditor遇到安全问题警告的解决办法
- java线程的同步安全问题三种解决办法
- java中多线程的安全问题以及解决办法
- IBM AppScan 安全扫描报告中部分问题的解决办法
- 多线程安全问题及解决办法
- IFrame安全问题解决办法(跨框架脚本(XFS)漏洞)
- web 前端:连接mysql中文乱码问题的解决办法
- 本地运行swf访问网络的安全问题解决办法
- Flash实现Websocket的跨域问题-安全沙箱问题解决办法
- 织梦Dedecms教程:针对织梦安全问题的解决办法
- 关于vs2005中网站管理工具中的“安全 ”选项无法打开和缺少AspNetDB.mdf数据库的问题解决办法
- 关于VS2008 中添加成员变量提示 此网站的某个加载项运行失败 请检查“Internet选项”中的安全设置是否存在潜在冲突 问题解决办法
- ASP.NET 4.0中使用FCKeditor遇到安全问题警告的解决办法
- 内网渗透案例以及安全问题的解决参考办法
- 华为设备web登录,安全连接失败问题解决办法
- discuxx2.5设置安全验证问题出错:password_weakstrongpw_1,strongpw_2的解决办法
- hudson安全矩阵config.xml配置问题解决办法
- 当使用Vue开发前端遇到的问题及解决办法汇总
- ASP.NET 4.0中使用FreeTextBox和FCKeditor遇到安全问题警告的解决办法