Kali Linux Web渗透测试手册(第二版) - 9.7 - 通过HTTP头利用漏洞

翻译来自

掣雷安全小组

翻译成员信息

thr0cyte,Gr33k,花花,

MrTools,R1ght0us,7089bAt

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

9.0、介绍

9.1、如何绕过xss输入验证

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

9.3、绕过文件上传限制

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

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

9.6、利用HTTP参数污染

9.7、通过HTTP头利用漏洞

通过HTTP头利用漏洞

发人员在编程输入验证代码时,往往把重点放在url和请求数据中,经常会忽略这样一个事实:整个请求的参数都可以被修改,所以cookie等http头很容易被插入恶意payload

下面的教程中,我们将识别并利用能影响回显的http头

怎么做

我们回到Mutillidae中,这次我们将使用

OWASP 2013 | A1 - Injection(SQL) | BypassAuthentication | Login exercise靶机

1. 首先发送不存在的用户名和密码,显示登陆失败

2. 将该请求发送到repeater模块中

3. 在重放中,我们将测试user-agent的注入可能性,

将'+and+'1'='添加到user-agent头中

4. 比较两次响应的值我们会发现大了几个字节,如下截图所示:

5. 为了更加清晰明了的看出不同,我们将两次结果发送到comparer模块中

6. 点击words,比较回显中不同的字符

7. 将右下方的‘sync views’勾选上即可同步视图,在查找中,我们发现了两次结果的不同点:

8. 可以看到user-agent的值被返回到了浏览器页面上,所以猜测可能存在xss漏洞,下面我们来验证一下

9. 再次发送一个登陆请求,利用burp拦截下来。

10. 将 <img src=X onerror="alert('XSS')"> 添加进user-agent中:

11. 提交请求,我们可以发现payload被成功执行

原理剖析

在这节教程中,我们准备测试登陆表单中的sql注入漏洞,但是从结果回显来看可以发现输入被原封不动的返回到了页面中,所以我们又判断可能存在xss漏洞。接着我们插入<img>标签成功验证了猜想。

原文发布于微信公众号 - 小白帽学习之路(bat7089)

原文发表时间:2019-09-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券