前端——安全类

安全类

一、CSRF:通常称为跨站请求伪造,英文名Cross-Site request forgery缩写CSRF

CSRF攻击原理:

 

实现CSRF攻击的两大因素:

1、网站中接口存在漏洞

2、用户一定在注册网站登录过

 

 

 

CSRF防御措施:

1、Token验证

2、Referer验证(存在于HTTP的头部,页面来源验证)

3、隐藏令牌

二、XSS攻击——cross-site scripting 跨站脚本攻击

XSS攻击Web攻击中最常见的攻击方法之一,它是通过对网页注入可执行代码且成功地被浏览器执行,达到攻击的目的,形成了一次有效XSS攻击,一旦攻击成功,它可以获取用户的联系人列表,然后向联系人发送虚假诈骗信息,可以删除用户的日志等等,有时候还和其他攻击方式同时实施比如SQL注入攻击服务器和数据库、Click劫持、相对链接劫持等实施钓鱼,它带来的危害是巨大的,是web安全的头号大敌。

 

攻击条件:

1、需要向Web页面注入恶意代码

2、恶意代码能够被浏览器成功执行

 

XSS攻击方式:反射型、存储型

反射型:发出请求时,XSS代码出现在URL中,作为输入提交到服务器端,服务器端解析后响应,XSS代码随响应内容一起传回给浏览器,最后浏览器解析执行XSS代码,这个过程像一次反射,故叫做反射型XSS。

存储型:存储型XSS和反射型XSS的差别仅在于提交的代码会存储在服务器端吧(数据库、内存、文件系统等),下次请求目标页面时不用再提交XSS代码。

XSS防御措施:

1、编码——对用户输入的数据进行HTML Entity编码

2、过滤——移除用户上传的DOM属性,如:onerror等

移除用户上传的style节点,script节点,iframe节点等。

3、校正——避免直接对HTML Entity解码

使用DOM Parse转换,校正不配对的DOM标签。

 

CSRF与XSS的区别:

XSS是向页面注入JS去运行,在JS函数体里做它想做的事;CSRF利用本身的漏洞帮你自动执行接口,CSRF依赖于用户要登录的网站。

 

猜你喜欢

转载自blog.csdn.net/wang_NiFeng/article/details/81057619