Apache HTTP Server是美国阿帕奇(Apache)软件基金会的一款开源网页服务器。该服务器具有快速、可靠且可通过简单的API进行扩充的特点。 Apache2在处理CGI脚本输出超多数据到STDERR时存在问题,本地攻击者可以利用这个漏洞对Apache服务程序进行拒绝服务攻击。 在mod_cgi模块下如果在完成写入和关闭STDOUT之前CGI脚本输出超过4096字节到STDERR,由于mod_cgi中write()调用被琐等待CGI中获得更多输入而挂起。问题主要是mod_cgi开始读取所有stdout输入,然后开始读取STDERR输出,APR的处理流的file_io只有4096字节的缓冲区,在后续的脚本继续写入数据到STDERR时会挂起,等待mod_cgi通过APR file_io从流中读取部分数据。 由于Apache 2会等待从恶意CGI应用中获得更多输入,httpd进程就会挂起,当达到Apache限定的最大连接限制时,Apache就会停止正常的用户请求。
Apache HTTP Server是美国阿帕奇(Apache)软件基金会的一款开源网页服务器。该服务器具有快速、可靠且可通过简单的API进行扩充的特点。 Apache2在处理CGI脚本输出超多数据到STDERR时存在问题,本地攻击者可以利用这个漏洞对Apache服务程序进行拒绝服务攻击。 在mod_cgi模块下如果在完成写入和关闭STDOUT之前CGI脚本输出超过4096字节到STDERR,由于mod_cgi中write()调用被琐等待CGI中获得更多输入而挂起。问题主要是mod_cgi开始读取所有stdout输入,然后开始读取STDERR输出,APR的处理流的file_io只有4096字节的缓冲区,在后续的脚本继续写入数据到STDERR时会挂起,等待mod_cgi通过APR file_io从流中读取部分数据。 由于Apache 2会等待从恶意CGI应用中获得更多输入,httpd进程就会挂起,当达到Apache限定的最大连接限制时,Apache就会停止正常的用户请求。