XSS AND CSRF

XSS:(cross-site script)跨站脚本

XSS是一种网站应用程序的安全漏洞攻击。恶意用户将代码注入到网页上,然后别的用户在观看网页时受到影响。
其通常指的是恶意用户利用网页开发时遗留的漏洞,使用一种奇妙的方法将恶意代码放入网页中,然后当用户去访问的时候,不由自主地进行加载和执行恶意用户制作的脚本。

其中过程大致如下
1 攻击者发现网站编写网页的漏洞
2 攻击者将恶意指令放入网页中,并上传到服务器成功(就是服务器对上传的内容没有进行过滤)
3 其他用户访问服务器种被恶意植入指令的网页,然后暗地中恶意指令执行

如何防护?

如下
1.过滤掉特殊字符。在node中可以使用node-validator
2.在后台字符串模板中,不要直接输出content,例如.net中 <% content %>
3.前端尽量不使用html()方法或者拼接字符串$p=$('<p>'+conent+'</p>') 2.使用http指定头类型,content-type=text/javascript;charset=utf-8`
3.对于用户而言:可以在网站设置不加载js脚本。但是考虑到现在很多网站都是需要js脚本去运行相关的功能。
总结:还是服务端做好点吧,毕竟你是提供服务给用户的。
reference reference1👈

CSRF:(cross site request forgery)

It's renamed XSRF(跨站请求伪装)

其是一种要挟用户在已经登录的web程序中执行非本意的操作的命令。

具体过程
1.恶意用户通过操纵用户的浏览器去访问一些以前被认证过的服务器并进行某些恶意操作。
2.而由于服务器被认证过,所以服务器会认为是真正的用户在执行操作。
本质:其是欺骗用户的浏览器,以用户的名义去执行恶意操作。

如何防护

如下
1.检查referer字段:这个字段可以表面请求来自哪个地址
2.服务器验证,加上token。这样在对比token过程中,不一致,服务器就禁止这个请求。
3.尽量少使用get请求,毕竟明文

reference reference1 👈

由于做过一些后端,也总结一下自己了解到的后端认证方式吧

常见的认证方式

1.username+password ->http basic authentication
2.cookie
3.token -->Now ,the JWT token is hot.
4.signature
5.one-time password
reference translation

OAuth 2.0

It's a industry-standard protocol of authentication.It allows some third-website saving your website user's some information without using use's password.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 工作流程 一次HTTP操作称为一个事务,其工作过程可分为四步: 1)首先客户机与服务器需要建立连接。只要单击某个超...
    保川阅读 4,656评论 2 14
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,253评论 19 139
  • 一、概念(载录于:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436...
    yuantao123434阅读 8,553评论 6 152
  • API定义规范 本规范设计基于如下使用场景: 请求频率不是非常高:如果产品的使用周期内请求频率非常高,建议使用双通...
    有涯逐无涯阅读 2,788评论 0 6
  • 7月1日江苏暴雨警报,喜天公作美,一路云低,远见润扬灯火景。来到扬州会场后,雨却从天而倾!谢谢扬州雨的热情!...
    刘春红闲不闲知行合一阅读 282评论 0 2