Qt5 GUI 開發的應用易受遠端程式碼執行漏洞的影響

Editor發表於2019-04-08

外媒 Bleepingcomputer 報導稱使用 Qt5 GUI 框架開發的應用程式容易面臨遠端程式碼執行漏洞。攻擊者通過一個鮮為人知的命令列引數配置自定義協議處理程式,就可利用這個漏洞。 許多開發者並不知道當使用 Qt5 框架時,它還新增了可用於修改框架工作方式的命令列引數,例如要顯示的視窗標題、視窗大小,甚至是圖示。這些命令列引數會被傳遞給初始化 Qt 框架的函式,然後在其中對它們進行解析。


Qt5 GUI 開發的應用易受遠端程式碼執行漏洞的影響


上文所說的鮮為人知的命令列引數是 platformpluginpath 命令,用於指定從哪個資料夾載入 Qt5 外掛,可以是本地資料夾,或者是遠端 UNC URL。

當將此引數提供給程式時,程式將使用已輸入的路徑載入程式的 Qt 外掛,這些外掛是由框架載入以擴充套件其功能的特製 DLL 程式。


這意味著,如果攻擊者在遠端 UNC 上託管惡意 DLL 並且可以使用 platformpluginpath 引數啟動程式,則他們可以遠端載入 DLL 並執行它,從而進行遠端程式碼執行。


不過由上面也能看出,攻擊者要發起這樣的攻擊需要具備三個要素:

尋找一個基於 Qt5 框架的 GUI 應用程式

載入 Qt5 外掛

註冊自定義的 URI 處理程式


當然這不是說我們可以因此放鬆警惕,為了緩解這種型別的攻擊,應用程式需要清理命令列引數,以避免遠端共享。


 來源:開源中國


更多資訊:1、特斯拉自動駕駛漏洞被破解 可能誤變道駛入對向車道


2、卡巴斯基預警:《權力的遊戲》盜版資源掛馬量全球最高

相關文章