涉及程序: PostgreSQL 7.2.2版及其之前的版本 描述: PostgreSQL存在远程DoS缺陷 详细: PostgreSQL数据库是一款高级对象-关系型数据库管理系统,支持SQL标准子集扩展,是目前功能最强大,特性最丰富和最复杂的自由软件数据库系统。 当连接到PostgreSQL数据库时,postmaster将产生一个新的子程序,子程序将调用src/backend/postmaster/postmaster.c:DoBackend()函数。在处理启动信息(src/include/libpq/pqcomm.h)之后,将调用src/backend/libpq/auth.c:ClientAuthentication() 函数来执行用户鉴定。利用与攻击者的主机匹配的pg_hba.conf文件进行登录,攻击者能导致src/backend/libpq/auth.c:recv_and_check_password0()函数失效,将引发DoS攻击。 下面是来自src/backend/libpq/auth.c的一段代码: