服務(wù)器的安全防護(hù)中,網(wǎng)站環(huán)境的搭建與安全部署也是很重要的一部分,目前大多數(shù)的服務(wù)器都使用的是nginx來搭建網(wǎng)站的運行環(huán)境,包括windows服務(wù)器,linux服務(wù)器都在使用,nginx的安全設(shè)置對于服務(wù)器安全起到很重要的作用。關(guān)于如何設(shè)置nginx安全,以及服務(wù)器的安全部署,我們SINE安全公司來詳細(xì)的給大家介紹一下:
大部分的網(wǎng)站使用nginx來做負(fù)載均衡以及前端的80端口代碼來進(jìn)行靜態(tài)html文件的訪問,nginx的安全設(shè)置如果沒有設(shè)置好會導(dǎo)致服務(wù)器安全出現(xiàn)問題,可能會導(dǎo)致服務(wù)器被入侵,以及網(wǎng)站被攻擊。
nginx 在linux centos系統(tǒng)里,使用的是nginx.conf的格式文件來作為網(wǎng)站的配置文件,里面的配置主要是綁定域名,以及端口,指定到網(wǎng)站的目錄地址,偽靜態(tài)規(guī)則,看下圖:
從上圖的配置文件中,我們可以看出,nginx的內(nèi)部結(jié)構(gòu)很清晰,每一行代碼都寫的很精簡,針對的功能也是唯一的,每個代碼對應(yīng)的指令以及作用劃分的很仔細(xì),其中server就是我們IIS配置的host地址,比如域名以及IP地址,在server的代碼里寫入端口,可以將網(wǎng)站設(shè)置成端口形式的訪問?,F(xiàn)在我們大體的了解了什么nginx,那么nginx設(shè)置不全面,會導(dǎo)致那些漏洞呢?
最常見的就是網(wǎng)站目錄可以被任意的查看,也就是網(wǎng)站目錄遍歷漏洞,這個簡單來說就是如果服務(wù)器里有很多網(wǎng)站,隨便一個網(wǎng)站被攻擊,都會導(dǎo)致服務(wù)器里的全部網(wǎng)站被攻擊,因為可以跨目錄的查看任意網(wǎng)站的程序代碼。通常導(dǎo)致該漏洞的原因是在配置nginx的時候,有些服務(wù)器運維人員會將autoindex on;代碼寫入到server行里,導(dǎo)致發(fā)生目錄遍歷漏洞。如下圖就是目錄可以被任意的瀏覽,包括網(wǎng)站里包含了那些代碼,都看的一清二楚。
nginx設(shè)置導(dǎo)致的URL注入漏洞,服務(wù)器里的網(wǎng)站在使用SSL證書,啟用443端口訪問網(wǎng)站,nginx會自動代理,并加載SSL證書,有些會設(shè)置nginx強制的跳轉(zhuǎn)到https網(wǎng)站,使用302的協(xié)議進(jìn)行強制跳轉(zhuǎn),如果技術(shù)人員設(shè)置成return 302 https://$host$uri,會導(dǎo)致網(wǎng)站存在SQL注入漏洞,$uri變量值的含義是:請求文件以及網(wǎng)站的路徑,當(dāng)nginx環(huán)境進(jìn)行傳遞參數(shù)值的時候,可以插入惡意代碼到網(wǎng)站中執(zhí)行,并提交到數(shù)據(jù)庫后端進(jìn)行sql查詢,注入漏洞就因此而發(fā)生,建議服務(wù)器的運維人員不要對此進(jìn)行設(shè)置。
關(guān)于nginx的安全設(shè)置方面,服務(wù)器的維護(hù)人員盡量嚴(yán)格的進(jìn)行設(shè)置,對目錄的瀏覽權(quán)限詳細(xì)的分配,對https協(xié)議訪問的網(wǎng)站也要加強302的強制跳轉(zhuǎn)參數(shù)設(shè)置,如果您對服務(wù)器安全防護(hù)方面不是太懂的話,也可以找專業(yè)的安全公司處理,國內(nèi)SINE安全,綠盟,深信服,都是比較不錯的安全公司。本文來源:www.sinesafe.com
申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!