• 黑客攻防技术宝典web实战篇笔记--第五章


    0.

    通过客户端传送数据,会受到的攻击

    • 可用通过修改表单的属性和属性值,或者发现隐藏表单字段
    • 修改referer消息头
    • 数据被客户端加密或者进行模糊处理,以模糊数据的形式提交到服务器,则尝试用超长值,错误字符串等方法攻击解密或者去模糊处理的服务器端逻辑。
    • 对cookie进行修改
    • 对ASP.NET viewState,可用通过base64解密表单数据内容

    1.

    收集数据

    • 看看html表单:有没有禁用的表单(disabled=“true"),有没有长度限制(maxlength="1")
    • 看看客户端脚本javascript
    • 分析浏览器的扩件,如java applet,flash,silverlight,可进行源码分析,反编译

    2.

    如何安全处理客户端数据

    • 对数据,客户端进行检查和过滤,服务器端也要进行检查和过滤
    • 查看日志,对异常数据进行警报

    3.

    课后思考题,应用程序开发者希望阻止攻击者对登录功能发动蛮力攻击。由于攻击者可能以多个用户名为目标,开发者决定将登录尝试失败次数保存在一个加密cookie中,阻止任何失败次数超过5次的请求。有什么办法能够避开这种防御?
           这种防御很容易突破。攻击者不需要提交跟踪登录尝试失败次数的cookie。他们可以在浏览器中禁用cookie,或使用自动化脚本不通过相关cookie提交请求。
           其他防御措施包括使用CAPTCHA控件暂时阻止攻击者,或在登录失败次数达到五次后阻止源IP地址,但是,这样做可能会对使用代理或NAT防火墙的多个用户造成负面影响。

  • 相关阅读:
    Python Requests-学习笔记(7)-Cookies
    Python Requests-学习笔记(6)-响应头
    Python Requests-学习笔记(5)-响应状态码
    Python Requests-学习笔记(4)-定制请求头和POST
    Python Requests-学习笔记(3)-处理json
    Python Requests-学习笔记(2)
    Python Request-学习笔记(1)
    编程就编程,我不参与政治
    非常漂亮的HTML5音乐播放器
    Dropzone.js实现文件拖拽上传
  • 原文地址:https://www.cnblogs.com/yongshenwu/p/13079706.html
Copyright © 2020-2023  润新知