研究人員在HP、三星,、Xerox打印機(jī)驅(qū)動中發(fā)現(xiàn)高危漏洞,,影響數(shù)百萬打印機(jī)。
SentinelLabs研究人員在HP,、三星,、Xerox打印機(jī)驅(qū)動中發(fā)現(xiàn)一個漏洞——CVE-2021-3438,CVSS評分8.8分,,由于有漏洞的打印機(jī)驅(qū)動從2005年開始發(fā)布,,因此共有數(shù)百萬打印機(jī)受到該漏洞的影響,目前漏洞已經(jīng)修復(fù),。
HP 打印機(jī)驅(qū)動漏洞
研究人員在配置一款HP打印機(jī)時發(fā)現(xiàn)了一個2005年發(fā)布的打印機(jī)驅(qū)動文件——SSPORT.SYS,。運(yùn)行該打印機(jī)軟件后,無論是否完成安裝甚至取消安裝,,驅(qū)動也會安裝和激活,。整個安裝過程中甚至不會通知用戶。
用戶在配置打印機(jī)無線工作或通過USB工作時,,驅(qū)動就會加載,。此外,每次啟動后Windows也會加載打印機(jī)驅(qū)動:
這使得驅(qū)動文件成為攻擊的完美目標(biāo),,因為甚至沒有打印機(jī)連接,,驅(qū)動文件也會加載。
驅(qū)動文件中有漏洞的函數(shù)會通過IOCTL (Input/Output Control) 接收用戶模式(User Mode)發(fā)送的數(shù)據(jù),,其中不會驗證size參數(shù):
驅(qū)動文件中有漏洞的函數(shù)
該函數(shù)會用strncpy復(fù)制用戶輸入的字符串,,由于size參數(shù)是由用戶控制的。因此,,攻擊者就可以覆蓋驅(qū)動使用的緩存,。
研究人員在分析驅(qū)動文件時發(fā)現(xiàn)了一個硬編碼的字符串:“This String is from Device Driver@@@@ ”。
有漏洞的驅(qū)動文件中硬編碼的字符串
可以看出,,驅(qū)動文件并不是完全由HP開發(fā)的,,而是從具有相同功能的微軟的Windows驅(qū)動樣本項目中復(fù)制的。幸運(yùn)的是,,微軟樣本項目中并不含有該漏洞,。
漏洞影響
驅(qū)動漏洞可以引發(fā)非特權(quán)用戶提升到SYSTEM權(quán)限,并在kernel模式下運(yùn)行代碼。濫用這些漏洞可以繞過安全產(chǎn)品,。攻擊者成功利用該漏洞還可以安裝程序,、查看、修改,、加密和刪除數(shù)據(jù),,以完全用戶權(quán)限創(chuàng)建新的賬戶。
武器化該漏洞需要與其他漏洞利用相結(jié)合,。目前尚未發(fā)現(xiàn)該漏洞的再野利用,。
受影響的產(chǎn)品
由于有漏洞的驅(qū)動文件是2005年發(fā)布的,截止目前已經(jīng)超過16年時間,。漏洞存在于HP,、三星和Xerox打印機(jī)軟件中,超過380款打印機(jī)受到該漏洞的影響,。