udate img
This commit is contained in:
@@ -214,21 +214,3 @@ http状态码分类:
|
||||
|
||||
面试时,不会深究管线化。如果真要问你,就回答:“我没怎么研究过,准备回去看看~”
|
||||
|
||||
面试中,能答出前三条,就已经很好了。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -38,7 +38,6 @@ PS:中文名一定要记住。英文全称,如果记不住也拉倒。
|
||||
|
||||
用户是网站A的注册用户,且登录进去,于是网站A就给用户下发cookie。
|
||||
|
||||
|
||||
从上图可以看出,要完成一次CSRF攻击,受害者必须满足两个必要的条件:
|
||||
|
||||
(1)登录受信任网站A,并在本地生成Cookie。(如果用户没有登录网站A,那么网站B在诱导的时候,请求网站A的api接口时,会提示你登录)
|
||||
@@ -49,8 +48,7 @@ PS:中文名一定要记住。英文全称,如果记不住也拉倒。
|
||||
|
||||
温馨提示一下,cookie保证了用户可以处于登录状态,但网站B其实拿不到 cookie。
|
||||
|
||||
|
||||
举个例子,前端事假你,微博网站有个api接口有漏洞,导致很多用户的粉丝暴增。
|
||||
举个例子,前段时间里,微博网站有个api接口有漏洞,导致很多用户的粉丝暴增。
|
||||
|
||||
### 3、CSRF如何防御
|
||||
|
||||
@@ -102,33 +100,24 @@ XSS攻击的核心原理是:不需要你做任何的登录认证,它会通
|
||||
|
||||
- D-doss攻击
|
||||
|
||||
|
||||
### XSS的攻击方式
|
||||
|
||||
|
||||
- 1、反射型
|
||||
|
||||
发出请求时,XSS代码出现在url中,作为输入提交到服务器端,服务器端解析后响应,XSS代码随响应内容一起传回给浏览器,最后浏览器解析执行XSS代码。这个过程像一次反射,所以叫反射型XSS。
|
||||
|
||||
- 2、存储型
|
||||
|
||||
|
||||
存储型XSS和反射型XSS的差别在于,提交的代码会存储在服务器端(数据库、内存、文件系统等),下次请求时目标页面时不用再提交XSS代码。
|
||||
|
||||
|
||||
|
||||
|
||||
### XSS的防范措施(encode + 过滤)
|
||||
|
||||
|
||||
XSS的防范措施主要有三个:
|
||||
|
||||
|
||||
**1、编码**:
|
||||
|
||||
对用户输入的数据进行`HTML Entity`编码。
|
||||
|
||||
|
||||
如上图所示,把字符转换成 转义字符。
|
||||
|
||||
|
||||
@@ -153,8 +142,6 @@ Encode的作用是将`$var`等一些字符进行转化,使得浏览器在最
|
||||
|
||||
- 移除用户输入的Style节点、Script节点、Iframe节点。(尤其是Script节点,它可是支持跨域的呀,一定要移除)。
|
||||
|
||||
|
||||
|
||||
**3、校正**
|
||||
|
||||
- 避免直接对`HTML Entity`进行解码。
|
||||
@@ -166,14 +153,11 @@ Encode的作用是将`$var`等一些字符进行转化,使得浏览器在最
|
||||
|
||||
比较常用的做法是,通过第一步的编码转成文本,然后第三步转成DOM对象,然后经过第二步的过滤。
|
||||
|
||||
|
||||
**还有一种简洁的答案:**
|
||||
|
||||
首先是encode,如果是富文本,就白名单。
|
||||
|
||||
|
||||
|
||||
|
||||
## CSRF 和 XSS 的区别
|
||||
|
||||
面试官还可能喜欢问二者的区别。
|
||||
@@ -192,10 +176,8 @@ Encode的作用是将`$var`等一些字符进行转化,使得浏览器在最
|
||||
- XSS:是向网站 A 注入 JS代码,然后执行 JS 里的代码,篡改网站A的内容。
|
||||
|
||||
|
||||
|
||||
## 其他
|
||||
|
||||
|
||||
### XSS
|
||||
|
||||
关于XSS,推荐几个网站:
|
||||
@@ -204,7 +186,6 @@ Encode的作用是将`$var`等一些字符进行转化,使得浏览器在最
|
||||
|
||||
里面列出了很多XSS的例子,可以长见识。如果你专门研究XSS,可以看看。
|
||||
|
||||
|
||||
- [FreeBuf网站上的专栏作者:Black-Hole](http://www.freebuf.com/author/black-hole)
|
||||
|
||||
比如,他的第一篇文章就讲到了[XSS的原理分析与解剖](http://www.freebuf.com/articles/web/40520.html)。有句话摘抄如下:弹窗只是测试xss的存在性和使用性。
|
||||
@@ -220,6 +201,3 @@ Encode的作用是将`$var`等一些字符进行转化,使得浏览器在最
|
||||
上面的项目都跟安全相关,有些仓库是可以直接运行的。如果你不需要定制,就可以直接用别人的,没必要自己写XSS库、XSS的过滤之类的,避免麻烦。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user