Samba是開源共享服務(wù)軟件,被廣泛應(yīng)用在各種Linux和UNIX系統(tǒng)上,類似于Windows上的SMB服務(wù)。最近肆虐的“永恒之藍(lán)”專門攻打Windows的SMB漏洞,此次Samba曝出遠(yuǎn)程代碼執(zhí)行漏洞主要威脅Linux服務(wù)器,一些NAS網(wǎng)絡(luò)存儲產(chǎn)品也受到影響,360提示相關(guān)用戶盡快進(jìn)行安全更新。
概述
2017年5月24日Samba發(fā)布了4.6.4版本,中間修復(fù)了一個嚴(yán)重的遠(yuǎn)程代碼執(zhí)行漏洞,漏洞編號CVE-2017-7494,漏洞影響了Samba 3.5.0 之后和包括4.6.4/4.5.10/4.4.14在內(nèi)的版本。360網(wǎng)絡(luò)安全中心 和 360信息安全部的Gear Team第一時間對該漏洞進(jìn)行了分析,確認(rèn)屬于嚴(yán)重漏洞,可以造成遠(yuǎn)程代碼執(zhí)行。
技術(shù)分析
如官方所描述,該漏洞只需要通過一個可寫入的Samba用戶權(quán)限就可以提權(quán)到samba所在服務(wù)器的root權(quán)限(samba默認(rèn)是root用戶執(zhí)行的)。
從Patch來看的話,is_known_pipename函數(shù)的pipename中存在路徑符號會有問題:
再延伸下smb_probe_module函數(shù)中就會形成公告里說的加載攻擊者上傳的dll來任意執(zhí)行代碼了:
具體攻擊過程:
1. 構(gòu)造一個有’/’ 符號的管道名或路徑名,如 “/home/toor/cyg07.so”
2. 通過smb的協(xié)議主動讓服務(wù)器smb返回該FID
3. 后續(xù)直接請求這個FID就進(jìn)入上面所說的惡意流程
具體攻擊結(jié)果如下:
1. 嘗試加載“/home/toor/cyg07.so” 惡意so
2. 其中so 代碼如下(加載時會調(diào)用samba_init_module 導(dǎo)出函數(shù))
3. 最后我們可以在/tmp/360sec中看到實際的執(zhí)行權(quán)限(帶root權(quán)限)
解決方案
360網(wǎng)絡(luò)安全響應(yīng)中心和360信息安全部建議使用受影響版本的用戶立即通過以下方式來進(jìn)行安全更新操作,
1. 使用源碼安裝的Samba用戶,請盡快下載最新的Samba版本手動更新;
2. 使用二進(jìn)制分發(fā)包(RPM等方式)的用戶立即進(jìn)行yum,apt-get update等安全更新操作;
緩解策略:用戶可以通過在smb.conf的[global]節(jié)點下增加nt pipe support = no 選項,然后重新啟動samba服務(wù), 以此達(dá)到緩解該漏洞的效果。
申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機遇!