0x00 前言
運(yùn)維安全是企業(yè)安全保障的基石,不同于Web安全、移動(dòng)安全或者業(yè)務(wù)安全,運(yùn)維安全環(huán)節(jié)出現(xiàn)問題往往會(huì)比較嚴(yán)重。
一方面,運(yùn)維出現(xiàn)的安全漏洞自身危害比較嚴(yán)重。運(yùn)維服務(wù)位于底層,涉及到服務(wù)器,網(wǎng)絡(luò)設(shè)備,基礎(chǔ)應(yīng)用等,一旦出現(xiàn)安全問題,直接影響到服務(wù)器的安全;另一方面,一個(gè)運(yùn)維漏洞的出現(xiàn),通常反映了一個(gè)企業(yè)的安全規(guī)范、流程或者是這些規(guī)范、流程的執(zhí)行出現(xiàn)了問題,這種情況下,可能很多服務(wù)器都存在這類安全問題,也有可能這個(gè)服務(wù)還存在其他的運(yùn)維安全問題。
本文一方面希望幫助甲方覆蓋一些盲點(diǎn),另一方面也能夠?yàn)榘酌弊犹峁┮恍┞┒赐诰虻姆较蚝退悸贰?/p>
0x01 Attack Surface
一圖勝千言,下圖是個(gè)人近期總結(jié)的一些常見的運(yùn)維風(fēng)險(xiǎn)點(diǎn)。
附XMIND源地址:
https://github.com/LeoHuang2015/ops_security/blob/master
/%E8%BF%90%E7%BB%B4%E5%AE%89%E5%85%A8.xmind
0x02 運(yùn)維安全對(duì)抗發(fā)展
攻防對(duì)抗本身就是不平等的,防御是一個(gè)面,而攻擊者只需要一個(gè)點(diǎn)。要防住同一level的攻擊,需要投入的防御成本是巨大的。 在攻防對(duì)抗的各個(gè)level,高level的攻擊手段是可以隨意貫穿低level的防御層面。
救火
對(duì)于很多小公司(其實(shí)也包括很多大公司),對(duì)待安全漏洞的態(tài)度基本上都是遇到一個(gè)坑,填一個(gè)坑,這種純“救火”的態(tài)度無法保障運(yùn)維安全,只會(huì)像打地鼠一樣,疲于奔命。
然而大部分公司都處在這個(gè)level——填坑救火(不救火的公司沒有討論的必要)。一方面是公司自身的安全意識(shí)不強(qiáng);另一方面是小公司的安全資源配備有限。
漏網(wǎng)之魚 VS 建設(shè) + 運(yùn)營
不同于小公司,一些大公司,特別是互聯(lián)網(wǎng)公司,安全發(fā)展已經(jīng)逐漸的從“救火”進(jìn)入到“建設(shè)”的階段。
從甲方的角度而言,這個(gè)過程是艱辛的,長久的。
在企業(yè)進(jìn)入安全“建設(shè)”的階段時(shí),運(yùn)維安全漏洞會(huì)呈指數(shù)級(jí)下降,一些常見和普通的問題不再出現(xiàn)。
這個(gè)時(shí)候,對(duì)抗點(diǎn)會(huì)集中在一些比較邊緣的點(diǎn)。包括不常見的服務(wù)端口,依賴第三方服務(wù)的問題,又或者是一些合作方服務(wù)器安全漏洞等情況。
比如:
WooYun: 騰訊內(nèi)部員工接私活導(dǎo)致某qq.com域服務(wù)器shell進(jìn)入內(nèi)網(wǎng)
WooYun: 騰訊某站配置不當(dāng)可導(dǎo)致部分地區(qū)騰訊視頻播放源損壞
通常情況下,造成這些安全問題并非是安全技術(shù)的缺陷,更多的是安全規(guī)范、標(biāo)準(zhǔn)流程覆蓋不全的情況,如新業(yè)務(wù)、三方業(yè)務(wù)、收購的業(yè)務(wù),運(yùn)維體系還沒有統(tǒng)一,運(yùn)維安全建設(shè)沒有及時(shí)跟上;即使在安全規(guī)范和流程覆蓋完全的情況下,在具體的執(zhí)行也會(huì)出現(xiàn)一系列問題。安全規(guī)范和標(biāo)準(zhǔn)流程越多,越容易出現(xiàn)執(zhí)行上的問題。
這兩類問題是建設(shè)時(shí)期比較典型的情況。很多時(shí)候,領(lǐng)導(dǎo)都會(huì)有這樣的疑問,我們的規(guī)范、流程已經(jīng)推到各個(gè)部門,看起來各個(gè)部門也按照標(biāo)準(zhǔn)執(zhí)行了,為什么還會(huì)有這么多“漏網(wǎng)之魚”?
于是如何主動(dòng)的發(fā)現(xiàn)這些漏網(wǎng)之魚也是一個(gè)急迫的需求。
這個(gè)時(shí)候需要安全運(yùn)營的介入,安全運(yùn)營在戴明環(huán)中扮演的量C/A的角色,定期check安全規(guī)范、流程標(biāo)準(zhǔn)的執(zhí)行情況,然后推動(dòng)安全問題的Fix,找到根本原因,一方面不斷的完善規(guī)范和流程,另一方面不斷的提升運(yùn)維安全的覆蓋面。
比較常見的就是安全掃描,通過定期掃描發(fā)現(xiàn)的問題,反推流程和規(guī)范的執(zhí)行;當(dāng)然,通過白帽子報(bào)告的漏洞,確定是流程和規(guī)范的原因后,進(jìn)行反推也是一種有效的方式。
“新”漏洞 VS 預(yù)警 + 響應(yīng)
天下武功,唯快不破
在運(yùn)維安全提醒建設(shè)到相對(duì)完善的情況下,通常情況下,企業(yè)是相對(duì)安全的。但是,一旦有新漏洞的出現(xiàn)(在國內(nèi),有exp發(fā)布的漏洞往往就等于新漏洞),拼的就是響應(yīng)速度。
一方面是需要安全運(yùn)營對(duì)這些嚴(yán)重漏洞的快速預(yù)警;另一方面就是安全專家的技術(shù)功底了。在沒有官方補(bǔ)丁發(fā)布的情況下,如何通過一些hack技巧進(jìn)行防御也是非常重要的。
比如最近幾年比較大的安全事件,如2013年7月17日的struts2漏洞,2014年4月7日的心血漏洞,就算是國內(nèi)甲方最強(qiáng)安全團(tuán)隊(duì)BAT也是難于幸免。 這一level,甲方非常難做,唯一能保障的就是在中招后提示響應(yīng)和修復(fù)的速度。
人 安全意識(shí) VS 安全教育
在整個(gè)運(yùn)維安全的對(duì)抗中,人這一塊尤為重要,運(yùn)維安全做的越好,這塊越發(fā)重要。
安全規(guī)范和標(biāo)準(zhǔn)可以落實(shí)到各個(gè)部門,以流程的方式強(qiáng)制執(zhí)行。但是運(yùn)維人員安全意識(shí)的問題,很難進(jìn)行控制。
最簡單的就是弱口令,弱口令,弱口令!
各種系統(tǒng)的弱口令,各種后臺(tái)的弱口令,各種服務(wù)的弱口令。這么多年了從來沒有斷過。
很多運(yùn)維有些“壞”習(xí)慣。
比如直接在web目錄進(jìn)行web文件備份、nohup后臺(tái)運(yùn)行程序。這樣會(huì)導(dǎo)致備份文件、程序執(zhí)行的日志泄露;又或者隨便開一個(gè)web服務(wù)下日志或者傳數(shù)據(jù),如python -m SimpleHTTPServer,這樣就直接把目錄映射到所有用戶,如果是根目錄,影響就更大了;當(dāng)然,還有些運(yùn)維喜歡把自動(dòng)化腳本上傳到git,腳本這東西,密碼就在里面,一不小心就直接泄露了密碼。
比如弱口令: WooYun: 百度某分站修改了弱口令還更弱(可shell可內(nèi)網(wǎng))
比如web服務(wù)開放問題: WooYun: 騰訊某服務(wù)配置不當(dāng)導(dǎo)致包括數(shù)據(jù)庫文件、密碼hash等任意文件可下載
比如運(yùn)維在Github泄露導(dǎo)致的安全問題: WooYun: 淘寶敏感信息泄漏可進(jìn)入某重要后臺(tái)(使用大量敏感功能和控制內(nèi)部服務(wù)器)
0x03 參考
http://drops.wooyun.org/papers/410