皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

Qt5 GUI 开发的应用易受远程代码执行漏洞的影响

外媒 Bleepingcomputer 报导称使用 Qt5 GUI 框架开发的应用程序容易面临远程代码执行漏洞。攻击者通过一个鲜为人知的命令行参数配置自定义协议处理程序,就可利用这个漏洞。

许多开发者并不知道当使用 Qt5 框架时,它还添加了可用于修改框架工作方式的命令行参数,例如要显示的窗口标题、窗口大小,甚至是图标。这些命令行参数会被传递给初始化 Qt 框架的函数,然后在其中对它们进行解析。

上文所说的鲜为人知的命令行参数是 platformpluginpath 命令,用于指定从哪个文件夹加载 Qt5 插件,可以是本地文件夹,或者是远程 UNC URL。

当将此参数提供给程序时,程序将使用已输入的路径加载程序的 Qt 插件,这些插件是由框架加载以扩展其功能的特制 DLL 程序

这意味着,如果攻击者在远程 UNC 上托管恶意 DLL 并且可以使用 platformpluginpath 参数启动程序,则他们可以远程加载 DLL 并执行它,从而进行远程代码执行。

不过由上面也能看出,攻击者要发起这样的攻击需要具备三个要素:

  1. 寻找一个基于 Qt5 框架的 GUI 应用程序
  2. 加载 Qt5 插件
  3. 注册自定义的 URI 处理程序

当然这不是说我们可以因此放松警惕,为了缓解这种类型的攻击,应用程序需要清理命令行参数,以避免远程共享。

转自 https://www.oschina.net/news/105719/qt5-based-gui-apps-susceptible-to-remote-code-execution

分享到:更多 ()