写这篇文章不是为了去攻击其他的网站,只是为了重视web安全。
Web安全的分类
1. XSS攻击
什么是XSS攻击
xss攻击:cross-site scripting 故名思议,跨站点脚本注入。是指在一些页面通过注入一些script脚本或者actionScript脚本,而达到攻击的目的。
XSS攻击的类型
反射型XSS(非持久性XSS),通过注入一些脚本 存储型XSS(持久型XSS),能存储在服务器端,比如留言板XSS DOM XSS 与反射型XSS的区别在于,DOM XSS不需要服务器的解析
xss攻击的危害:
cookie窃取:攻击者能够通过documents.cookie访问受害者用户关联的cookie,然后传到攻击者自己的服务器中,接着从这些信息中提取如sessionID这些敏感信息; 记录用户行为 钓鱼网站
2. CSRF
CSRF,是cross site request forgery 跨站点请求伪造,这里和XSS的区别在于请求的伪造和跨站点的请求。
比如一个Hacker想获取a站的信息,但是他没有访问权限,那么他就构造一个b.html 诱骗具有访问权限的用户访问b.html,然后在b.html中跨域获取a站的信息,因为这时候除了referer不一样,http请求是完全一样的,也会携带用户信息。
因为浏览器同源策略,本来只能访问同一个域下的资源。但是由于浏览器和服务器资源很多时候并不在同一域名下(尤其是现在的前后端分离的开发模式),因此出现了很多跨域策略,如CORS、jsonp,iframe,window.name, document.domain, postMessage….这些跨域策略的出现,也导致很多CSRF漏洞。
CSRF类型
HTML CSRF攻击 JSON HiJacking Flash CSRF攻击
CSRF危害
篡改目标网站上的用户数据 盗取用户隐私数据 作为其他攻击向量的辅助攻击方法 传播CSRF蠕虫
3. 界面操作劫持
界面操作劫持是指在页面的可见输入控件上覆盖一个不可见的款(iframe)。
用户以为在点页面上的点,其实说不定已经完成了一个“转账的过程“;
界面操作劫持的分类:
1、点击劫持
2、拖放劫持
3、触屏劫持
Web漏洞的挖掘
1.CSRF漏洞
目标表单是否有有效的token随机串 目标表单是否有验证码 目标是否判断了Referer来源 allow-access-from-domain是否是通配符“*“ 目标json数据是否可以自定义callback函数
2.界面劫持漏洞
目标的HTTP响应头是否设置了X-Frame-Options字段 目标是否有Javascript的Frame Busting机制。
X-Frame-Options 响应头
X-Frame-Options 有三个值:
DENY
表示该页面不允许在 frame 中展示,即便是在相同域名的页面中嵌套也不允许。
SAMEORIGIN
表示该页面可以在相同域名页面的 frame 中展示。
ALLOW-FROM uri
表示该页面可以在指定来源的 frame 中展示。