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