Linux-WEB服務器安全
Linux網(wǎng)絡服務器安全WEB服務器的安全隱患vWEB應用程序的漏洞;vWEB服務器軟件本身的漏洞;vWEB服務賴于生存的NOS漏洞;vNOS配置及管理的疏忽。WEB應用程序的漏洞vWEB程序員在編寫WEB應用程序時由于設計出現(xiàn)問題而出現(xiàn)的漏洞。v對應的策略:程序設計體系進行優(yōu)化,找出相對應的BUG;v該內(nèi)容屬于軟件內(nèi)容。WEB服務器軟件本身的漏洞v如早期的IIS、APACHE在設計時出現(xiàn)的漏洞。APACHEvApache是世界使用排名第一的Web服務器軟件,市場占有率達60%左右。它可以運行在幾乎所有廣泛使用的計算機平臺上,由于其跨平臺和安全性被廣泛使用,是最流行的Web服務器端軟件之一。APACHE缺陷v1、利用HTTP協(xié)議進行DOS攻擊vSYNflood、ICMPflood、UDPflood等,大量偽造連接請求攻擊網(wǎng)絡服務的端口,造成服務器的資源耗盡、系統(tǒng)停止響應,甚至系統(tǒng)癱瘓。vAPACHE服務器存在著拒絕服務的安全隱患。v影響版本:1.3、2.0、2.0.36APACHE缺陷v2、緩沖區(qū)溢出的安全缺陷vBufferoverflow,指當計算機向緩沖區(qū)內(nèi)填充數(shù)據(jù)位數(shù)時超過了緩沖區(qū)本身的容量溢出的數(shù)據(jù)覆蓋在合法數(shù)據(jù)上,理想的情況是程序檢查數(shù)據(jù)長度并不允許輸入超過緩沖區(qū)長度的字符,但是絕大多數(shù)程序都會假設數(shù)據(jù)長度總是與所分配的儲存空間相匹配,這就為緩沖區(qū)溢出埋下隱患.v注意:一般的溢出是沒有意義的,但是如果這些數(shù)據(jù)是經(jīng)過設計的有意行為,覆蓋緩沖區(qū)的是入侵程序代碼,就可能被對方獲取控制權(quán)。v如:1.3有一個遠程緩沖區(qū)溢出漏洞,利用該漏洞會得到HTTPD服務運行者的權(quán)限。APACHE缺陷v被攻擊者獲得ROOT權(quán)限的安全缺陷v該安全缺陷主要是因為Apache服務器一般以root權(quán)限運行(父進程),攻擊者會通過他獲得root權(quán)限,進而控制整個Apache系統(tǒng)。3.3Apache服務器特點vApache服務器的特點:v支持HTTP/1.1協(xié)議。Apache是最先使用HTTP/1.1協(xié)議的Web服務器之一,它完全兼容HTTP/1.1協(xié)議并與HTTP/1.0協(xié)議向后兼容v支持通用網(wǎng)關(guān)接口(CGI)。Apache用mod_cgi模塊來支持CGI,它遵守CGI/1.1標準并且提供了擴充的特征3.3Apache服務器特點v支持HTTP認證。Apache支持基于Web的基本認證,它還為支持基于消息摘要的認證做好了準備。Apache通過使用標準的口令文件DBMSQL調(diào)用,或通過對外部認證程序的調(diào)用來實現(xiàn)基本的認證v集成的Perl語言。Perl已成為CGI腳本編程的基本標準。Apache肯定是使Perl成為這樣流行的CGI編程語言的因素之一,通過使用它的mod_perl模塊你可以將基于Perl的CGI腳本裝入內(nèi)存,并可以根據(jù)需要多次重復使用該腳本。這消除了經(jīng)常與解釋性語言聯(lián)系在一起的啟動開銷3.3Apache服務器特點v集成的代理Proxy服務器v服務器的狀態(tài)和可定制的日志v允許根據(jù)客戶主機名或IP地址限制訪問v支持用戶Web目錄v支持虛擬主機v支持動態(tài)共享對象v支持安全Socket層v支持多進程。當負載增加時,服務器會快速生成子進程來處理,從而提高系統(tǒng)的響應能力3.5Apache服務器安全策略v勤打補丁vLinux網(wǎng)管員要經(jīng)常關(guān)注相關(guān)網(wǎng)站的缺陷,及時升級系統(tǒng)或添加補丁3.5Apache服務器安全策略v隱藏和偽裝Apache的版本v軟件的漏洞信息和特定版本是相關(guān)的,因此,版本號對黑客來說是最有價值的v版本號的方法是修改配置文件Apache去除/etc/httpd/conf/httpd.confv找到關(guān)鍵字ServerSignaturevServerSignatureOffServerTokensProd安全的目錄結(jié)構(gòu)v目錄之間是獨立的,某個目錄的權(quán)限錯誤不會影響到其他目錄。3.5Apache服務器安全策略v建立一個安全的目錄結(jié)構(gòu)vApache服務器包括以下四個主要目錄vServerRoot:保存配置文件(conf子目錄)、二進制文件和其他服務器配置文件vDocumentRoot:保存Web站點的內(nèi)容,包括HTML文件和圖片等3.5Apache服務器安全策略v為Apache使用專門的用戶和用戶組v必須保證Apache使用一個專門的用戶和用戶組,不要使用系統(tǒng)預定義的賬號,比如nobody用戶和nogroup用戶組v只有root用戶可以運行Apache3.5Apache服務器安全策略3.5Apache服務器安全策略v只有root用戶訪問日志目錄,這個目錄的推薦權(quán)限:vchown-Rroot.root/etc/logschmod-R700/etc/logs3.5Apache服務器安全策略vWeb目錄的訪問策略v對于可以訪問的Web目錄,要使用相對保守的途徑進行訪問,不要讓用戶查看任何目錄索引列表3.5Apache服務器安全策略v禁止使用目錄索引v修改配置文件httpd.confvOptions-IndexesFollowSymLinksOptions指令通知Apache禁止使用目錄索引FollowSymLinks表示不允許使用符號鏈接3.5Apache服務器安全策略Apache的OrderAllowDenyv1、修改完配置后要保存好并重啟Apache服務,配置才能生效;v2.開頭字母不分大小寫;v3.allow、deny語句不分先后順序,誰先誰后不影響最終判斷結(jié)果;但都會被判斷到;v4.order語句中,“allow,deny”之間“有且只有”一個逗號(英文格式的),而且先后順序很重要;v5.Apache有一條缺省規(guī)則,“orderallow,deny”本身就默認了拒絕所有的意思,因為deny在allow的后面;同理,“orderdeny,allow”本身默認的是允許所有;當然,最終判斷結(jié)果還要綜合下面的allow、deny語句中各自所包含的范圍;(也就是說order語句后面可以沒有allow、deny語句)v6.allow、deny語句中,第二個單詞一定是“from”,否則Apache會因錯而無法啟動,v7.“orderallow,deny”代表先判斷allow語句再判斷deny語句,反之亦然。一個普通例子vorderdeny,allowvallowfrom218.20.253.2vdenyfrom218.20v1.所謂“首先判斷默認的”,就是判斷“orderdeny,allow”這句,它默認是允許所有;v2.所謂“然后判斷逗號前的”,因為在本例子中的order語句里面,deny在逗號的前面,所以現(xiàn)在輪到判斷下面的deny語句了“denyfrom218.20”;v3.所謂“最后判斷逗號后的”,因為在本例子中的order語句里面,allow在逗號的后面,所以最后輪到判斷下面的allow語句了“allowfrom218.20.253.2”。3.5Apache服務器安全策略v禁止用戶重載v禁止用戶對目錄配置文件(.htaccess)進行重載(修改)vAllowOverrideNone本節(jié)任務v寫論文論述apache服務器的安全管理,包含以下內(nèi)容,并在虛擬機上進行設置并截圖。(注:在網(wǎng)上找資料)v在apache中.htpasswd文件的作用及設置;vApache中的日志管理;vApache中的訪問控制措施(舉例說明,如該網(wǎng)站只允許172.26.117.0/24訪問應該如何做)。