美文网首页我爱编程
Web业务安全测试—CRLF注入攻击

Web业务安全测试—CRLF注入攻击

作者: Magicknight | 来源:发表于2018-05-27 23:48 被阅读441次

    最近测试发现了一个CRLF注入攻击。
    CRLF注入又称HTTP头部返回拆分攻击,原理是服务器未过滤攻击者输入的数据,而直接放到头部,导致攻击者通过注入\n\r(%0d%0a)能够控制HTTP返回头部,从而造成XSS注入攻击、Web缓存中毒、会话固定漏洞、302跳转攻击等攻击。(基于公司保密原则,不能泄露信息,这里转网上的文章)
    比如一个网站接受url参数http://test.sina.com.cn/?url=xxx,xxx放在Location后面作为一个跳转。如果我们输入的是:

    http://test.sina.com.cn/?url=%0d%0a%0d%0a<img src=1 onerror=alert(/xss/)>
    我们的返回包就会变成这样:

    HTTP/1.1 302 Moved Temporarily
    Date: Fri, 27 Jun 2014 17:52:17 GMT
    Content-Type: text/html
    Content-Length: 154
    Connection: close
    Location:

    <img src=1 onerror=alert(/xss/)>
    之前说了浏览器会根据第一个CRLF把HTTP包分成头和体,然后将体显示出来。于是我们这里<img>这个标签就会显示出来,造成一个XSS。

    解决方案:
    1、不要把用户的输入直接输出。
    2、过滤用户输入的\r\n。

    参考:
    1、http://www.cnblogs.com/studyskill/p/6972576.html

    相关文章

      网友评论

        本文标题:Web业务安全测试—CRLF注入攻击

        本文链接:https://www.haomeiwen.com/subject/wjzijftx.html