CVE-2007-2218 (CNNVD-200706-195)
中文标题:
Microsoft Windows SChannel单字节堆溢出漏洞(MS07-031)
英文标题:
Unspecified vulnerability in the Windows Schannel Security Package for Microsoft Windows 2000 SP4, X...
漏洞描述
中文描述:
Microsoft Windows是美国微软(Microsoft)公司发布的一系列操作系统。 Windows的安全通道(SChannel)库在实现客户端SSLv3握手协议时存在单字节堆溢出漏洞,远程攻击者可能利用此漏洞控制服务器或造成拒绝服务。 具体来讲,在处理服务器密钥交换SSL握手记录时没有充分地检查长度字段设置为0的畸形服务器端数字签名,导致在有效的堆地址上分配0长度的堆缓冲区,然后执行的逆向内存拷贝将0长度减1拷贝数字签名,这会触发整数下溢,导致堆缓冲区指针退到起始地址之前,最终导致将1字节的用户控制值覆盖到堆控制块。 漏洞代码位于_ReverseMemCopy()函数中,可从Ssl3ParseServerKeyExchange()通过SPProcessHandshake()->PkcsGenerateClientExchangeValue()访问: ; On WinXP-SP1, the code below is located at 0x767FF976 (no symbols available) Ssl3ParseServerKeyExchange() ... .text:767FFFC8 movzx ebx, byte ptr [esi] ; MSB-byte of malformed signature length field .text:767FFFCB movzx eax, byte ptr [esi+1] ; LSB-byte of malformed signature length field .text:767FFFCF shl ebx, 8 .text:767FFFD2 add ebx, eax .text:767FFFD4 push ebx ; size=0 .text:767FFFD5 call _SPExternalAlloc@4 ; HeapAlloc will return a valid 0-length heap buffer address .text:767FFFDA test eax, eax .text:767FFFDC mov [ebp+pbSignature], eax .text:767FFFDF jz loc_768000B9 .text:767FFFE5 push ebx ; size=0 .text:767FFFE6 lea ecx, [esi+2] ; address of the signature data in our malformed record ; containing 0xFF,0x41,0x41... .text:767FFFE9 push ecx .text:767FFFEA push eax ; 0-length heap buffer .text:767FFFEB call _ReverseMemCopy@12 _ReverseMemCopy() .text:767FF46F mov edi, edi .text:767FF471 push ebp .text:767FF472 mov ebp, esp .text:767FF474 mov eax, [ebp+arg_8] .text:767FF477 mov ecx, [ebp+arg_4] .text:767FF47A push esi .text:767FF47B mov esi, [ebp+arg_0] .text:767FF47E lea eax, [esi+eax-1] ; EAX=0, ESI which points to 0-length heap buffer ; is decremented to, before start of heap buffer .text:767FF482 mov dl, [ecx] .text:767FF484 mov [eax], dl ; Off-by-one overwrite with 0xFF from our signature data .text:767FF486 dec eax .text:767FF487 inc ecx .text:767FF488 cmp eax, esi .text:767FF48A jnb short loc_767FF482 ; Just one-byte overwrite! .text:767FF48C pop esi .text:767FF48D pop ebp .text:767FF48E retn 0Ch 如果用户使用Internet Web浏览器查看特制网页或使用利用SSL/TLS的应用程序,则此漏洞可能允许远程执行代码。 但是,利用此漏洞的尝试最有可能导致Internet Web浏览器或应用程序退出。重新启动系统之前,系统不能使用SSL或TLS连接到网站或资源。
英文描述:
Unspecified vulnerability in the Windows Schannel Security Package for Microsoft Windows 2000 SP4, XP SP2, and Server 2003 SP1 and SP2, allows remote servers to execute arbitrary code or cause a denial of service via crafted digital signatures that are processed during an SSL handshake.
CWE类型:
标签:
受影响产品
| 厂商 | 产品 | 版本 | 版本范围 | 平台 | CPE |
|---|---|---|---|---|---|
| microsoft | windows_2000 | * | - | - |
cpe:2.3:o:microsoft:windows_2000:*:sp4:*:*:*:*:*:*
|
| microsoft | windows_2003_server | sp1 | - | - |
cpe:2.3:o:microsoft:windows_2003_server:sp1:*:*:*:*:*:*:*
|
| microsoft | windows_2003_server | sp2 | - | - |
cpe:2.3:o:microsoft:windows_2003_server:sp2:*:*:*:*:*:*:*
|
| microsoft | windows_xp | * | - | - |
cpe:2.3:o:microsoft:windows_xp:*:sp2:*:*:*:*:*:*
|
解决方案
中文解决方案:
英文解决方案:
临时解决方案:
参考链接
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
cve.org
CVSS评分详情
AV:N/AC:M/Au:N/C:C/I:C/A:C
时间信息
利用信息
数据源详情
| 数据源 | 记录ID | 版本 | 提取时间 |
|---|---|---|---|
| CVE | cve_CVE-2007-2218 |
2025-11-11 15:17:52 | 2025-11-11 07:32:43 |
| NVD | nvd_CVE-2007-2218 |
2025-11-11 14:52:11 | 2025-11-11 07:41:29 |
| CNNVD | cnnvd_CNNVD-200706-195 |
2025-11-11 15:08:57 | 2025-11-11 07:49:18 |
版本与语言
安全公告
变更历史
查看详细变更
- vulnerability_type: 未提取 -> 授权问题
- cnnvd_id: 未提取 -> CNNVD-200706-195
- data_sources: ['cve', 'nvd'] -> ['cnnvd', 'cve', 'nvd']
查看详细变更
- severity: SeverityLevel.MEDIUM -> SeverityLevel.CRITICAL
- cvss_score: 未提取 -> 9.3
- cvss_vector: NOT_EXTRACTED -> AV:N/AC:M/Au:N/C:C/I:C/A:C
- cvss_version: NOT_EXTRACTED -> 2.0
- affected_products_count: 0 -> 4
- references_count: 10 -> 9
- data_sources: ['cve'] -> ['cve', 'nvd']