新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 新闻中心 > 安全资讯 > 正文:Lighttpd 存在模块请求头部分远程溢出漏洞

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

新客网 XKER.COM 2007-10-25 来源: 绿盟科技 收藏本文

 

发布日期: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

收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