《Web黑客技术揭密》第六章-漏洞挖掘笔记-结合白帽子讲web安全

本文详细探讨了Web应用中的XSS漏洞,包括字符集缺陷导致的XSS、绕过浏览器XSS Filter的方法以及混淆代码的技巧。内容涵盖了XSS攻击的各种类型,如反射型和存储型XSS,以及防御策略,如设置HTTP响应头的X-Frame-Options、使用CSRF token等。此外,还讨论了HTML、CSS和JS中的编码与解码,以及如何利用JSONP和CSS注入进行攻击。最后,提供了检查和防御XSS漏洞的CheckList。
摘要由CSDN通过智能技术生成
  • CSRF漏洞挖掘需要确认以下信息:

    1. 目标表单是否有有效的token随机串
    2. 目标表单是否有验证码
    3. 目标是否判断了Referer来源
    4. 根目录下 crossdoman.xml的 allow-access-from domain 是否是通配符
    5. 目标JSON是否可以自定义callback等
  • 界面劫持漏洞挖掘需要确认以下信息:

    1. 目标HTTP响应头是否设置了X-Frame-Options字段
    2. 目标是否有javascript的Frame Busting机制
    3. 用iframe嵌入目标网站试试,若成功,则说明存在漏洞
  • 针对URL,可以利用的输入点是 id=1 ,输出点主要有:

    • HTML标签之间,如:<body>[输出]</body>
    • HTML标签之内,如:<input type='text' value='[输出]'
    • 成为javascript代码的值,如:<script>a='[输出]'</script>
    • 成为css代码的值,如:<style>body{font-size:[输出]px}</style>
  • HTML形式的编码

    • 进制编码:&#xH(十六进制格式)、&#D(十进制),最后的分号可以不要
    • HTML实体编码,如空格为等
  • 在js执行之前,HTML形式的编码会自动解码。具体参见书本 P138

  • 具备 HtmlEncode 功能的标签

<body>
  <script>function $(id){return document.getElementById(id);}</script>
<input 
  type='button' value='btn1'
  onclick="$('i1').innerHTML='<img onerror=alert(1) />';alert($('i1').innerHTML)" />
<input 
  type='button' value='btn2' 
  onclick="$('i2').innerHTML='<img onerror=alert(1) />';alert($('i2').innerHTML)" />

  <textarea id='i1'>3333</textarea>
  <div id="i2"></div>

</body>

<!-- btn1 结果 为 <img onerror=alert(1)/> -->
<!-- btn2 结果 为 <img onerror=alert(1)/>; -->

通过返回结果可以看出区别,因为textarea不解析html,类似的标签还有 <title></title><iframe></iframe><noscript></noscript><noframes></noframes>;另外还有 xmpplaintext

注意以下返回区别:

var textarea = document.createElement('textarea');
textarea.innerHTML='<div>innerText</div>';
console.log(textarea.innerHTML)
// <div>innerText</div> (chro
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值