為什么仍然有很多網(wǎng)站漏洞?這是很多用戶關(guān)心的問題。
大多數(shù)企業(yè)網(wǎng)站的漏洞包含OpenSSL、PHP和WordPress中的漏洞,這些漏洞主要是由于這些開源軟件中存在著大量自定義組合以及缺乏測試和漏洞修復(fù)。
本文中讓我們看看如何從一開始以及整個開發(fā)生命周期中修復(fù)這些漏洞。
很多網(wǎng)站的安全漏洞
“很多網(wǎng)站(和Web應(yīng)用程序)漏洞的主要原因是這些技術(shù)完全定制化開發(fā)的性質(zhì),”美國國家安全局前情報收集人員、現(xiàn)Masergy Communications公司主管David J. Venable表示,這樣的結(jié)果會產(chǎn)生在很大程度上未經(jīng)測試的網(wǎng)站和應(yīng)用程序,它們沒有像大多數(shù)商業(yè)軟件(例如操作系統(tǒng)和服務(wù)器軟件包)經(jīng)過嚴(yán)格的徹底的測試。
事實(shí)上,網(wǎng)站和網(wǎng)絡(luò)應(yīng)用程序中的漏洞要比企業(yè)其他地方的漏洞更多。這些安全漏洞包括PHP站點(diǎn)、第三方和自產(chǎn)軟件中的漏洞,WordPress代碼和安裝以及OpenSSL、Single Sign-On及SQL和LDAP部署及技術(shù)中的漏洞。
使用第三方軟件的PHP網(wǎng)站存在固有的漏洞,因?yàn)榈谌綉?yīng)用程序開發(fā)不受企業(yè)的掌控。Berkeley研究公司主管Joe Sremack表示:“你可以設(shè)計(jì)你的網(wǎng)站,以確保所有自制代碼是完全安全的,但如果你需要使用第三方軟件,那么你就可能引入漏洞。”
WordPress是一個日益嚴(yán)重的問題,它有著無數(shù)的插件,需要不斷的更新,這給中小型企業(yè)帶來日益嚴(yán)重的威脅。Sremack表示:“企業(yè)想要WordPress的功能,但不幸的是,它也帶來風(fēng)險。”
OpenSSL也面臨相同的問題。隨著人們不斷創(chuàng)新該技術(shù),這些創(chuàng)新帶來新的漏洞,可讓攻擊者發(fā)現(xiàn)和利用。每年攻擊者都會不斷利用OpenSSL漏洞來作為大規(guī)模數(shù)據(jù)泄露的一部分,很多看似新的漏洞實(shí)際上是還未被發(fā)現(xiàn)的舊漏洞。
即使編程者開發(fā)出安全的網(wǎng)站,他們的開發(fā)主要是基于他們已知的漏洞,而不是尚未確認(rèn)的漏洞,而總是會出現(xiàn)新的漏洞。
注入漏洞仍然很常見,攻擊者已經(jīng)調(diào)整了他們的攻擊方法,以利用日益普及的單點(diǎn)登錄。Sremack解釋說:“單點(diǎn)登錄在酒店里很常見,人們會使用單點(diǎn)登錄來檢查他們的賬戶和積分。新的LDAP注入技術(shù)會攻擊漏洞,并傳遞參數(shù)到代碼來控制其網(wǎng)絡(luò)會話。”
另一個攻擊向量是本地和遠(yuǎn)程文件。Sremack稱:“網(wǎng)站的代碼可以調(diào)用本地服務(wù)器或遠(yuǎn)程公共服務(wù)器上的文件。通過使用注入技術(shù),攻擊者可以讓網(wǎng)站顯示信息,包括密碼文件或者Web服務(wù)器中的用戶名列表,并可以執(zhí)行他們想要運(yùn)行的代碼。”
修復(fù)網(wǎng)站安全漏洞
Venable稱:“企業(yè)必須從開發(fā)過程的最開始就堅(jiān)持安全最佳做法,例如開放Web應(yīng)用安全項(xiàng)目(OWASP)的最佳做法。”企業(yè)需要在生產(chǎn)前、代碼變更后進(jìn)行所有測試,包括應(yīng)用程序評估、滲透測試以及靜態(tài)分析,至少一年一次。為了實(shí)時發(fā)現(xiàn)和緩解攻擊,企業(yè)需要對網(wǎng)站和網(wǎng)絡(luò)應(yīng)用程序部署WAF和IDS,并部署全天候監(jiān)控小組。
Sremack稱:“在開發(fā)過程中,與安全團(tuán)隊(duì)合作來對受影響的代碼和功能執(zhí)行定期測試。”如果企業(yè)在更新當(dāng)前的網(wǎng)站,應(yīng)該讓安全團(tuán)隊(duì)測試和確保新增的功能不會帶來漏洞。開發(fā)團(tuán)隊(duì)還應(yīng)該進(jìn)行掃描和測試來隔離漏洞和修復(fù)漏洞。
Sremack說道:“企業(yè)應(yīng)該使用攻擊者用來入侵網(wǎng)絡(luò)的相同工具,例如Grabber、W3AF和Zed Attack Proxy。”雖然說,任何有著安全知識或安全工具的人都可以利用這些應(yīng)用程序,基于測試的結(jié)果來發(fā)現(xiàn)網(wǎng)站漏洞,但企業(yè)需要安排專門的工作人員來做這個工作。
“開發(fā)人員應(yīng)該具體看看他們?nèi)绾蝿?chuàng)建和維護(hù)網(wǎng)絡(luò)會話,專門檢查會話通過網(wǎng)站傳輸?shù)妮斎耄瑹o論是通過網(wǎng)站還是輸入字段,”Sremack稱,“然后監(jiān)測任何第三方代碼中的漏洞,并查看來自供應(yīng)商的漏洞利用聲明。”
總結(jié)
網(wǎng)站越大,其功能和可視性越大,它也會使用更多第三方軟件,同時,減少該網(wǎng)站中固有漏洞的過程也更加昂貴。
企業(yè)必須在一天內(nèi)多次監(jiān)控和更新網(wǎng)站,以更好地抵御網(wǎng)絡(luò)攻擊者。這個過程應(yīng)該包括變更管理、測試和正確的部署,以及新的專門的安全團(tuán)隊(duì)和指定的測試站點(diǎn)。
網(wǎng)站的功能越豐富,企業(yè)越應(yīng)該確保網(wǎng)站的安全性。現(xiàn)在也有很多開源免費(fèi)軟件工具可以幫助開發(fā)人員來了解新的漏洞和威脅。