邮箱登录  ID: PW:
会员中心
答疑论坛
客服热线
您的位置: 网站首页 新闻中心 病毒 → Lighttpd 存在模块请求头部分远程溢出漏洞


Lighttpd 存在模块请求头部分远程溢出漏洞

编辑: 来源:赛迪网 时间:2007-12-06 人气:

【绿盟科技授权,赛迪发布,谢绝任何网站转载,违者,赛迪网将保留追究其法律责任的权利!】

发布日期:2007-09-10

更新日期:2007-09-11

受影响系统:

LightTPD LightTPD 1.4.17

不受影响系统:

LightTPD LightTPD 1.4.18

描述:

--------------------------------------------------------------------------------

BUGTRAQ ID: 25622

CVE(CAN) ID: CVE-2007-4727

Lighttpd是一款轻型的开放源码Web Server软件包。

Lighttpd的mod_fastcgi扩展在处理HTTP请求头时存在缓冲区溢出漏洞,远程攻击者可能利用此漏洞控制服务器。

fcgi_env_add_request_headers(srv, con, p);
fcgi_header(&(header), FCGI_PARAMS, request_id, p->fcgi_env->used, 0);
buffer_append_memory(b, (const char *)&header, sizeof(header));
buffer_append_memory(b, (const char *)p->fcgi_env->ptr, p->fcgi_env->used);

上面的代码会读取所有客户端所请求的头并创建fastcgi头,然后将fastcgi头发送给PHP,但没有考虑contentLength是否大于0xffff,因此可能出现溢出:

static int fcgi_header(FCGI_Header * header, unsigned char type, 
size_t request_id, int contentLength, unsigned char paddingLength) {
...
     header->contentLengthB0 = contentLength & 0xff;
     header->contentLengthB1 = (contentLength >> 8) & 0xff;
...

如果用户所提交的HTTP请求包含有超长头的话,就可能添加或替换PHP头,如SCRIPT_FILENAME,导致执行任意指令。

<*来源:Mattias Bengtsson (mattias@secweb.se)

Philip Olausson (po@secweb.se)

链接:http://secweb.se/en/advisories/lighttpd-fastcgi-remote-vulnerability/

http://secunia.com/advisories/26732/

http://www.lighttpd.net/assets/2007/9/9/lighttpd_sa_2007_12.txt

*>

建议:

--------------------------------------------------------------------------------

厂商补丁:

LightTPD

--------

目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

http://www.lighttpd.net/download/lighttpd-1.4.18.tar.bz2

(责任编辑:李磊)

极目楚天 [ www.ctt169.com ] 帮助中心友情链接网站地图意见投诉法律声明诚聘英才广告服务关于我们