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