java%3c%3e如何转义_如何让前端更安全?——XSS 攻击和防御详解

最近深入了解了一下XSS攻击。以前总肤浅的认为XSS防御仅仅只是输入过滤可能造成的XSS而已。然而这池子水深的很呐。

java%3c%3e如何转义_如何让前端更安全?——XSS 攻击和防御详解_第1张图片

1,XSS的类型

总体来说,XSS分三类,存储型XSS、反射型XSS、DOM-XSS。

1.1、存储型XSS

数据库中存有的存在XSS攻击的数据,返回给客户端。若数据未经过任何转义。被浏览器渲染。就可能导致XSS攻击;

1.2、反射型XSS

将用户输入的存在XSS攻击的数据,发送给后台,后台并未对数据进行存储,也未经过任何过滤,直接返回给客户端。被浏览器渲染。就可能导致XSS攻击;

1.3、DOM-XSS

纯粹发生在客户端的XSS攻击,比如:

页面代码:…

Select your language:

document.write(""+document.location.href.substring(document.location.href.indexOf("default=")+8)+"");

document.write("English");

…复制代码

该XSS攻击实现条件:

用户点击了如下连接:http://www.some.site/page.html?default=复制代码

你可能感兴趣的:(java%3c%3e如何转义)