安全作业(6)
xss相关知识点
1.什么是XSS
XSS叫做跨站脚本攻击,是指恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。
xss漏洞通常是通过php的输出函数将javascript代码输出到html页面中,通过用户本地浏览器执行的,所以xss漏洞关键就是寻找参数未过滤的输出函数。
2.产生层面
他一般情况下都是在前端产生的;JavaScript代码能干什么,执行之后就会达到相应的效果。
3.危害影响
控制企业数据,包括读取、篡改、添加、删除企业敏感数据的能力
盗窃企业重要的具有商业价值的资料
非法转账
强制发送电子邮件
网站挂马
控制受害者机器向其它网站发起攻击
4.常出现的场景
文章发表、评论、留言、注册资料的地方、修改资料的地方等
XSS跨站漏洞原理和分类
1、反射型
攻击者事先制作好攻击链接, 需要欺骗用户自己去点击链接才能触发XSS代码(服务器中没有这样的页面和内容),一般容易出现在搜索页面。比如说搜索框的反射型XSS【在搜索框中提交交PoC[scriptalert(/xss/)/script],点击搜索,即可触发反射型XSS。】
2、DOM型
基于文档对象模型Document Objeet Model,DOM)的一种漏洞。DOM是一个与平台、编程语言无关的接口,它允许程序或脚本动态地访问和更新文档内容、结构和样式,处理后的结果能够成为显示页面的一部分。
它攻击的payload由于修改受害者浏览器页面的DOM树而执行,==特殊的地方就是payload在浏览器本地修改DOM树而执行,不会传到服务器上,所以这也导致了DOM XSS比较难检测。
3、存储型
代码是存储在服务器中的,如在个人信息或发表文章等地方,加入代码,如果没有过滤或过滤不严,那么这些代码将储存到服务器中,每当有用户访问该页面的时候都会触发代码执行,这种XSS非常危险,容易造成蠕虫,大量盗窃cookie(虽然还有种DOM型XSS,但是也还是包括在存储型XSS内)。
XSS的危害
1.挂马
2.盗取用户Cookie。
3.DOS(拒绝服务)客户端浏览器。
4.钓鱼攻击,高级的钓鱼技巧。
5.删除目标文章、恶意篡改数据、嫁祸。
6.劫持用户Web行为,甚至进一步渗透内网。
7.爆发Web2.0蠕虫。
8.蠕虫式的DDoS攻击。
9.蠕虫式挂马攻击、刷广告、刷浏量、破坏网上数据
10.其它安全问题
XSS能做什么
- 盗取
Cookie
并发送(用的最频繁的) ,document.cookie
—— 读取cookie
,AJAX【核心是默认异步执行机制,依靠JS
】发送数据 - 获取内网
ip
(攻击内网、扫描内网) - 获取浏览器保存的明文密码
- 截取网页屏幕
- 网页上的键盘记录
(复现20字符短域名绕过之后补上)