CVE-2007-1537 (CNNVD-200703-500)
中文标题:
Microsoft Windows Ndistapi本地拒绝服务漏洞
英文标题:
\Device\NdisTapi (NDISTAPI.sys) in Microsoft Windows XP SP2 and 2003 SP1 uses weak permissions, whic...
漏洞描述
中文描述:
Microsoft Windows是美国微软(Microsoft)公司发布的一系列操作系统。 Microsoft Windows的NDISTAPI.sys驱动实现机制上存在漏洞,本地攻击者可能利用此漏洞对系统执行拒绝服务攻击。 Windows的NDISTAPI.sys驱动是内核态组件,但允许非特权用户的访问,因此任意用户态应用程序都可以向这个设备写入数据: Ndistapi.sys Windows XP SP2 _; __stdcall NdisTapiDispatch(x, x) .text:000115E8 _NdisTapiDispatch@8 proc near ; DATA XREF: DriverEntry(x,x)+13E#o .text:000115E8 .text:000115E8 arg_4 = dword ptr 0Ch .text:000115E8 .text:000115E8 push ebp .text:000115E9 mov ebp, esp .text:000115EB push ebx .text:000115EC push esi .text:000115ED mov esi, [ebp+arg_4] .text:000115F0 mov eax, [esi+60h] .text:000115F3 movzx ecx, byte ptr [eax] .text:000115F6 sub ecx, 0 .text:000115F9 mov edx, [esi+0Ch] .text:000115FC mov ebx, [eax+4] .text:000115FF push edi .text:00011600 mov edi, [eax+8] .text:00011603 jz short loc_1167E .text:00011605 dec ecx .text:00011606 dec ecx .text:00011607 jz short loc_11674 .text:00011609 sub ecx, 0Ch .text:0001160C jnz loc_11697 .text:00011612 mov eax, [eax+0Ch] .text:00011615 cmp eax, 8FFF23C0h ;IOCTL .text:0001161A jz short loc_11669 ;DoIoctlConnectWork() .text:0001161C cmp eax, 8FFF23C8h .text:00011621 jz short loc_1165C {...} .text:00010B16 ; __stdcall DoIoctlConnectWork(x, x, x, x) .text:00010B16 _DoIoctlConnectWork@16 proc near ; CODE XREF: NdisTapiDispatch(x,x)+85#p .text:00010B16 .text:00010B16 arg_0 = dword ptr 4 .text:00010B16 arg_4 = dword ptr 8 .text:00010B16 arg_8 = dword ptr 0Ch .text:00010B16 arg_C = dword ptr 10h .text:00010B16 .text:00010B16 mov ecx, _DeviceExtension .text:00010B1C push edi .text:00010B1D mov edi, ds:__imp_@KfAcquireSpinLock@4 ; KfAcquireSpinLock(x) .text:00010B23 add ecx, 4Ch .text:00010B26 call edi ; KfAcquireSpinLock(x) ;<= FLAW KfAcquireSpinLock(x) .text:00010B28 cmp [esp+4+arg_8], 8 ;InputBuffer length .text:00010B2D mov dl, al .text:00010B2F jb loc_10BC5 .text:00010B35 cmp [esp+4+arg_C], 4 ;OutputBuffer length .text:00010B3A jb loc_10BC5 .text:00010B40 mov ecx, _DeviceExtension .text:00010B46 cmp dword ptr [ecx+4], 1 .text:00010B4A push ebx .text:00010B4B mov ebx, [esp+8+arg_4] .text:00010B4F push esi .text:00010B50 mov esi, ds:__imp_@KfReleaseSpinLock@8 ; KfReleaseSpinLock(x,x) .text:00010B56 jnz short loc_10B8D .text:00010B58 mov dword ptr [ecx+4], 2 .text:00010B5F mov ecx, _DeviceExtension .text:00010B65 mov eax, [ebx] .text:00010B67 mov [ecx+10h], eax .text:00010B6A mov ecx, _DeviceExtension .text:00010B70 add ecx, 4Ch .text:00010B73 call esi ; KfReleaseSpinLock(x,x) ; KfReleaseSpinLock(x,x) [---] .text:00010BC5 .text:00010BC5 loc_10BC5: .text:00010BC5 .text:00010BC5 mov eax, 0C0000023h ; ERROR CODE .text:00010BCA xor ecx, ecx .text:00010BCC .text:00010BCC loc_10BCC: .text:00010BCC mov edx, [esp+4+arg_0] .text:00010BD0 mov [edx+18h], eax .text:00010BD3 mov [edx+1Ch], ecx .text:00010BD6 pop edi .text:00010BD7 retn 10h ; Return 可见这个例程将IRQL提升到DISPATCH级别,在检查长度之前要求spinlock,之后如果所提供的大小无效的话,例程没有释放所获得的spinlock便返回,因此即使返回到Ring3之后IRQL仍在该线程的DISPATCH级。 最终的结果是用户态线程以DISPATCH级运行。由于在DISPATCH级无法访问分页内存,而在用户态大多数内存都是分页的,因此只要线程执行涉及到访问分页内存的操作,内核都会由于IRQL_LESS_THAN_NOT_EQUAL而出现bugcheck错误,导致系统崩溃。
英文描述:
\Device\NdisTapi (NDISTAPI.sys) in Microsoft Windows XP SP2 and 2003 SP1 uses weak permissions, which allows local users to write to the device and cause a denial of service, as demonstrated by using an IRQL to acquire a spinlock on paged memory via the NdisTapiDispatch function.
CWE类型:
标签:
受影响产品
| 厂商 | 产品 | 版本 | 版本范围 | 平台 | CPE |
|---|---|---|---|---|---|
| microsoft | windows_2003_server | sp1 | - | - |
cpe:2.3:o:microsoft:windows_2003_server:sp1:*:*:*:*:*:*:*
|
| 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
CVSS评分详情
AV:L/AC:L/Au:N/C:N/I:P/A:P
时间信息
利用信息
数据源详情
| 数据源 | 记录ID | 版本 | 提取时间 |
|---|---|---|---|
| CVE | cve_CVE-2007-1537 |
2025-11-11 15:17:51 | 2025-11-11 07:32:42 |
| NVD | nvd_CVE-2007-1537 |
2025-11-11 14:52:09 | 2025-11-11 07:41:28 |
| CNNVD | cnnvd_CNNVD-200703-500 |
2025-11-11 15:08:56 | 2025-11-11 07:49:15 |
版本与语言
安全公告
变更历史
查看详细变更
- vulnerability_type: 未提取 -> 授权问题
- cnnvd_id: 未提取 -> CNNVD-200703-500
- data_sources: ['cve', 'nvd'] -> ['cnnvd', 'cve', 'nvd']
查看详细变更
- severity: SeverityLevel.MEDIUM -> SeverityLevel.LOW
- cvss_score: 未提取 -> 3.6
- cvss_vector: NOT_EXTRACTED -> AV:L/AC:L/Au:N/C:N/I:P/A:P
- cvss_version: NOT_EXTRACTED -> 2.0
- affected_products_count: 0 -> 2
- data_sources: ['cve'] -> ['cve', 'nvd']