HTTP协议详解–学习资料


网上的一些不错的关于HTTP协议的学习资料:


《 “HTTP协议详解–学习资料” 》 有 10 条评论

  1. HTTP 缓存机制一二三
    https://zhuanlan.zhihu.com/p/29750583
    `
    Web缓存大致可以分为:数据库缓存、服务器端缓存(代理服务器缓存、CDN 缓存)、浏览器缓存。
    浏览器缓存也包含很多内容: HTTP 缓存、indexDB、cookie、localstorage 等等。这里我们只讨论 HTTP 缓存相关内容。

    在具体了解 HTTP 缓存之前先来明确几个术语:
     缓存命中率:从缓存中得到数据的请求数与所有请求数的比率。理想状态是越高越好。
     过期内容:超过设置的有效时间,被标记为“陈旧”的内容。通常过期内容不能用于回复客户端的请求,必须重新向源服务器请求新的内容或者验证缓存的内容是否仍然准备。
     验证:验证缓存中的过期内容是否仍然有效,验证通过的话刷新过期时间。
     失效:失效就是把内容从缓存中移除。当内容发生改变时就必须移除失效的内容。
    `
    https://jakearchibald.com/2016/caching-best-practices/
    https://zhuanlan.zhihu.com/p/28113197

    浅谈Web缓存
    http://www.alloyteam.com/2016/03/discussion-on-web-caching/

  2. HTTP协议内攻击检测基本原理 · Manning23
    https://paper.tuisec.win/detail/992170c430cf7a7
    https://manning23.github.io/2018/06/13/HTTP%E5%8D%8F%E8%AE%AE%E5%86%85%E6%94%BB%E5%87%BB%E6%A3%80%E6%B5%8B%E5%9F%BA%E6%9C%AC%E5%8E%9F%E7%90%86/
    `
    网络攻击最重要的载体协议是HTTP协议,能利用HTTP协议进行的网络攻击方式多样,不限于以下内容。

    SQLI,XSS,CSRF,RCE,LFI,RFI,Brute Force,SSRF,SSTI,Deserialization,XXE。
    我们在对HTTP攻击检测时,由于各种原因,我们无法做到一个理想状态,我会以四个从攻击者视角的例子对此加以说明。

    S2-045远程代码执行漏洞(CVE-2017-5638)
    2015年12月的Joomla反序列化漏洞 0-day
    S2-052远程代码执行漏洞(CVE-2017-9805)
    各种SQL注入的bypass

    常规HTTP攻击检测做法流程如下:
    HTTP数据字段拆解
    重要字段特征匹配(多字段关联匹配)

    总结下来,规则检测存在两点不足:
    检测位置不充分,且易产生误报
    检测的能力体现取决于规则编写者

    适应当今攻防对抗,检测应该具备的能力
    ==
    首先在检测能力和质量上:
    · 检测内容不区分协议字段
    · 具备对抗混淆的能力
    · 能定义正常,异常,攻击

    接着在检测效率上:
    · 高于正则匹配的效率

    最后在日常运营上:
    · 具备高效的处理误报与漏报
    · 能高效的进行应急响应
    ==
    `

  3. synack 总结的 Web 认证绕过的几种常见攻击技术
    https://www.synack.com/blog/exploits-explained-5-unusual-authentication-bypass-techniques/
    `
    Example #1 – Refresh Token Endpoint Misconfiguration
    Example #2 – Improper SSO Configuration
    Example #3 – CMS Based Access Problems
    Example #4 – Usage of Example JWT Tokens
    Example #5 – Changing Authentication Type to Null

    Complex authentication mechanisms can fall prey to undiscovered attack vectors, especially on applications prone to business logic flaws. Because automatic scanners mostly fail to key into these kinds of vulnerabilities, human power is still needed to find them. Given the complexity of modern software environments, no single security researcher can pick up on all possible vulnerabilities or attack vectors. On-demand security testing with a vetted community of researchers is the best way to combine everyone’s unique knowledge to find the vulnerabilities that matter.
    复杂的身份认证机制可能成为未被发现的攻击向量的牺牲品,特别是在容易出现业务逻辑缺陷的应用程序上。因为自动扫描器大多无法发现这类漏洞,所以仍然需要人力来找到它们。鉴于现代软件环境的复杂性,没有任何一个安全研究人员能够发现所有可能的漏洞或攻击载体。由经过审查的研究人员组成的按需安全测试是结合每个人的独特知识来发现重要漏洞的最佳方式。
    即,靠谱的众测才是发现软件安全漏洞的靠谱方式。
    `

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注