一名來自Cure53的安全研究人員Elyas Damej周三(5/31)透過GitHub,公布了一個攸關Reportlab開源專案的漏洞概念性驗證攻擊程式,還詳細說明該漏洞的技術細節,此一編號為CVE-2023-33733的安全漏洞雖然已於今年4月底修補,但有鑑於Reportlab的熱門程度,外界推測該漏洞很快就會遭到駭客利用。

Reportlab為一專門用來建立PDF檔案的Python函式庫,也能用來製造各種圖表,它的每月下載量超過300萬次,可以想見的是,CVE-2023-33733漏洞波及了各種利用Reportlab來處理PDF檔案的應用與工具。

Damej說明,他們是在稽核一個網頁應用時,發現該應用程式採用了Reportlab函式庫,以將HTML轉成PDF檔案,有鑑於Reportlab過去曾經修補一個與此有關、且可導致遠端程式執行的安全漏洞,促使他們興起找出如何繞過該修補的念頭。

當時Reportlab修補的方式是嵌入一個與其它Python函式隔離的沙箱,它擁有許多覆蓋的內建函式,可允許安全程式碼的執行,並避免其存取危險函式,企圖建立一個消毒的執行環境。然而,Damej發現其中一個名為"type"的內建類別若與一個引數一起被呼叫,便會回應一個該類別的物件,但若是與3個引數一同被呼叫,卻會建立一個源自其它類別的新類別,即可繞過原先的檢查。

當發現可繞過修補的方式時,Damej即打造了概念性驗證攻擊程式,而且只需要一行的程式碼。

Damej提醒,各種利用Reportlab的程式及函式庫都會受到該漏洞的影響,在將惡意HTML轉成PDF時面臨遠端程式執行的攻擊風險。

熱門新聞

Advertisement