IoT和OT設備中曝25個RCE漏洞
這25個安全漏洞被統稱為 BadAlloc,是由內存分配整數溢出( Integer Overflow)或環繞錯誤(Wraparound)引起的。攻擊者可以利用這些漏洞導致系統奔潰,并在受感染的IoT和OT系統上遠程執行惡意代碼。
Microsoft的研究人員在多個實時操作系統(RTOS)、C標準庫(libc)實現和嵌入式軟件開發工具包(SDK)里被廣泛使用的標準內存分配功能中發現了這些漏洞。微軟安全響應中心團隊表示:作為物聯網設備和嵌入式軟件的一部分,多年來編寫的內存分配實現并未進行適當的輸入驗證,導致攻擊者可以利用內存分配功能來執行堆溢出,從而在目標設備上執行惡意代碼。
“ BadAlloc”示例如下:
容易受到BadAlloc攻擊的設備
易受BadAlloc漏洞攻擊的IoT和OT設備主要在消費、醫療和工業網絡上。 受影響的設備完整列表如下:
- Amazon FreeRTOS 10.4.1
- Apache Nuttx OS 9.1.0
- ARM CMSIS-RTOS2 2.1.3之前的版本
- ARM Mbed OS 6.3.0
- ARM mbed-uallaoc 1.3.0
- Cesanta Software Mongoose OS v2.17.0
- eCosCentric eCosPro RTOS 2.0.1至4.5.3版本
- Google Cloud IoT設備SDK 1.0.2
- Linux Zephyr RTOS 2.4.0之前的版本
- Media Tek LinkIt SDK 4.6.1之前的版本
- Micrium OS 5.10.1及更低版本
- Micrium uCOS II / uCOS III 1.39.0及更低版本
- NXP MCUXpresso SDK 2.8.2之前的版本
- NXP 浦MQX 5.1及更低版本
- Redhat newlib 4.0.0之前的版本
- RIOT OS 2020.01.1
- Samsung Tizen RT RTOS 3.0.GBB之前的版本
- TencentOS-tiny 3.1.0
- 德州儀器(TI)CC32XX 4.40.00.07之前的版本
- 德州儀器(TI)SimpleLink MSP432E4XX
- 德州儀器(TI)SimpleLink-CC13XX 4.40.00之前的版本
- 德州儀器(TI)SimpleLink-CC26XX 4.40.00之前的版本
- 德州儀器(TI)SimpleLink-CC32XX 4.10.03之前的版本
- Uclibc-NG 1.0.36之前的版本
- Windriver VxWorks 7.0之前的版本
緩解措施
目前,漏洞已經報告給了CISA與相關供應商。雖然暫時未發現相關漏洞的野外利用,但為了降低利用風險,CISA建議組織進行以下操作:
- 應用可用的供應商更新。
- 減少所有控制系統設備及其系統的網絡暴露,并確保不能從Internet訪問它們。
- 把控制系統網絡和遠程設備置于防火墻之后,并將其與業務網絡隔離。
- 需要遠程訪問時,使用虛擬專用網等安全方法。
如果無法立即修補易受攻擊的設備,Microsoft建議:
- 最大程度地減少或消除易受攻擊的設備在互聯網上的暴露
- 實施網絡安全監控,檢測危害的行為指標;
- 加強網絡分段以保護關鍵資產。
參考來源:bleepingcomputer