存储型xss_【前端面试】存储型跨站脚本攻击 XSS (看不懂请在评论区打我)

跨站脚本脚本攻击 XSS 是近年来很流行的一种网络攻击。本文会用通俗的方式带你了解它的攻击原理是怎样的。

原理

被攻击的网站往往满足两个特征

1、具备表单元素

2、网站有漏洞,即,可以往表单元素插入存在 js 脚本的 html 元素。

我打算结合流程图讲解存储型 xss 攻击。

495fc422768c85494ff6ce2c110862e4.png

1、黑客在一个博客网站注册并登录。

2、黑客在博客中写入了带有恶意 js 的 html,这段 js 脚本会把访问博客的用户的 cookie 发至黑客的服务器

9f09cf4598e6191494da9e07fb4e105c.png

3、黑客提交博客,网站存在安全隐患。

4、管理员登入,网站生成 session 记录了管理员的用户信息,管理员浏览器中存放 cookie,包含 sessionId

5、管理员查看黑客博客,网站运行黑客脚本,脚本将管理员的 cookie 发送至黑客服务器。

6、黑客从 cookie 中获取 sessionId,通过 sessionId 登录管理员账户。

我相信,如果你了解 cookie 和 session 的基本知识,结合图看懂这 6 步并不是很难。如果你不了解 cookie 和 session 的基本原理,我在这篇文章有比较详细的讲解。

Mike:【前端面试】用一个例子帮你理解 session 和 cookie​zhuanlan.zhihu.com

解决方案

1、输入过滤,把输入中的 <>{} 等等敏感字符过滤,替换,转义,让黑客的脚本无法注入进 html。

b0888fb0c8eb72a78c401b2f1d09eeeb.png

2、禁止加载外域的代码。

3、禁止未授权的脚本执行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值