CVE:CVE-2003-0353
CNNVD:CNNVD-200308-143
Microsoft Data Access Components (MDAC)是一套用于Windows平台上提供数据库互连的组件。
MDAC存在设计缺陷，远程攻击者可以利用这个漏洞构建恶意报文使使用MDAC库的应用程序触发缓冲区溢出，可能以用户权限在系统上执行任意指令。
MDAC默认包含在Microsoft Windows XP、Windows 2000、Windows Millennium Edition和Windows Server 2003上，也可以独立在如下地址获得：
http://msdn.microsoft.com/library/default.asp?url=/downloads/list/dataaccess.asp
MDAC还包含在多个产品和技术中，如包含在Microsoft Windows NT? 4.0 Option Pack 和Microsoft SQL Server 2000中。
MDAC提供多个数据库操作功能，如连接远程数据库和返回数据给客户端。当客户端系统使用MDAC组件尝试获得运行SQL服务的机器列表时 ，会发送广播报文到网络中，由于客户端对服务器返回的应答缺少充分的检查，如果恶意机器以超长报文应答这个广播包，就可以触发基于堆栈的溢出。
任何使用SQL-DMO库的SQL Server工具都存在这个漏洞，攻击者不需要直接针对目标，相反可以通过如下方法利用漏洞：
1、设置监听UPD 1434端口的服务，当接收到数据时应答目标，但这需要与目标在同一子网。
2、持续发送恶意包到子网等待SQL工具查询。
3、也可以以非特权用户登录SQL数据库，使SQL服务器发送查询请求到指定地址，下面的SQL描述会引起SQL服务查询名为SERVER主机的UDP包：
SELECT * FROM openrowset( 'SQLOLEDB'， 'server=SERVER\instance name;uid=sa;pwd='， '')
solution:Upgrade microsoft data_access_components to a higher version than 1.5,2.0,2.1,2.1.1.3711.11:ga,2.5,2.5:gold,2.5:sp1,2.5:sp2,2.6,2.6:gold,2.6:sp1,2.6:sp2,2.7,2.7:gold,2.12.4202.3,and avoid the version 1.5,2.0,2.1,2.1.1.3711.11:ga,2.5,2.5:gold,2.5:sp1,2.5:sp2,2.6,2.6:gold,2.6:sp1,2.6:sp2,2.7,2.7:gold,2.12.4202.3