浅谈CDN、SEO、XSS、CSRF (2)

XSS是指恶意攻击者利用网站没有对用户提交数据进行转义处理或者过滤不足的缺点,进而添加一些代码,嵌入到web页面中去。使别的用户访问都会执行相应的嵌入代码。

XSS跟SQL注入是类似的,它攻击有两种方式:

反射型

存储型

浅谈CDN、SEO、XSS、CSRF

浅谈CDN、SEO、XSS、CSRF

XSS攻击的危害是很大的,注入script可以执行任何的JS代码(意味着可以获取cookie等信息了),注入style可以把页面全部弄崩

防范XSS攻击

最重要的是:不要相信客户端发送过来的任何数据!

评论功能就最容易发生XSS攻击了

防范XSS攻击可简单分成三个步骤:

编码(对特殊的字符进行编码,<,',>等特殊字符

过滤(过滤掉一切可能被调用的属性,标签。比如:onclick,onerror,iframe等等)

浅谈CDN、SEO、XSS、CSRF

浅谈CDN、SEO、XSS、CSRF

浅谈CDN、SEO、XSS、CSRF

encode.js:可以使用https://github.com/mathiasbynens/he 中的he.js

domParse:可以用

浅谈CDN、SEO、XSS、CSRF

参考资料:

慕课网:Web安全-XSS

XSS跨站脚本攻击

XSS实战:我是如何拿下你的百度账号

揭秘——黑客是如何使用xss的

XSS攻击是什么,怎么秒杀iphone钓鱼站

CSRF 什么是CSRF

CSRF的全名为Cross-site request forgery,它的中文名为 跨站请求伪造(伪造跨站请求【这样读顺口一点】)
CSRF是一种夹持用户在已经登陆的web应用程序上执行非本意的操作的攻击方式。相比于XSS,CSRF是利用了系统对页面浏览器的信任,XSS则利用了系统对用户的信任。
CSRF攻击是源于Web的隐式身份验证机制!Web的身份验证机制虽然可以保证一个请求是来自于某个用户的浏览器,但却无法保证该请求是用户批准发送的

来源:

防御CSRF攻击

抵御CSRF攻击的关键在于:在请求中放入攻击者所不能伪造的信息,并且该信息不存在于Cookie之中

那么我们在提交表单时添加一个token并验证就行了,很简单

参考资料:

每日一题CSRF 是什么?

CSRF攻击与防御

如何用简洁生动的语言说明 XSS 和 CSRF 的区别?

如果文章有错的地方欢迎指正,大家互相交流。习惯在微信看技术文章,想要获取更多的Java资源的同学,可以关注微信公众号:Java3y

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpwfwd.html