问题不大,就是个小问题。

事件描述

EN:

Maxthon Browser for Windows - Unquoted Search Path and Potential Abuses (CVE-2019-16647)

CN:

傲游浏览器存在可信任路径漏洞

路径劫持(path interception),中文名为可信任路径漏洞,这一漏洞的最常见形式如下:在Windows操作系统平台中,系统会等待例如“c:program.exe”形式的路径地址,并根据这一地址来提供服务,否则其他的应用程序将会使用没有加引号的路径地址来启动和运行。

如果没有使用引号来将路径地址括起来,那么系统会对给定的路径地址进行遍历,当给定的地址中存在空字符或者空格符的话,操作系统将会执行遍历路径下任何一个子字符串与给定路径匹配的应用程序。

类似的漏洞原理

Windows版Maxthon 5浏览器中发现了一个新漏洞CVE-2019-16647。具有管理员权限的攻击者通过漏洞可以利用技术植入任意的未签名的可执行文件,该可执行文件通过签名服务并以NT AUTHORITY\SYSTEM权限执行。

从某种意义上来讲,确实触手可及了。

起因

启动MxService服务后,傲游浏览器会以NT AUTHORITY\SYSTEM执行MxService.exe签名的进程。

但从运行的日志可以看出,在找到services.exe在找到并执行实际的可执行文件之前,它会先查找丢失的EXE文件(C:\Program.exe)

PoC

为了测试此特权升级漏洞,安全研究员编译了一个没有签名的EXE文件,将其放置在C:\Program.exe,主要功能创建一个,将执行该进程的用户以及加载进行的名称作为txt的文件,如下图所示,效果便是达到system权限。

漏洞成因

打开Maxthon浏览器的安装程序后,它会将名为MxInstall.exe的可执行文件写入临时文件夹。而该可执行文件会使用WinAPI CreateServiceW函数创建服务。

在此之前,它调用sprintf以便格式化包含服务可执行文件路径的缓冲区:

sprintf(&BinaryPathName,"%sBin\\MxService.exe",MaxthonPath);

并将BinaryPathName缓冲区传递给CreateServiceW:

因为下面路径里面有空格,触发漏洞便会搜索

C:\Program Files (x86)\Maxthon5\Bin\MxService.exe

所以函数就会自动搜索,如一开始的图片所示,变成了请求C:\Program.exe

根据MSDN中的CreateServiceW函数文档:

lpBinaryPathName

服务二进制文件的标准路径。如果路径包含空格,则必须用引号引起来,以便正确解释它。

例如,将

"d:\my share\myservice.exe"

定义为

""d:\my share\myservice.exe""

影响版本与利用方式

适用于Windows的Maxthon Browser 5-5.1.0至5.2.7

利用方式:

白名单绕过

该漏洞使攻击者能够通过签名服务执行恶意有效载荷。攻击者可能出于不同目的(例如执行和逃避)滥用此功能,例如:应用程序白名单绕过。

攻击持久化

该漏洞还使攻击者能够在每次加载服务时以持久的方式执行恶意有效负载。这意味着一旦攻击者在我们前面提到的路径之一中释放了恶意EXE文件,该服务将在每次重新启动时加载恶意代码。这样,安全产品可能不会检测到恶意Payload,因为执行攻击者Payload的服务进程是已签名并通过本机权限运行。

所以,攻击者无需采取可疑的操作。一旦启动,serviceit就会执行恶意可执行文件。

特权提升

该漏洞使攻击者能够以管理员身份获得NT AUTHORITY\SYSTEM权限。

*目前该漏洞仍未修补。

而同样类型的漏洞,也被这个安全厂商在9月份报道Forcepoint VPN Windows客户端的一个未加引号的搜索路径漏洞。

还有好久好久之前的金*,联*等等,以前很流行,现在很少见了。

上期阅读

你用过吗?

