手机上怎么买彩票双色球 微信上有人推荐买彩票 能合买彩票的平台 夫妻买彩票狂中30亿 买彩票心态 买彩票就买大乐透开奖结果 哪个平台买彩票安全吗 买彩票有买一个号的吗 怎么看走势图买彩票 如何在电脑上买彩票 美国几岁可以买彩票? 福彩工作人员买彩票 彩客网买彩票 能在微信上买彩票吗 怎么买彩票容易中

Symantec终端防护内核内存信息泄漏漏洞分析£¨CVE-2018-18366£©

来源£º本站整理 作者£º佚名 时间£º2019-04-28 TAG£º 我要投稿

Cisco Talos在赛门铁克终端防护£¨Symantec Endpoint Protection£©小型企业版的ccSetx86.sys内核驱动中发现了一个信息泄漏漏洞¡£该漏洞位于驱动程序的控制消息处理程序?#23567;?#25915;击者可以发送精心制造的请求£¬使得驱动程序返回未经初始化的内核内存块£¬从而可能泄漏敏感信息¡£例如£¬攻击者可以将该漏洞用于绕过特权令牌或内核内存地?#36820;?#20869;核安全?#33322;?#26041;式¡£非特权用户可以以用户模式运行程序£¬从而触发这一漏洞¡£
根据我们的协调披露政策£¬Talos与Symantec进行了合作£¬从而确保为该漏洞提供补丁¡£
漏洞描述
赛门铁克终端防护£¨Symantec Endpoint Protection£©小型企业版的ccSetx86.sys 0x224844位置存在内核内存信息泄漏漏洞£¨CVE-2018-18366£©¡£特制的IRP请求可能会导致驱动程序返回未初始化的内存£¬从而导致内核内存泄漏¡£攻击者可以发送IRP请求来触发此漏洞¡£
该内核内存泄漏位于IOCTL处理程序中£¬这是用于16.0.0.77版本驱动程序的“0x224844”驱动代码¡£攻击者可以通过向ccSet_{F7A725B7-8267-494C-9647-F4FC1D53C6A3}设备发送恶意的IOCTL请求£¬从而触发该漏洞¡£设备的默认访问控制£¬允许系统上的任何用户向驱动程序发送IOCTL请求¡£
测试版本
Symantec.cloud – Endpoint Protection – NIS-22.14.2.13
Symantec Endpoint Protection Small Business Edition£¨赛门铁克终端防护小型企业版£©ccSetx86.sys£¨Windows 7 x86£©
产品网址
https://www.symantec.com/products/endpoint-smb
CVSSv3分数
4.3 – CVSS:3.0/AV:L/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:N
CWE
CWE-200£º信息泄漏
漏洞详情
Symantec Endpoint Protection小型企业版£¨SEP SBE£©是针对小型企业的复杂终端防护解决方案¡£
本报告?#35270;?#20110;使用SEP SBE安装中ccSetx86.sys驱动程序中的漏洞£¬该漏洞默认情况下处于活动状态¡£
我们可以通过向ccSet_{F7A725B7-8267-494C-9647-F4FC1D53C6A3}设备中发送IOCTL请求来触发这一漏洞¡£在这里£¬我们展示了设备上的默认访问控制£¬允许系统上的任何用户发送IOCTL请求£º
\Device\ccSet_{F7A725B7-8267-494C-9647-F4FC1D53C6A3}
  Type: Device
  RW Everyone
  RW NT AUTHORITY\SYSTEM
我们需要使用ZwOpenFile API£¬而不是尝试通过CreateFile向该设备打开公开的符号链接£¬以获取该设备的有效句柄¡£
内核内存泄漏位于0x224844控制代码的IOCTL处理程序?#23567;£Ò资?#25915;击的函数是£º
Line 1  signed int __stdcall sub_8DE2FB98(PIRP irp, int (__stdcall ***a2)(char *, _DWORD *, int *))
Line 2  {
Line 3    ULONG_PTR outLen;
Line 4    stackLocation = irp->Tail.Overlay.CurrentStackLocation;
Line 5    if ( !irp->AssociatedIrp.SystemBuffer
Line 6      || stackLocation->Parameters.DeviceIoControl.InputBufferLength Parameters.DeviceIoControl.OutputBufferLength Parameters.DeviceIoControl.IoControlCode & 3 )
Line 12   {
Line 13     (...)
Line 14   }
Line 15   else
Line 16   {
Line 17     outUserBuffer = irp->AssociatedIrp.SystemBuffer;
Line 18   }
Line 19   if ( outUserBuffer )
Line 20   {
Line 21     someConstructor(&v14);
Line 22     v13 = copyString2(
Line 23             &v14,
Line 24             (int)irp->AssociatedIrp.SystemBuffer,
Line 25             stackLocation->Parameters.DeviceIoControl.InputBufferLength,
Line 26             (PWCHAR)&dstStringLen);
Line 27     if ( v13 >= 0 )
Line 28     {
Line 29       outLen = stackLocation->Parameters.DeviceIoControl.OutputBufferLength;
Line 30       v5 = (**v11)((char *)&v14, outUserBuffer, (int *)&outLen);// 8de2fb84
Line 31       if ( v5 >= 0 )
Line 32       {
Line 33         irp->IoStatus.Information = outLen;
Line 34       }
Line 35     
Line 36     (...)
值得一提的是£¬该漏洞仅在处理过程中使用METHOD_BUFFERED时才会显现¡£我们在上述代码的第33行看到£¬如果位于第30行的函数返回一个正值£¬那么IoStatus.Information字段£¨表示将从OutputBuffer中的内核模式返回多少字节£©将被设置为outLen – OutputBufferLen¡£位于第29行开头的该变量的值直接来自用户£¬因此£¬如果未精确设置outLen变量£¬那?#20174;?#25143;则可以完全控制返回用户模式的字节数¡£
我们在sub_8DE34328函数中查看outLen变量的处理方式£º
Line 1  int __thiscall sub_8DE34328(struct_this_3 *this, char *obj, int outUserBuffer, unsigned int *outLen)
Line 2  {
Line 3  (...)
Line 4
Line 5      outLen_ = *outLen;
Line 6      v12 = v18 + 2;
Line 7      someUnicodeString = v12;
Line 8      if ( outLen_ >= v12 )

[1] [2] [3]  下一页

¡¾声明¡¿:黑吧安全网(http://www.rliwo.live)登载此文出于传递更多信息之目的£¬并不代表本站赞同其观点?#25237;?#20854;真实性负责£¬仅适于网络安全技术爱好者学习研究使用£¬学习中请遵循国家相关法律法规¡£如有问题请联系我们£¬联系邮箱[email protected]£¬我们会在最短的时间内进行处理¡£
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载
        ¹ºÂò²ÊƱȨÍþÍøÖ·
        手机上怎么买彩票双色球 微信上有人推荐买彩票 能合买彩票的平台 夫妻买彩票狂中30亿 买彩票心态 买彩票就买大乐透开奖结果 哪个平台买彩票安全吗 买彩票有买一个号的吗 怎么看走势图买彩票 如何在电脑上买彩票 美国几岁可以买彩票? 福彩工作人员买彩票 彩客网买彩票 能在微信上买彩票吗 怎么买彩票容易中