XSS基础知识
slug
series-status
status
summary
date
series
type
password
icon
tags
category
引言
XSS (Cross-Site Scripting) 漏洞是一种常见的 Web 安全问题,它允许攻击者在受害者的 Web 浏览器中注入恶意脚本。这可以导致许多不同的安全问题,如数据窃取、会话劫持、广告篡改等。
攻击者通常利用 XSS 漏洞在 Web 页面中注入恶意脚本,然后当受害者访问该页面时,恶意脚本就会在其 Web 浏览器中执行。
为了防止 XSS 漏洞,Web 开发人员必须对输入数据进行验证和过滤,以确保它们不包含任何恶意代码。除此之外,使用安全的 Web 开发技术,如使用 Content Security Policy (CSP) 和 HTTP-only Cookies,也可以帮助保护 Web 应用程序免受 XSS 攻击。
对于XSS的危害,最严重的甚至可以获取被攻击者的摄像头权限,利用XSS漏洞获取被攻击者的摄像头权限的方法有以下几种:
- 在存在存储型XSS注入漏洞的网站上,插入JavaScript代码,当被攻击者访问该网站时,触发XSS代码,利用WebRTC API或Flash插件获取被攻击者的摄像头流,并将其发送给攻击者\[1\]。
- 利用CamOver工具,扫描并发现网络摄像头中的安全漏洞,例如CCTV、GoAhead和Netwave等,并尝试破解管理员密码,接管摄像头\[2\]。
- 利用反射型XSS注入漏洞,在URL中添加恶意参数,并诱使被攻击者点击该链接,当被攻击者打开链接时,触发XSS代码,利用WebRTC API或Flash插件获取被攻击者的摄像头流,并将其发送给攻击者\[3\]。
Pikachu靶场复现
反射型+存储型

Payload
复现
直接点击提交后抓包


修改message为payload并经过url编码。

放包后查看页面,发现成功弹窗。

借助盲打平台获取cookie
环境-蓝莲花
复现
这里我们借助蓝莲花docker版去获取目标cookie,目标是拿到pikachu靶场的cookie
首先我们登录蓝莲花管理端

新建js

将“网站地址”修改为自己的网站地址,然后点击左下角的添加,再点击右下角的新增。

然后点击生成payload

将生成的payload放到靶场尝试攻击。

可以看到蓝莲花成功接收到了来自靶场的xss信息


这里由于我们还没有登录pikachu靶场,所以这里的cookie并不是我们靶场的。
我们借助post模块再尝试同样的攻击,可以看到就可以接受到靶场的cookie了。

Dom型
观察靶场的domxss函数
可以看到这里是直接将用户的输入拼接到了a的href标签处,因此只需要先闭合前边的标签,再输入自己想要的内容即可。
payload
效果

Dom-x
效果同上,但是由于paylaod会带在请求里,因此可以直接发给被攻击者,危害更大。
XSS盲打
payload为蓝莲花生成的payload即可
输入到文本框

提交后访问同路径下的

回到蓝莲花,即可发现已经收到了cookie

XSS过滤
payload
将蓝莲花的payload中的script换为全大写并经过url编码即可
效果

htmlspecialchars
payload
效果

Loading...