淺談企業(yè)運維安全
之前在《淺談web后門隱藏與檢測思路》這篇文章里有個小哥已經(jīng)對檢測webshell的一些方法做了簡單介紹,我在這方面略有經(jīng)驗,檢測webshell不能只是簡單的查殺,而該把這個當(dāng)作一個長期任務(wù)來做,防御webshell不能單單從”行為”上去判斷,前期需要做的工作還有很多,我從企業(yè)的全局防御來說說如何從架構(gòu)上防御webshell,和搞運維安全,希望此文能拋磚引玉激起討論火花。
一,主動與被動發(fā)現(xiàn)漏洞:
這里的主動是指安全工程師主動去做的事情,而被動并不是被動挨打,而是積極去獲取信息,積極防御。因為攻防之間信息不對稱,很多攻擊、利用方式及漏洞安全工程師不一定能第一時間獲取到信息,就導(dǎo)致了服務(wù)器被黑,出現(xiàn)被上傳webshell無外乎這集中情況:使用開源程序出現(xiàn)高危漏洞被攻擊者上傳webshell,服務(wù)器配置錯誤導(dǎo)致攻擊者利用運維缺陷上傳webshell,程序員編寫代碼存在諸如sql注入、文件包含,命令執(zhí)行問題被攻擊者發(fā)現(xiàn)并利用導(dǎo)致被上傳webshel,那是不是說作為防御者我們就一定是被動挨打的呢?答案當(dāng)然是否定的,如果運維安全做的好的情況下,會在服務(wù)器上線初期做安全檢查將加固服務(wù)做成加固基線包,后期邀請外部人員進(jìn)行滲透測試來檢查企業(yè)安全情況,安全基礎(chǔ)就牢靠。從主動來說,企業(yè)可以通過這些辦法來將攻擊者的想法消滅在萌芽之中。1、積極主動的做好對系統(tǒng)加固工作,堅決消滅弱口令、回收外網(wǎng)默認(rèn)管理后臺(能回收的回收,不能回收的做好訪問控制),對諸如tomcat、jboss、resin之類的服務(wù)器做好加固,避免出現(xiàn)弱口令,因為互聯(lián)網(wǎng)上每時每刻都有人來通過這幾種服務(wù)來抓肉雞。
2、對于漏洞的修復(fù)不能只僅限于加固還要主動去發(fā)現(xiàn),需要定期對生產(chǎn)環(huán)境和web進(jìn)行掃描、其中外網(wǎng)端口掃描需要結(jié)合資產(chǎn)進(jìn)行,如果不能結(jié)合資產(chǎn),掃描的結(jié)果會差強(qiáng)人意。
3、對企業(yè)所使用的開源程序另外諸如webserver、第三方中間件都有深入了解,并關(guān)注這些app近期存在安全風(fēng)險:比如struts漏洞,如果能早發(fā)現(xiàn)事情也可控制(通過關(guān)注烏云、微博等來及時獲取信息)。
其次是權(quán)限控制,在struts漏洞中,使用root運行的struts2,受影響最嚴(yán)重而運行權(quán)限為tomcat之類的較輕,較輕不是說不被脫褲,而是攻擊者沒有權(quán)限對服務(wù)器來做更進(jìn)一步操作比如rm -rf /,所以對于權(quán)限的控制也需要考慮到加固中去。
4、被動發(fā)現(xiàn)漏洞可以依靠對烏云等平臺的漏洞提交來預(yù)測可能爆發(fā)的漏洞情況,并且結(jié)合第3點對應(yīng)用做檢測,如果發(fā)現(xiàn)漏洞了則快速修復(fù),將不會到被攻擊者上傳webshell的情況。
二,監(jiān)控為主分析為輔:
監(jiān)控的重要性不需要在陳述,在城市的各個角度都有監(jiān)控攝像頭,監(jiān)控的作用是屬于事中或者事后階段,舉個例子,某人犯罪如果沒有監(jiān)控的情況下,無法追溯,這時候如果有監(jiān)控的話就可以對其行為做分析和追溯。舉一反三,在企業(yè)安全防護(hù)方面也可以這樣做,通過部署ossec之類的行為監(jiān)控,對攻擊者的行為做檢測。比如對于webshell的檢測來說,更關(guān)注”行為”,啥叫行為呢,你的一舉一動都是行為,上傳了文件,修改了權(quán)限,刪除了權(quán)限這些都該被記錄下來,而類似ossec之類的監(jiān)控工具可以做到,當(dāng)然你也可以編寫腳本來對目錄做實時檢測。分析為輔,可以從多點上來結(jié)合,比如攻擊者對于網(wǎng)站的注入行為,都會觸發(fā)記錄,記錄到log里,攻擊者對ssh的掃描行為,都會被記錄到日志里,而這些都可以用作對攻擊者的行為分析,更超前一些惡意的掃描都可以算作是行為,并且這些行為都是可以分析和追溯攻擊者的,其次日志需要備份到遠(yuǎn)程,并且可以利用大數(shù)據(jù)日志分析利器splunk來對日志分析,備份到遠(yuǎn)程也導(dǎo)致了攻擊者刪除本機(jī)日志時能被追溯到。對于webshel檢測來說,可以從日志里進(jìn)行分析,因為任何攻擊者的操作都會在日志里顯現(xiàn)記錄,這時候只要有足夠的日志分析能力就可以對產(chǎn)生的webshell揪出來,使攻擊者無處遁形。最后說說運維安全,運維安全工作本來其實是工作范疇的事,但運維做不好這部分工作或者說大多數(shù)運維對安全的理解并不深入,所以企業(yè)有了運維安全這個職位,或者你可以把它叫做安全運維,運維安全需要有較寬的知識面來撐起企業(yè)安全的一片天。