XSS (跨站脚本攻击)
XSS是Cross Site Scripting的缩写,为了避免和CSS混淆,所以缩写成XSS.
简介
XSS是指恶意攻击者利用网站没有对用户提交数据进行转义处理或者过滤不足的缺点,进而添加一些js代码,嵌入到web页面中去, 使得恶意代码遭到执行。
一般分为两种
反射型 :
通过url带入一些参数,然后将url发送给其他用户盗取信息
存储型 :
将脚本提交到目标网站的db中存储,当其他用户访问到该信息的时候js代码执行,盗取信息.
主要防御手段 :
转义敏感字符
CSP
CSRF (跨站请求伪造)
CSRF是指攻击者伪造一个第三方网站,并在网页中制作form表单或者url链接,指向目标网站,当用户点击按钮,该网页会将form提交到目标网站,并且如果该用户在本机登陆过目标网站后,会将cookie也带过去,造成用户在不知情的情况下,发生目标网站的请求.甚至攻击者可以将恶意请求伪装在img标签或者脚本中,在用户不点击的情况下也可发生请求.
主要防御手段 :
禁止第三方网站带cookies
same-site属性
前段页面加验证码
页面在localstory加token
referer为B网站
Cookies
cookie增加签名防止用户串改
点击劫持
攻击者伪造网站,在网站内嵌入ifream并连接到目标网站,并将ifream的透明度设置为0,然后在网站的上伪造按钮,当用户点击按钮时,实际上是操作的ifream,单用户并不知情,用为ifream的透明度为0,用户看不见.
主要防御手段 :
js禁止内嵌
X-FRAME-OPTIONS htp头部
http传输窃听和串改
主要防御手段 :
https TLS加密