中国站

NullLogic Groupware pgSQLQuery函数缓冲区溢出安全漏洞

CNNVD-ID编号 CNNVD-200907-104 CVE编号 CVE-2009-2356
发布时间 2009-07-07 更新时间 2009-07-09
漏洞类型 缓冲区溢出 漏洞来源 Tim Brown securityfocus@machine.org.uk
危险等级 超危 威胁类型 远程
厂商 dan_cahill

漏洞介绍

Groupware是一个开源的团队协作软件,包含有即时消息、公共论坛、邮件等多种功能。

远程攻击者可以通过向Groupware的多个模块提交恶意参数请求导致拒绝服务或执行任意代码。

当Groupware配置为使用PostgreSQL数据库服务器时会调用以下函数:

int pgSQLQuery(CONN *sid, int sqr, char *SQLquery)

{

...

char query[8192];

...

memset(query, 0, sizeof(query));

snprintf(query, sizeof(query)-1, DECLARE myportal CURSOR FOR );

strncat(query, SQLquery, sizeof(query));

...

}

该函数在栈上为查询分配了8192字节的缓冲区,然后继续创建SQL查询,但在创建28字节固定长度的字符串时最多又连接了8192字节的数据,因此写到栈上的全部数据(8220字节)大于最初所分配的缓冲区。理论上只要所传送的SQLquery值大于8163字节,就可以溢出函数基指针(\\%ebp)和返回地址(\\%eip)。

漏洞补丁

目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

参考网址

受影响实体

信息来源

查询漏洞

    • 漏洞名称
    • CVE编号
    • CNNVD编号
  • 开始时间

  • 结束时间