Optionsbleed 破绽漏洞bug曝光 Apache Server 的内存数据信息
本周一网安研究员 Hanno Böck 发明,部门 Apache 服务器能够或许因 Optionsbleed 漏洞破绽bug(CVE-2017-9798)透露服务器内存信息。实际上这个漏洞破绽bug和 OpenSSL 的心脏滴血成绩有相似的处所,攻击者都能够查问服务器并向Apache服务器欺骗数据。今朝该漏洞破绽bug缘故原由曾经探明,评级为中危,影响的规模无限,运转 Apache Web 服务器的用户请进级至最新版本并装置补钉。【补钉见文末】
Böck 表现 Optionsbleed 在严重性上比不上 Heartbleed,因为Optionsbleed 仅仅会在 Apache web 服务器进程中泄漏信息,而不是透露一切全体的数据内容。也便是说,透露的数据内容仅限于Apache正在处置的内容,一样平常只是 WWeb 页面的内容。尽管如此风险仍旧存在,因为 Optionsbleed 仍然能够或许透露底本只要认证用户才可获取的特定页面内容。
Optionsbleed 若何影响服务器
咱们都晓得Web服务器的事情道理,每当客户端(如Web浏览器)向服务器收回哀求时,GET 或 POST 哀求会发送到服务器端,服务器响应就会传送 Web 页面的内容或响应的文件到客户端。
而 Apache 服务器能够或许响应许多其余的哀求(办法)——比方 PUT,PATCH,HEAD 以及其余办法。而这些哀求是跟着光阴成长逐步增加出去的,并不是一切的 Apache 服务器都能够支撑。是以,部门的服务器管理员能够或许会制止部门办法。而为了防止发送给服务器的哀求进入“黑洞”,Apache 服务器支撑名为 OPTIONS 的办法。客户端能够通过 OPTIONS 办法哀求查问服务器能够或许响应的HTTP办法,而服务器则会返还一串以逗号分开的支撑办法的名字。
Optionsbleed 漏洞破绽bug发明进程
此次 Optionsbleed 的漏洞破绽bug发明源于研究员 Böck 停止的一项测试,他扫描了 Alexa 排名前 100 万的网站,来看看哪些网站应用支撑 OPTIONS 的 Apache 服务器。而测试成果表现,466 台主机响应了与下述内容相似的乱码答复。
Allow: ,GET,,,POST,OPTIONS,HEAD,,
Allow: POST,OPTIONS,,HEAD,:09:44 GMT
Allow: GET,HEAD,OPTIONS,,HEAD,,HEAD,,HEAD,, HEAD,,HEAD,,HEAD,,HEAD,POST,,HEAD,, HEAD,!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd“
Allow: GET,HEAD,OPTIONS,=write HTTP/1.0,HEAD,,HEAD,POST,,HEAD,TRACE
能够看到,除失常的的 Allow 响应以外,其中的这 466 台服务器还回答了一些随机数据,看起来像网页的源代码——这些便是所谓的透露内容了。 Böck 发明本身无奈重现成绩并找到症结地点,所以他立刻向Apache网安团队报告请示了本身的发明。
随后,Apache 开辟职员 Jacob Champion 帮忙停止查问拜访以后发明,Apache 源代码中存在 Optionbleed 漏洞破绽bug,睁开修补后立刻供给了补钉文件。
Optionsbleed 漏洞破绽bug只影响大批服务器
在停止深刻查问拜访 Optionsbleed 以后, Böck 和 Champion 发明 Optionsbleed 在风险性上远远不如此前OpenSSL招致的心脏滴血成绩(Heartbleed)。成绩呈现的条件是——管理员在服务器设置装备摆设的.htaccess 文件中应用了 “Limit” 选项。
Deny from all
一样平常,服务器管理员将 .htaccess 文件放在 Apache 服务器文件夹中,以便设置仅适用于该文件目次的规矩。而服务器一切者应用 .htaccess 的 “Limit” 选项来节制服务器零丁在该文件夹中应对的哀求。
Böck 和 Champion则表现,假如.htaccess文件的规矩与放置在下层目次或通俗服务器设置装备摆设中的.htaccess文件中的限定规矩相抵触时,Apache 就会堕入混杂,是以呈现 Optionsbleed 漏洞破绽bug。
从技巧角度来看,这是一个 use-after-free 的漏洞破绽bug,会在 Apache 服务器附近的内存地区透露出内容。
漏洞破绽bug测试剧本
最简单的测试办法是在轮回中应用 Curl 发送OPTIONS 哀求:
for i in {1..100}; do curl -sI -X OPTIONS https://www.google.com/|grep -i "allow:"; done
分歧的服务器设置装备摆设下,对付OPTION哀求能够或许会有分歧的响应。必要测试的用户能够测验考试分歧的门路,HTTP或许 HTTPS host,有 www 或没有 www开首的地点都能够或许招致分歧的测试成果。
python的POC剧本【github】
成绩从 2014 年开始就存在
也有其余用户指出,这个成绩此前在2014年时曾被 Old Dominion University 的研究员发明过并写在论文中。
但今朝来看 Apache Web 服务器团队尚未宣布新的二进制文件,今朝可用的补钉文件适用于2.4.x和2.2.x版本。
而对付运转在同享情况中的Apache服务器,因为多个用户在同一台机械上都不输了分歧的.htaccess文件,最有能够或许遭到 Optionsbleed 漏洞破绽bug影响。倡议一切服务器尽快装置补钉。
本周一网安研究员 Hanno Böck 发明,部门 Apache 服务器能够或许因 Optionsbleed 漏洞破绽bug(CVE-2017-9798)透露服务器内存信息。实际上这个漏洞破绽bug和 OpenSSL 的心脏滴血成绩有相似的处所,攻击者都能够查问服务器并向Apache服务器欺骗数据。今朝该漏洞破绽bug缘故原由曾经探明,评级为中危,影响的规模无限,运转 Apache Web 服务器的用户请进级至最新版本并装置补钉。【补钉见文末】
Böck 表现 Optionsbleed 在严重性上比不上 Heartbleed,因为Optionsbleed 仅仅会在 Apache web 服务器进程中泄漏信息,而不是透露一切全体的数据内容。也便是说,透露的数据内容仅限于Apache正在处置的内容,一样平常只是 WWeb 页面的内容。尽管如此风险仍旧存在,因为 Optionsbleed 仍然能够或许透露底本只要认证用户才可获取的特定页面内容。
Optionsbleed 若何影响服务器
咱们都晓得Web服务器的事情道理,每当客户端(如Web浏览器)向服务器收回哀求时,GET 或 POST 哀求会发送到服务器端,服务器响应就会传送 Web 页面的内容或响应的文件到客户端。 无奈人生安全网
而 Apache 服务器能够或许响应许多其余的哀求(办法)——比方 PUT,PATCH,HEAD 以及其余办法。而这些哀求是跟着光阴成长逐步增加出去的,并不是一切的 Apache 服务器都能够支撑。是以,部门的服务器管理员能够或许会制止部门办法。而为了防止发送给服务器的哀求进入“黑洞”,Apache 服务器支撑名为 OPTIONS 的办法。客户端能够通过 OPTIONS 办法哀求查问服务器能够或许响应的HTTP办法,而服务器则会返还一串以逗号分开的支撑办法的名字。
Optionsbleed 漏洞破绽bug发明进程
此次 Optionsbleed 的漏洞破绽bug发明源于研究员 Böck 停止的一项测试,他扫描了 Alexa 排名前 100 万的网站,来看看哪些网站应用支撑 OPTIONS 的 Apache 服务器。而测试成果表现,466 台主机响应了与下述内容相似的乱码答复。
Allow: ,GET,,,POST,OPTIONS,HEAD,,
Allow: POST,OPTIONS,,HEAD,:09:44 GMT
Allow: GET,HEAD,OPTIONS,,HEAD,,HEAD,,HEAD,, HEAD,,HEAD,,HEAD,,HEAD,POST,,HEAD,, HEAD,!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd“ www.wnhack.com
Allow: GET,HEAD,OPTIONS,=write HTTP/1.0,HEAD,,HEAD,POST,,HEAD,TRACE
能够看到,除失常的的 Allow 响应以外,其中的这 466 台服务器还回答了一些随机数据,看起来像网页的源代码——这些便是所谓的透露内容了。 Böck 发明本身无奈重现成绩并找到症结地点,所以他立刻向Apache网安团队报告请示了本身的发明。
随后,Apache 开辟职员 Jacob Champion 帮忙停止查问拜访以后发明,Apache 源代码中存在 Optionbleed 漏洞破绽bug,睁开修补后立刻供给了补钉文件。
Optionsbleed 漏洞破绽bug只影响大批服务器
在停止深刻查问拜访 Optionsbleed 以后, Böck 和 Champion 发明 Optionsbleed 在风险性上远远不如此前OpenSSL招致的心脏滴血成绩(Heartbleed)。成绩呈现的条件是——管理员在服务器设置装备摆设的.htaccess 文件中应用了 “Limit” 选项。
Deny from all
一样平常,服务器管理员将 .htaccess 文件放在 Apache 服务器文件夹中,以便设置仅适用于该文件目次的规矩。而服务器一切者应用 .htaccess 的 “Limit” 选项来节制服务器零丁在该文件夹中应对的哀求。
Böck 和 Champion则表现,假如.htaccess文件的规矩与放置在下层目次或通俗服务器设置装备摆设中的.htaccess文件中的限定规矩相抵触时,Apache 就会堕入混杂,是以呈现 Optionsbleed 漏洞破绽bug。
从技巧角度来看,这是一个 use-after-free 的漏洞破绽bug,会在 Apache 服务器附近的内存地区透露出内容。
漏洞破绽bug测试剧本
最简单的测试办法是在轮回中应用 Curl 发送OPTIONS 哀求:
for i in {1..100}; do curl -sI -X OPTIONS https://www.google.com/|grep -i "allow:"; done
分歧的服务器设置装备摆设下,对付OPTION哀求能够或许会有分歧的响应。必要测试的用户能够测验考试分歧的门路,HTTP或许 HTTPS host,有 www 或没有 www开首的地点都能够或许招致分歧的测试成果。
python的POC剧本【github】
成绩从 2014 年开始就存在
也有其余用户指出,这个成绩此前在2014年时曾被 Old Dominion University 的研究员发明过并写在论文中。
但今朝来看 Apache Web 服务器团队尚未宣布新的二进制文件,今朝可用的补钉文件适用于2.4.x和2.2.x版本。
而对付运转在同享情况中的Apache服务器,因为多个用户在同一台机械上都不输了分歧的.htaccess文件,最有能够或许遭到 Optionsbleed 漏洞破绽bug影响。倡议一切服务器尽快装置补钉。 内容来自无奈安全网