傲游浏览器存在可信任路径漏洞相关推荐

  1. fckeditor漏洞之爆路径漏洞

    FCKeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx?Command=GetFoldersAndFil ...

  2. ewebeditor遍历路径漏洞

    ewebeditor/admin_uploadfile.asp?id=14 在id=14后面添加&dir=.. 再加 &dir=../.. &dir=http://www.cn ...

  3. 浅析路径遍历漏洞 文/饭

    许多的Web应用程序一般会有对服务器的文件读取查看的功能,大多会用到提交的参数来指明文件名,形如:http://www.nuanyue.com/getfile=image.jgp 当服务器处理传送过来 ...

  4. 详细解析漏洞4个boom

    自上个月PHPCMS2008 SP3爆出了"企业黄页"的盲注漏洞后,目前程序已经升级到了的SP4,但可惜的是SP4还没公布几天,就有人发现了PHPCMS SP4存在的安全漏洞,而且 ...

  5. 详细解析漏洞4个boom !必读!

    自上个月PHPCMS2008 SP3爆出了"企业黄页"的盲注漏洞后,目前程序已经升级到了的SP4,但可惜的是SP4还没公布几天,就有人发现了PHPCMS SP4存在的安全漏洞,而且 ...

  6. 测试网站漏洞软件,如何检测网站漏洞,web漏洞扫描工具盘点

    一.常见漏洞 1. 高危漏洞 (自媒体www.777n.com) XSS跨站脚本漏洞:由于程序员在编写程序时对用户提交的数据没有做充分的合规性判断和进行HTML编码处理,直接把数据输出到浏览器客户端, ...

  7. Fckeditor常见漏洞的挖掘与利用整理汇总

    查看编辑器版本号 FCKeditor/_whatsnew.html ------------------------------------------------------------- 2. V ...

  8. html编辑器渗透,渗透笔记40、web编辑器漏洞手册.pdf

    *非常希望各位能够与我联系,一并完成本文的创作. • Redactor [北洋贱队@Bbs.SecEye.Org ~]# MIAO.猪哥靓.Hell-Phantom.Liange.Fjhh.GxM.S ...

  9. CrowdRec:众包环境中,基于信任感知的工人推荐

    引自 Ye B , Wang Y .CrowdRec: Trust-Aware Worker Recommendation in Crowdsourcing Environments[C]//2016 ...

最新文章

  1. Eclipse 官宣,要干掉 VS Code,你怎么看?
  2. 爱奇艺才被做空又爆裁员,技术研发为裁员重灾区
  3. 美团北京,今日起无人驾驶送外卖
  4. C#编程中的crc16校验
  5. Java如何判断今天本月第几周的周几?
  6. 104. 软件工程的开发过程几种模型(瀑布模型、快速原型开发模型、增量模型、迭代模型、螺旋模型)
  7. 问题 F: 分盒子(经典)
  8. shell查找命令大全
  9. 加上mvc:resources后controller访问404
  10. Netty源码分析第8章(高性能工具类FastThreadLocal和Recycler)----第7节: 获取异线程释放的对象...
  11. .NET基础知识(一)
  12. 联想智能云教室部署(网络同传)
  13. matlab分段函数怎么画图_关于MATLAB中分段函数的画法
  14. window10 tar解压
  15. Android安卓 自定义mapbox地图比例尺
  16. 记录下selenium登陆126邮箱
  17. OpenERP 模块动态加载原理及启动代码分析
  18. 【原创】JQWidgets-TreeGrid 1、快速入门
  19. 使用 Swift 语言编程的优缺点
  20. 2020-11-23

热门文章

  1. Unity3D —— 实时PVP小地图实现
  2. 逾期用户画像及不良贷款率分析
  3. Fluxay流光使用
  4. python迅速绘制好看的极线图
  5. MineCraft创世神的辅助软件WorldEdit-CUI的下载
  6. 功率曲线k值_基于K-均值聚类分析的风力机功率曲线统计应用
  7. 用JAVA实现先到先服务和短作业优先算法
  8. 程序员穿越 90年代
  9. 基于linux的软plc设计,Linux环境下软PLC开发系统的设计与实现
  10. 2022年卫星导航系统模拟器市场前景分析及研究报告