首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Kali Linux Web渗透测试手册(第二版) - 9.1 - 如何绕过xss输入验证

Kali Linux Web渗透测试手册(第二版) - 9.1 - 如何绕过xss输入验证

作者头像
用户1631416
发布2019-09-04 15:48:35
6300
发布2019-09-04 15:48:35
举报

标记红色的部分为今日更新内容。

9.0、介绍

9.1、如何绕过xss输入验证

9.2、对跨站脚本攻击(xss)进行混淆代码测试

9.3、绕后文件上传限制

9.4、绕过web服务器的CORS限制

9.5、使用跨站点脚本绕过CSRF保护和CORS限制

9.6、利用HTTP参数污染

9.7、通过HTTP头利用漏洞


9.0、介绍

到目前为止,在本书中,我们已经确定并利用了一些漏洞,这些漏洞是比较容易利用的,也就是说,在利用这些漏洞时,我们并没有被任何预防机制所拦截,比如说防火墙。

在实际渗透测试中,开发人员在努力的构建一个强壮且安全的应用程序,以至于漏洞不是很容易被发现的。要么该应用程序不存在漏洞,要么很难发现漏洞。在这种情况下,我们需要找到相关工具来攻破这种复杂的情况,并且能够识别和利用开发人员认为他们已经防止了的漏洞,可能不是以最优的方式来防护的。

在本章中,我们将讨论集中绕过防护和安全机制的方法,这些机制不会减少漏洞,而是试图隐藏它们或使他们的利用程度更加复杂化,当然这并不是解决安全问题的理想方法。


9.1、如何绕过xss输入验证

开发人员针对xss会进行输入验证,最常见的方法就是设置黑名单,过滤敏感字符。而这种验证方法可能会遗漏掉一些能攻击的字符,所以存在绕过方法。

下面的教程就讲述一些绕过黑名单验证的一些方法。

实战演练

我们将使用dvwa作为实验靶机,并设置安全类型为中。接着设置好burp代理:

1、首先,我们查看一下敏感字符如何被过滤的。如下截图所示,当尝试xss时,html标签会被移除。

2、我们将该请求发送到repeter模块中,进行重放:

3、我们有很多方法绕过这种限制,比如通过改变大小写的方式,将script改为sCriPt即可绕过:

4、根据repeater的回包可以判断xss成功执行:

原理剖析

在这节教程中,我们通过一个简单的方法绕过了脆弱的输入验证,因为大多数编程语言比较字符串都区分大小写,所以这个简单的黑名单无法挡住xss攻击。

另请参阅

使用大小写、各种编码、许多不同的html标签和事件触发xss的方法有很多,所以几乎不可能创建一个全面的黑名单。我们还可以这样绕过:

1、使用不同的html标签,比如<img>,<video>, 和 <div>,或将代码放入src参数或使用事件触发,比如onload、onerror、onmouseover等。

2、嵌套多个标签,比如<scr<script>ipt>,在这个payload中<script>若被删除,前后会重新拼合成一个script标签

3、在payload中尝试不同的编码也可绕过,比如我们将<script>进行url编码,编码后为%3c%73%63%72%69%70%74%3e

想查看更多绕过方法,可以查看:

https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-09-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 玄魂工作室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
网站渗透测试
网站渗透测试(Website Penetration Test,WPT)是完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,发现系统最脆弱的环节。渗透测试和黑客入侵最大区别在于渗透测试是经过客户授权,采用可控制、非破坏性质的方法和手段发现目标和网络设备中存在弱点,帮助管理者知道自己网络所面临的问题,同时提供安全加固意见帮助客户提升系统的安全性。腾讯云网站渗透测试由腾讯安全实验室安全专家进行,我们提供黑盒、白盒、灰盒多种测试方案,更全面更深入的发现客户的潜在风险。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档