06-xss攻防于绕过

xss的攻击于防御

攻击的利用方式

1)获取cookie,实现越权,如果是获取到网站管理员的cookie,也可以叫提权。注意尽量尽快退出账号,删除session,让session失效

2)钓鱼网站,模拟真实的网站,获取用户信息(用户名密码等),先告诉账号密码不正确,再跳转到真实网站

3)执行js代码,用于DDOS攻击别的目标站点,在站点A植入xss代码,向站点b发起请求,当用户量大的时候,实现DDOS攻击

4)恶意链接让用户点击,或者直接将网页植入到站点的标签中

将上述代码以短链接(短网址)的方式发送(这也是隐藏链接的方式)

5)当用户点击并访问到恶意站点:,

<a href="http://xxx/xss.html">,在xss.html的网页中,可以执行js代码

一方面提供正常的网站功能,另一方面隐藏着DOS或挖矿代码让用户浏览器执行

2、测试方法(攻击方式)

1)反射型xss测试的时候,可以使用扫描器,或者burp进行fuzz

2)存储型xss测试的时候,可以直接把字典中的payload都塞进去,根据弹窗的编号,就知道时哪个。

但是这个容易发现,所有可以试探一下特殊字符是否被过滤。(会被存到数据库)

3)DOM型xss测试,主要以阅读js代码为主。在页面中找输入点的相关dom节点,

在开发者选项中搜索一下根据搜索结果去看是否被相关的js操作,

如果有js操作,就去看我们的输入操作后输出在哪个地方,就按照常规的xss思路进行构建。

<input type="submit" value="<img src=1 οnerrοr=alert(1)"/>

或<input type="botton" value="" οnclick=alert()"/>

扫描器,要么直接对一个URL地址进行xss的payload攻击上存在xss,

另一个思路是对整个网站使用爬虫手段爬取url地址,让后再批量扫描(扫描的核心就是字典)

3、防御手段

1)做实体字符编码,htmlspecialchars(),函数功能就是把特殊符号,比如尖括号,引号转换成实体编码,

这样就不会在输入的地方去干扰页面源码。经过实体字符编码后,用户输入的特殊符号在源代码中就变成编码,

但是在页面输出的时候,还是会显示成原来的样子。当输出的位置在元素内容里面,并且被实体编码后,基本上就没有XSS的可能了。

content = htmlspecialchars(_GET['content']);

2)正则表达式或字符串判断

实体字符编码如果输出在事件属性中,还是有可能存在绕过的可能性,比如在a标签中,

没有尖括号也没有引号,就有可能被绕过,

如果存在类似这种的情况,需要在链接属性中加上http://或https://的正则表达式来限制。

XSS的绕过方式

1.绕过过滤

1)前端限制,直接用F12开发者选项修改js或html代码即可,或者用burpsuite绕过。

2)字符过滤,双写,大小写绕过,通过注释符绕过,也可以通过换行符绕过。

3)HTML实体转换;

字符实体是用一个编号写入HTML代码中来代替一个字符,在使用浏览器网页时会将这个编号解析还原为字符以供阅读。

javascript:alert("hello")编码为:(使用burp中的docode继续转换)

2、绕过编码

明确浏览器解析的机制,明白机制后,选择对应的编码。

3、其他技巧

1)输入标签间的情况:测试<>是否被过滤或转义,若无则直接

2)输出在script标签内,我们需要在保证内部js语法正确的前提下,去插入我们的payload。

如果我们在输出在字符串内部,测试字符串能否被闭合。如果我们无法闭合包裹字符串的引号,

这个就很难利用了,可能的解决方案:可以控制两处输入且\可用、存在宽字节。

3)输入在HTML属性内:查看属性是否有双引号包裹、没有则直接添加新的事件属性;

有双引号包裹则测试双引号是否可用,可用则闭合属性之后添加新的属性里以HTML实体编码的方式引入任意字符,

从而方便我们在事件属性里以JS的方式构造payload。

相关推荐
世界尽头与你2 小时前
CVE-2016-2183_ OpenSSL 信息泄露漏洞
网络安全·渗透测试
火白学安全19 小时前
《Python红队攻防零基础脚本编写:进阶篇(一)》
开发语言·python·安全·web安全·网络安全·系统安全
llxxyy卢1 天前
XSS跨站之订单及shell箱子反杀记
前端·xss
老马爱知1 天前
第5篇 | Web应用的“外邪”:XSS、CSRF与SSRF漏洞详解
web安全·xss·csrf·零信任·ssrf·信任边界·攻防启示录
llxxyy卢1 天前
xss-maps(1-12)尝试思路过关加源码分析
前端·xss
Whoami!1 天前
⸢ 拾陆-Ⅵ⸥⤳ 安全数智化建设:安全管控平台
网络安全·信息安全·安全管控平台
lingggggaaaa1 天前
免杀对抗——C2远控篇&C&C++&DLL注入&过内存核晶&镂空新增&白加黑链&签名程序劫持
c语言·c++·学习·安全·网络安全·免杀对抗
jenchoi4132 天前
【2025-11-23】软件供应链安全日报:最新漏洞预警与投毒预警情报汇总
网络·数据库·安全·web安全·网络安全
AI绘画小332 天前
网络安全(黑客技术)—2025自学手册
网络·安全·web安全·网络安全·渗透测试
XH-hui2 天前
【打靶日记】HackMyVm 之 hunter
linux·网络安全·hackmyvm·hmv