Uni系統(tǒng)管理員安全問(wèn)題_第1頁(yè)
Uni系統(tǒng)管理員安全問(wèn)題_第2頁(yè)
Uni系統(tǒng)管理員安全問(wèn)題_第3頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、本文從系統(tǒng)管理員的角度討論安全問(wèn)題.系統(tǒng)管理員是管理系統(tǒng)的人:?jiǎn)?dòng)系統(tǒng),停止系統(tǒng)運(yùn)行,安裝新軟件,增加新用戶,刪除老用戶,以及完成保持系統(tǒng)發(fā)展和運(yùn)行的日常事務(wù)工作.1. 安全管理安全管理主要分為四個(gè)方面:防止未授權(quán)存?。哼@是計(jì)算機(jī)安全最重要的問(wèn)題:未被使用系統(tǒng)的人進(jìn)入系統(tǒng).用戶意識(shí),良好的口令管理(由系統(tǒng)管理員和用戶雙方配合),登錄活動(dòng)記錄和報(bào)告,用戶和網(wǎng)絡(luò)活動(dòng)的周期檢查,這些都是防止未授權(quán)存取的關(guān)鍵.防止泄密:這也是計(jì)算機(jī)安全的一個(gè)重要問(wèn)題.防止已授權(quán)或未授權(quán)的用戶相互存取相互的重要信息.文件系統(tǒng)查帳,su登錄和報(bào)告,用戶意識(shí),加密都是防止泄密的關(guān)鍵.防止用戶拒絕系統(tǒng)的管理:這一方面的安全應(yīng)

2、由操作系統(tǒng)來(lái)完成.一個(gè)系統(tǒng)不應(yīng)被一個(gè)有意試圖使用過(guò)多資源的用戶損害.不幸的是,UNIX不能很好地限制用戶對(duì)資源的使用,一個(gè)用戶能夠使用文件系統(tǒng)的整個(gè)磁盤(pán)空間,而UNIX基本不能阻止用戶這樣做.系統(tǒng)管理員最好用PS命令,記帳程序df和du周期地檢查系統(tǒng).查出過(guò)多占用CUF進(jìn)程和大量占用磁盤(pán)的文件.防止丟失系統(tǒng)的完整性:這一安全方面與一個(gè)好系統(tǒng)管理員的實(shí)際工作(例如:周期地備份文件系統(tǒng),系統(tǒng)崩潰后運(yùn)行fsck檢查,修復(fù)文件系統(tǒng),當(dāng)有新用戶時(shí),檢測(cè)該用戶是否可能使系統(tǒng)崩潰的軟件)和保持一個(gè)可靠的操作系統(tǒng)有關(guān)(即用戶不能經(jīng)常性地使系統(tǒng)崩潰).本文其余部分主要涉及前兩個(gè)問(wèn)題,第三個(gè)問(wèn)題在"安全

3、查帳"一節(jié)討論.文檔來(lái)自于網(wǎng)絡(luò)搜索2. 超級(jí)用戶一些系統(tǒng)管理命令只能由超級(jí)用戶運(yùn)行.超級(jí)用戶擁有其他用戶所沒(méi)有的特權(quán),超級(jí)用戶不管文件存取許可方式如何,都可以讀,寫(xiě)任何文件,運(yùn)行任何程序.系統(tǒng)管理員通常使用命令:/bin/su或以root進(jìn)入系統(tǒng)從而成為超級(jí)用戶.在后面文章中以#表示應(yīng)敲入必須由超級(jí)用戶運(yùn)行的命令,用$表示應(yīng)敲入由所有其他用戶運(yùn)行的命令.文檔來(lái)自于網(wǎng)絡(luò)搜索3. 文件系統(tǒng)安全文檔來(lái)自于網(wǎng)絡(luò)搜索UNIX文件系統(tǒng)概述UNIX文件系統(tǒng)是UNIX系統(tǒng)的心臟部分,提供了層次結(jié)構(gòu)的目錄和文件.文件系統(tǒng)將磁盤(pán)空間劃分為每1024個(gè)字節(jié)一組,稱為(block)(也有用512字節(jié)為一塊的

4、,如:SCOXENIX).編號(hào)從0到整個(gè)磁盤(pán)的最大塊數(shù).全部塊可劃分為四個(gè)部分,塊0稱為引導(dǎo)塊,文件系統(tǒng)不用該塊;塊1稱為專用塊,專用塊含有許多信息,其中有磁盤(pán)大小和全部塊的其它兩部分的大小.從塊2開(kāi)始是i節(jié)點(diǎn)表,i節(jié)點(diǎn)表中含有i節(jié)點(diǎn),表的塊數(shù)是可變的,后面將做討論.i節(jié)點(diǎn)表之后是空閑存儲(chǔ)塊(數(shù)據(jù)存儲(chǔ)塊),可用于存放文件內(nèi)容.文件的邏輯結(jié)構(gòu)和物理結(jié)構(gòu)是十分不同的邏輯結(jié)構(gòu)是用戶敲入cat命令后所看到的文件,用戶可得到表示文件內(nèi)容的字符流.物理結(jié)構(gòu)是文件實(shí)際上如何存放在磁盤(pán)上的存儲(chǔ)格式.用戶認(rèn)為自己的文件是邊疆的字符流,但實(shí)際上文件可能并不是以邊疆的方式存放在磁盤(pán)上的,長(zhǎng)于一塊的文件通常將分散地存

5、放在盤(pán)上.然而當(dāng)用戶存取文件時(shí),UNIX文件系統(tǒng)將以正確的順序取各塊,給用戶提供文件的邏輯結(jié)構(gòu).當(dāng)然,在UNIX系統(tǒng)的某處一定會(huì)有一個(gè)表,告訴文件系統(tǒng)如何將物理結(jié)構(gòu)轉(zhuǎn)換為邏輯結(jié)構(gòu).這就涉及到i節(jié)點(diǎn)了.i節(jié)點(diǎn)是一個(gè)64字節(jié)長(zhǎng)的表,含有有關(guān)一個(gè)文件的信息,其中有文件大小,文件所有者,文件存取許可方式,以及文件為普通文件,目錄文件還是特別文件等.在i節(jié)點(diǎn)中最重要的一項(xiàng)是磁盤(pán)地址表.該表中有13個(gè)塊號(hào).前10個(gè)塊號(hào)是文件前10塊的存放地址.這10個(gè)塊號(hào)能給出一個(gè)至多10塊長(zhǎng)的文件的邏輯結(jié)構(gòu),文件將以塊號(hào)在磁盤(pán)地址表中出現(xiàn)的順序依次取相應(yīng)的塊.當(dāng)文件長(zhǎng)于10塊時(shí)又怎樣呢?磁盤(pán)地址表中的第十一項(xiàng)給出一個(gè)塊

6、號(hào),這個(gè)塊號(hào)指出的塊中含有256個(gè)塊號(hào),至此,這種方法滿足了至多長(zhǎng)于266塊的文件(272,384字節(jié)).如果文件大于266塊,磁盤(pán)地址表的第十二項(xiàng)給出一個(gè)塊號(hào),這個(gè)塊號(hào)指出的塊中含有256個(gè)塊號(hào),這256個(gè)塊號(hào)的每一個(gè)塊號(hào)又指出一塊,塊中含256個(gè)塊號(hào),這些塊號(hào)才用于取文件的內(nèi)容.磁盤(pán)地址中和第十三項(xiàng)索引尋址方式與第十二項(xiàng)類似,只是多一級(jí)間接索引.這樣,在UNIX系統(tǒng)中,文件的最大長(zhǎng)度是16,842,762塊,即17,246,988,288字節(jié),有幸是是UNIX系統(tǒng)對(duì)文件的最大長(zhǎng)度(一般為1到2咐節(jié))加了更實(shí)際的限制,使用戶不會(huì)無(wú)意中建立一個(gè)用完整個(gè)磁盤(pán)窖所有塊的文件.文件系統(tǒng)將文件名轉(zhuǎn)換為

7、i節(jié)點(diǎn)的方法實(shí)際上相當(dāng)簡(jiǎn)單.一個(gè)目錄實(shí)際上是一個(gè)含有目錄表的文件:對(duì)于目錄中的每個(gè)文件,在目錄表中有一個(gè)入口項(xiàng),入口項(xiàng)中含有文件名和與文件相應(yīng)的i節(jié)點(diǎn)號(hào).當(dāng)用戶敲入catxxx時(shí),文件系統(tǒng)就在當(dāng)前目錄表中查找名為xxx的入口項(xiàng),得到與文件xxx相應(yīng)的i節(jié)點(diǎn)號(hào),然后開(kāi)始取含有文件xxx的內(nèi)容的塊.文檔來(lái)自于網(wǎng)絡(luò)搜索(2)設(shè)備文件UNIX系統(tǒng)與邊在本系統(tǒng)上的各種設(shè)備之間的通訊,通過(guò)特別文件來(lái)實(shí)現(xiàn),就程序而言,磁盤(pán)是文件,MODE罹文件,甚至內(nèi)存也是文件.所有連接到系統(tǒng)上的設(shè)備都在/dev目錄中有一個(gè)文件與其對(duì)應(yīng).當(dāng)在這些文件上執(zhí)行I/O操作時(shí),由UNIX系統(tǒng)將I/O操作轉(zhuǎn)換成實(shí)際設(shè)備的動(dòng)作.例如,

8、文件/dev/mem是系統(tǒng)的內(nèi)存,如果cat這個(gè)文件,實(shí)際上是在終端顯示系統(tǒng)的內(nèi)存.為了安全起見(jiàn),這個(gè)文件對(duì)普通用戶是不可讀的.因?yàn)樵谌我唤o定時(shí)間,內(nèi)存區(qū)可能含有用戶登錄口令或運(yùn)行程序的口令,某部分文件的編輯緩沖區(qū),緩沖區(qū)可能含有用ed-x命令解密后的文本,以及用戶不愿讓其他人存取的種種信息.在/dev中的文件通常稱為設(shè)備文件,用Is/dev命令可以看看系統(tǒng)中的一些設(shè)備:acuo呼叫自動(dòng)撥-號(hào)器console系統(tǒng)控制臺(tái)dsknn塊方式操作磁盤(pán)分區(qū)kmem核心內(nèi)存mem內(nèi)存Ip打印機(jī)mto塊方式操作磁帶rdsknn流方式操作的磁盤(pán)分區(qū)rmto流方式操作的磁帶swap交換區(qū)syscon系統(tǒng)終端tt

9、ynn終端口x25網(wǎng)絡(luò)端口等等文檔來(lái)自于網(wǎng)絡(luò)搜索(3)/etc/mknod命令用于建立設(shè)備文件.只有root能使用這個(gè)命令建立設(shè)備文件.其參數(shù)是文件名,字母c或b分別代表字符特別文件或塊特別文件,主設(shè)備號(hào),次設(shè)備號(hào).塊特別文件是像磁帶,磁盤(pán)這樣一些以塊為單位存取數(shù)據(jù)的設(shè)備.字符特別文件是如像終端,打印機(jī),MODEMS者其它任何與系統(tǒng)通訊時(shí),一次傳輸一個(gè)字符的設(shè)備,包括模仿對(duì)磁盤(pán)進(jìn)行字符方式存取的磁盤(pán)驅(qū)動(dòng)器.主設(shè)備號(hào)指定了系統(tǒng)子程序(設(shè)備驅(qū)動(dòng)程序),當(dāng)在設(shè)備上執(zhí)行I/O時(shí),系統(tǒng)將調(diào)用這個(gè)驅(qū)動(dòng)程序.調(diào)用設(shè)備驅(qū)動(dòng)程序時(shí),次設(shè)備號(hào)將傳遞給該驅(qū)動(dòng)程序(次設(shè)備規(guī)定具體的磁盤(pán)驅(qū)動(dòng)器,帶驅(qū)動(dòng)器,信號(hào)線編號(hào),或

10、磁盤(pán)分區(qū)).每種類型的設(shè)備一般都有自己的設(shè)備驅(qū)動(dòng)程序.文件系統(tǒng)將主設(shè)備號(hào)和次設(shè)備號(hào)存放在i節(jié)點(diǎn)中的磁盤(pán)地址表內(nèi),所以沒(méi)有磁盤(pán)空間分配給設(shè)備文件(除i節(jié)點(diǎn)本身占用的磁盤(pán)區(qū)外).當(dāng)程序試圖在設(shè)備文件上執(zhí)行I/O操作時(shí),系統(tǒng)識(shí)別出該文件是一個(gè)特別文件,并調(diào)用由主設(shè)備號(hào)指定的設(shè)備驅(qū)動(dòng)程序,次設(shè)備號(hào)作為調(diào)用設(shè)備驅(qū)動(dòng)程序的參數(shù).文檔來(lái)自于網(wǎng)絡(luò)搜索(4)安全考慮將設(shè)備處理成文件,使得UNIX程序獨(dú)立于設(shè)備,即程序不必一定要了解正使用的設(shè)備的任何特性,存取設(shè)備也不需要記錄長(zhǎng)度,塊大小,傳輸速度,網(wǎng)絡(luò)協(xié)議等這樣一些信息,所有煩人的細(xì)節(jié)由設(shè)備驅(qū)動(dòng)程序去關(guān)心考慮,要存取設(shè)備,程序只須打開(kāi)設(shè)備文件,然后作為普通的UN

11、IX文件來(lái)使用.從安全的觀點(diǎn)來(lái)看這樣處理很好,因?yàn)槿魏卧O(shè)備上進(jìn)行的I/O操作只經(jīng)過(guò)了少量的渠道(即設(shè)備文件).用戶不能直接地存取設(shè)備.所以如果正確地設(shè)置了磁盤(pán)分區(qū)的存取許可,用戶就只能通過(guò)UNIX文件系統(tǒng)存取磁盤(pán).文件系統(tǒng)有內(nèi)部安全機(jī)制(文件許可).不幸的是,如果磁盤(pán)分區(qū)設(shè)備得不正確,任何用戶都能夠?qū)懸粋€(gè)程序讀磁盤(pán)分區(qū)中的每個(gè)文件,作法很簡(jiǎn)單:讀一i節(jié)點(diǎn),然后以磁盤(pán)地址表中塊號(hào)出現(xiàn)的順序,依次讀這些塊號(hào)指出的存有文件內(nèi)容的塊.故除了root以外,決不要使盤(pán)分區(qū)對(duì)任何人可寫(xiě).因?yàn)樗姓撸募嫒≡S可方式這樣一些信息存放于i節(jié)點(diǎn)中,任何人只要具有已安裝分區(qū)的寫(xiě)許可,就能設(shè)置任何文件的SUID許可,

12、而不管文件的所有者是誰(shuí),也不必用chmod()命令,還可避過(guò)系統(tǒng)建立的安全檢查.以上所述對(duì)內(nèi)存文件mem,kme而對(duì)換文件swap也是一樣的.這些文件含有用戶信息,一個(gè)"耐心"的程序可以將用戶信息提取出來(lái).要避免磁盤(pán)分區(qū)(以及其它設(shè)備)可讀可寫(xiě),應(yīng)當(dāng)在建立設(shè)備文件前先用umask命令設(shè)置文件建立屏蔽值.一般情況下,UNIX系統(tǒng)上的終端口對(duì)任何人都是可寫(xiě)的,從而使用戶可以用write命令發(fā)送信息.雖然write命令易引起安全方面的問(wèn)題,但大多數(shù)用戶覺(jué)得用write得到其他用戶的信息很方便,所以系統(tǒng)將終端設(shè)備的存取許可設(shè)置成對(duì)所有用戶可寫(xiě)./dev目錄應(yīng)當(dāng)是755存取許可方式,

13、且屬root所有.不允許除root外的任何用戶讀或?qū)懕P(pán)分區(qū)的原則有一例外,即一些程序(通常是數(shù)據(jù)庫(kù)系統(tǒng))要求對(duì)磁盤(pán)分區(qū)直接存取,解決這個(gè)問(wèn)題的經(jīng)驗(yàn)的盤(pán)分區(qū)應(yīng)當(dāng)由這種程序?qū)S茫ú话惭b文件系統(tǒng)),而且應(yīng)當(dāng)告知使用這種程序的用戶,文件安全保護(hù)將由程序自己而不是UNIX文件系統(tǒng)完成.文檔來(lái)自于網(wǎng)絡(luò)搜索find命令find命令用于搜索目錄樹(shù),并對(duì)目錄樹(shù)上的所有文件執(zhí)行某種操作,參數(shù)是目錄名表(指出從哪些起點(diǎn)開(kāi)始搜索),還可給出一個(gè)或多個(gè)選項(xiàng),規(guī)定對(duì)每個(gè)文件執(zhí)行什么操作.find.-print將列出當(dāng)前工作目錄下的目錄樹(shù)的每一個(gè)文件find/-userbob-print將列出在系統(tǒng)中可找到的屬于bob用戶

14、的所有文件.find/usr/bob-perm666-print將列出/usr/bob目錄樹(shù)下所有存取許可為666的文件.若將666改為-666則將列出所有具有包含了666在內(nèi)的存取許可方式的文件(如777).find/usr/bob-typeb-print將列出/usr/bob目錄樹(shù)下所有塊特別文件(c為字符特別文件).find/-userroot-perm-4000-execIs-l;是一個(gè)較復(fù)雜一點(diǎn)的命令,-execCOMMAND;允許對(duì)所找到的每個(gè)文件運(yùn)行指定的命令COMMAND.COMMAND含有,則將由find所找到的文件名替換.COMMAND須以;結(jié)束.以上舉例介紹find的用法

15、,各選項(xiàng)可組合使用以達(dá)到更強(qiáng)的功能.文檔來(lái)自于網(wǎng)絡(luò)搜索(6)secure程序系統(tǒng)管理員應(yīng)當(dāng)做一個(gè)程序以定期檢查系統(tǒng)中的各個(gè)系統(tǒng)文件,包括檢查設(shè)備文件和SUID,SGID程序,尤其要注意檢查SUID,SGID程序,檢查/etc/passwd和/etc/group文件,尋找久未登錄的戶頭和校驗(yàn)各重要文件是否被修改(源程序清單將在今后發(fā)表)文檔來(lái)自于網(wǎng)絡(luò)搜索(7)ncheck命令用于檢查文件系統(tǒng),只用一個(gè)磁盤(pán)分區(qū)名作為參數(shù),將列出i節(jié)點(diǎn)號(hào)及相應(yīng)的文件名.i節(jié)點(diǎn)相同的文件為建鏈文件.注意:所列出的清單文件名與mount命令的第一個(gè)域相同的文件名前部分將不會(huì)列出來(lái).因?yàn)槭亲鑫募到y(tǒng)內(nèi)部的檢查,nchec

16、k并不知道文件系統(tǒng)安裝點(diǎn)以上部分的目錄.也可用此命令來(lái)搜索文件系統(tǒng)中所有的SUID和SGID程序和設(shè)備文件,使用-s選項(xiàng)來(lái)完成此項(xiàng)功能.文檔來(lái)自于網(wǎng)絡(luò)搜索(8)安裝和拆卸文件系統(tǒng)UNIX文件系統(tǒng)是可安裝的,這意味著每個(gè)文件系統(tǒng)可以連接到整個(gè)目錄樹(shù)的任意節(jié)點(diǎn)上(根目錄總是被安裝上的).安裝文件系統(tǒng)的目錄稱為安裝點(diǎn)./etc/mount命令用于安裝文件系統(tǒng),用這條命令可將文件系統(tǒng)安裝在現(xiàn)有目錄結(jié)構(gòu)的任意處.安裝文件系統(tǒng)時(shí),安裝點(diǎn)的文件和目錄都是不可存取的,因此未安裝文件系統(tǒng)時(shí),不要將文件存入安裝點(diǎn)目錄.文件系統(tǒng)安裝后,安裝點(diǎn)的存取許可方式和所有者將改變?yōu)樗惭b的文件根目錄的許可方式和所有者.安裝文

17、件系統(tǒng)時(shí)要小心:安裝點(diǎn)的屬性會(huì)改變!還要注意新建的文件,除非新文件系統(tǒng)是由標(biāo)準(zhǔn)文件建立的,系統(tǒng)標(biāo)準(zhǔn)文件會(huì)設(shè)置適當(dāng)?shù)拇嫒≡S可方式,否則新文件系統(tǒng)的存取許可將是777!可用-r選項(xiàng)將文件系統(tǒng)安裝成只讀文件系統(tǒng).需要寫(xiě)保護(hù)的帶驅(qū)動(dòng)器和磁盤(pán)應(yīng)當(dāng)以這種方式來(lái)安裝.不帶任何參數(shù)的/etc/mount可獲得系統(tǒng)中所安裝的文件系統(tǒng)的有關(guān)信息.包括:文件系統(tǒng)被安裝的安裝點(diǎn)目錄,對(duì)應(yīng)/dev中的哪個(gè)設(shè)備,只讀或可讀寫(xiě),安裝時(shí)間和日期等.從安全的觀點(diǎn)來(lái)講,可安裝系統(tǒng)的危險(xiǎn)來(lái)自用戶可能請(qǐng)求系統(tǒng)管理員為其安裝用戶自己的文件系統(tǒng).如果安裝了用戶的文件系統(tǒng),則應(yīng)在允許用戶存取文件系統(tǒng)前,先掃描用戶的文件系統(tǒng),搜索SUID/

18、SGID程序和設(shè)備文件.在除了root外任何人不能執(zhí)行的目錄中安裝文件系統(tǒng),用find命令或secure列出可疑文件,刪除不屬用戶所有的文件的SUID/SGID許可.用戶的文件系統(tǒng)用完后,可用umount命令卸下文件系統(tǒng).并將安裝點(diǎn)目錄的所有者改回root,存取許可改為755.文檔來(lái)自于網(wǎng)絡(luò)搜索(9)系統(tǒng)目錄和文件UNIX系統(tǒng)中有許多文件不允許用戶寫(xiě),如:/bin,/usr/bin,/usr/lbin,/etc/passwd,/usr/lib/crontab,/unix,/etc/rc,/etc/inittab這樣一些文件和目錄(大多數(shù)的系統(tǒng)目錄),可寫(xiě)的目錄允許移動(dòng)文件,會(huì)引起安全問(wèn)題.系統(tǒng)

19、管理員應(yīng)經(jīng)常檢查系統(tǒng)文件和目錄的許可權(quán)限和所有者.可做一個(gè)程序根據(jù)系統(tǒng)提供的規(guī)則文件(在/etc/permlist文件中)所描述的文件所有者和許可權(quán)規(guī)則檢查各文件.(源程序清單將在今后發(fā)表)注意:如果系統(tǒng)的安全管理不好,或系統(tǒng)是新安裝的,其安全程序不夠高,可以用make方式在安全強(qiáng)的系統(tǒng)上運(yùn)行上述程序,將許可規(guī)則文件拷貝到新系統(tǒng)來(lái),再以設(shè)置方式在新系統(tǒng)上運(yùn)行上述程序,就可提高本系統(tǒng)的安全程序.但要記住,兩個(gè)系統(tǒng)必須運(yùn)行相同的UNIX系統(tǒng)版本.文檔來(lái)自于網(wǎng)絡(luò)搜索4. 作為root運(yùn)行的程序在UNIX系統(tǒng)中,有些程序由系統(tǒng)作為root進(jìn)程運(yùn)行.這些程序并不總是具有SUID許可,因?yàn)槠洳簧俪绦騼H由r

20、oot運(yùn)行,系統(tǒng)管理員需要清楚這些程序做什么,以及這些程序還將運(yùn)行其它什么程序.文檔來(lái)自于網(wǎng)絡(luò)搜索啟動(dòng)系統(tǒng)當(dāng)某些UNIX系統(tǒng)(如SCOUNIX/XENIX)啟動(dòng)時(shí),是以被稱為單用戶的方式運(yùn)行,在這種方式中普通用戶不能登錄,唯有的進(jìn)程是init,swapper,以及一些由系統(tǒng)管理員從控制臺(tái)運(yùn)行的進(jìn)程.UNIX系統(tǒng)的單用戶方式啟動(dòng),使系統(tǒng)管理員能在允許普通用戶登錄以前,先檢查系統(tǒng)操作,確保系統(tǒng)一切正常,當(dāng)系統(tǒng)處于單用戶方式時(shí),控制臺(tái)作為超級(jí)用戶,命令揭示是"#",有些UNIX系統(tǒng)不要確認(rèn)超級(jí)用戶口令就認(rèn)可控制臺(tái)是root,給出#提示符.這就可能成為一個(gè)安全問(wèn)題.文檔來(lái)自于網(wǎng)絡(luò)搜

21、索init進(jìn)程UNIX系統(tǒng)總是以某種方式或稱為某種級(jí)運(yùn)行,系統(tǒng)有若干種運(yùn)行級(jí),這些運(yùn)行級(jí)由init進(jìn)程控制.UNIX系統(tǒng)啟動(dòng)時(shí)以單用戶方式運(yùn)行,也叫1級(jí)或S級(jí).對(duì)于其他用戶登錄進(jìn)入系統(tǒng),UNIX有一種多用戶運(yùn)行方式,也叫2級(jí).init進(jìn)程控制系統(tǒng)運(yùn)行級(jí),它讀入文件/etc/inittab,該文件詳細(xì)地規(guī)定了哪些進(jìn)程在哪一級(jí)運(yùn)行.當(dāng)root敲入initn(數(shù)字),系統(tǒng)就進(jìn)入n級(jí).init讀該文件以確定終止哪些進(jìn)程,啟動(dòng)哪些進(jìn)程.有效的運(yùn)行級(jí)的數(shù)值是從0到6與s.注意:由init建立的進(jìn)程以UID為0運(yùn)行(root)從/etc/inittab運(yùn)行的程序也作為root運(yùn)行,所以系統(tǒng)管理員要確保自己知

22、道/etc/inittab中的程序做什么工作,確保這些程序以及這些程序所在的目錄直到/和/etc/inittab除root外無(wú)人可寫(xiě).文檔來(lái)自于網(wǎng)絡(luò)搜索進(jìn)入多用戶當(dāng)UNIX系統(tǒng)進(jìn)入多用戶方式時(shí),將寢化一系列事件,接著開(kāi)始執(zhí)行g(shù)ettys,允許其他用戶登錄進(jìn)入系統(tǒng).如果再看看/etc/inittab文件,會(huì)看到gettys定義在運(yùn)行級(jí)2,至少三個(gè)shell程序/etc/brc,/etc/bcheckrc,/etc/rc*也定義在運(yùn)行級(jí)2.這些程序都在gettys啟動(dòng)前運(yùn)行.這些shell程序作為root運(yùn)行,也不能僅對(duì)root可寫(xiě)還應(yīng)當(dāng)檢查shell程序運(yùn)行的命令,因?yàn)檫@些命令也將作為root運(yùn)

23、行.文檔來(lái)自于網(wǎng)絡(luò)搜索shutdown命令用shutdown命令關(guān)系統(tǒng),shutdownshell程序發(fā)送警告通知所有用戶離開(kāi)系統(tǒng),在”給定的期限時(shí)間"到了后,就終止進(jìn)程,拆卸文件系統(tǒng),進(jìn)入單用戶方式或關(guān)機(jī)狀態(tài).一旦進(jìn)入單用戶方式,所有的gettys停止運(yùn)行,用戶再不能登錄.進(jìn)入關(guān)機(jī)狀態(tài)后可將系統(tǒng)關(guān)電.shutdown僅能由作為root登錄的用戶從系統(tǒng)控制臺(tái)上運(yùn)行.所以任何的shutdown運(yùn)行的命令僅能對(duì)root可寫(xiě).文檔來(lái)自于網(wǎng)絡(luò)搜索系統(tǒng)V的cron程序cron在UNIX系統(tǒng)是多用戶方式時(shí)運(yùn)行,根據(jù)規(guī)定的時(shí)間安排執(zhí)行指定的命令,每隔一分鐘檢查一次文件/usr/lib/cronta

24、b,尋找是否有應(yīng)當(dāng)運(yùn)行的程序?如果找到要運(yùn)行的程序,就運(yùn)行該程序,否則睡眠等待一分鐘.實(shí)際的/usr/lib/crontab用于根據(jù)全大的規(guī)則時(shí)間表運(yùn)行程序,也可在夜晚運(yùn)行白天不愿運(yùn)行怕降低其他用戶速度的程序.通常由cron運(yùn)行的程序是如記帳,存文件這樣的程序.cron一般在系統(tǒng)進(jìn)入多用戶后由/etc/rc啟動(dòng),當(dāng)shutdown運(yùn)行killall命令時(shí)便終止運(yùn)行.由cron運(yùn)行的程序作為root,所以應(yīng)當(dāng)注意放什么程序在crontab中,還要確保/usr/lib/crontab和該表中列出的任何程序?qū)θ魏稳瞬豢蓪?xiě).如果用戶需要由cron執(zhí)行一個(gè)程序,系統(tǒng)管理員可用su命令在crontab表中

25、建立一個(gè)入口,使用戶的程序不能獲得root的權(quán)限.文檔來(lái)自于網(wǎng)絡(luò)搜索系統(tǒng)V版本2之后的cron程序在系統(tǒng)V版本2中,cron被修改成允許用戶建立自己的crontab入口,/usr/lib/crontab文件不再存在,由目錄/usr/spool/cron/crontabs中的文件代替.這些文件的格式與crontab相同,但每個(gè)文件與系統(tǒng)中的一個(gè)用戶對(duì)應(yīng),并以某用戶的名義由cron運(yùn)行.如果想限制能建立crontab的用戶,可在文件/usr/lib/cron/cron.allow文件中列出允許運(yùn)行crontab命令的用戶.任何未列于該文件的用戶不能運(yùn)行crontab.反之,若更愿意列出不允許運(yùn)行c

26、rontab命令的用戶,則可將他們列入/usr/lib/cron/cron.deny文件中,未列于該文件的其他用戶將被允許建立crontab.注意:若兩個(gè)文件都存在,系統(tǒng)將使用cron.allow,忽略cron.deny.如果兩個(gè)文件都不存在則只有root可運(yùn)行crontab.所以,若要允許系統(tǒng)中的所有用戶都可運(yùn)行crontab命令,應(yīng)當(dāng)建立一個(gè)空的cron.deny文件,如果cron.allow也存在,則刪除該文件.這個(gè)版本的cron命令的安全程度比前一個(gè)高,因?yàn)橛脩糁荒芸醋约旱腸rontab,系統(tǒng)管理員也不必?fù)?dān)心其他用戶的程序是否會(huì)作為root運(yùn)行,由于允許每個(gè)系統(tǒng)登錄用戶有自己的cron

27、tab,也簡(jiǎn)化了對(duì)程序必須由cron運(yùn)行,但不必作為root運(yùn)行的系統(tǒng)程序的處理.必須確保root的crontab文件僅對(duì)root可寫(xiě),并且該文件所在的目錄及所有的父目錄也僅對(duì)root可寫(xiě).文檔來(lái)自于網(wǎng)絡(luò)搜索/etc/profile每當(dāng)用戶(包括root在內(nèi))登錄時(shí),由shell執(zhí)行/etc/profile文件,應(yīng)確保這個(gè)文件以及從這個(gè)文件運(yùn)行的程序和命令都僅對(duì)root可寫(xiě).文檔來(lái)自于網(wǎng)絡(luò)搜索/etc/passwd文件/etc/passwd文件是UNIX安全的關(guān)鍵文件之一.該文件用于用戶登錄時(shí)校驗(yàn)用戶的口令,當(dāng)然應(yīng)當(dāng)僅對(duì)root可寫(xiě).文件中每行的一般格式為:LOGNAME:PASSWORD:U

28、ID:GID:USERINFO:HOME:SHELL亍的頭兩項(xiàng)是登錄名和加密后的口令,后面的兩個(gè)數(shù)是UID和GID,接著的一項(xiàng)是系統(tǒng)管理員想寫(xiě)入的有關(guān)該用戶的任何信息最后兩項(xiàng)是兩個(gè)路徑名:一個(gè)是分配給用戶的HOM®錄,第二個(gè)是用戶登錄后將執(zhí)行的shell(若為空格則缺省為/bin/sh).文檔來(lái)自于網(wǎng)絡(luò)搜索口令時(shí)效/etc/passwd文件的格式使系統(tǒng)管理員能要求用戶定期地改變他們的口令.在口令文件中可以看到,有些加密后的口令有逗號(hào),逗號(hào)后有幾個(gè)字符和一個(gè)冒號(hào).如:steve:xyDfccTrt180x,M.y8:0:0:admin:/:/bin/shrestrict:pomJk10

29、9Jky41,.1:0:0:admin:/:/bin/shpat:xmotTVoyumjls:0:0:admin:/:/bin/sh可以看到,steve的口令逗號(hào)后有4個(gè)字符,restrict有2個(gè),pat沒(méi)有逗號(hào).逗號(hào)后第一個(gè)字符是口令有效期的最大周數(shù),第二個(gè)字符決定了用戶再次修改口信之前,原口令應(yīng)使用的最小周數(shù)(這就防止了用戶改了新口令后立刻又改回成老口令).其余字符表明口令最新修改時(shí)間.要能讀懂口令中逗號(hào)后的信息,必須首先知道如何用passwd_esc計(jì)數(shù),計(jì)數(shù)的方法是:.=0/=10-9=2-11A-Z=12-37a-z=38-63系統(tǒng)管理員必須將前兩個(gè)字符放進(jìn)/etc/passwd文

30、件,以要求用戶定期的修改口令,另外兩個(gè)字符當(dāng)用戶修改口令時(shí),由passwd命令填入.注意:若想讓用戶修改口令,可在最后一次口令被修改時(shí),放兩個(gè)".",則下一次用戶登錄時(shí)將被要求修改自己的口令.有兩種特殊情況:.最大周數(shù)(第一個(gè)字符)小于最小周數(shù)(第二個(gè)字符),則不允許用戶修改口令,僅超級(jí)用戶可以修改用戶的口令.第一個(gè)字符和第二個(gè)字符都是".",這時(shí)用戶下次登錄時(shí)被要求修改口令,修改口令后,passwd命令將”.”刪除,此后再不會(huì)要求用戶修改口令.文檔來(lái)自于網(wǎng)絡(luò)搜索UID和GID/etc/passwd中UID信息很重要,系統(tǒng)使用UID而不是登錄名區(qū)別用戶.

31、一般來(lái)說(shuō),用戶的UID應(yīng)當(dāng)是獨(dú)一無(wú)二的,其他用戶不應(yīng)當(dāng)有相同的UID數(shù)值.根據(jù)慣例,從0到99的UID保留用作系統(tǒng)用戶的UID(root,bin,uucp等).如果在/etc/passwd文件中有兩個(gè)不同的入口項(xiàng)有相同的UID,則這兩個(gè)用戶對(duì)相互的文件具有相同的存取權(quán)限.文檔來(lái)自于網(wǎng)絡(luò)搜索5. /etc/group文件/etc/group文件含有關(guān)于小組的信息,/etc/passwd中的每個(gè)GID在本文件中應(yīng)當(dāng)有相應(yīng)的入口項(xiàng),入口項(xiàng)中列出了小組名和小組中的用戶.這樣可方便地了解每個(gè)小組的用戶,否則必須根據(jù)GID在/etc/passwd文件中從頭至尾地尋找同組用戶./etc/group文件對(duì)小組

32、的許可權(quán)限的控制并不是必要的,因?yàn)橄到y(tǒng)用UID,GID(取自/etc/passwd)決定文件存取權(quán)限,即使/etc/group文件不存在于系統(tǒng)中,具有相同的GID用戶也可以小組的存取許可權(quán)限共享文件.小組就像登錄用戶一樣可以有口令.如果/etc/group文件入口項(xiàng)的第二個(gè)域?yàn)榉强?,則將被認(rèn)為是加密口令,newgrp命令將要求用戶給出口令,然后將口令加密,再與該域的加密口令比較.給小組建立口令一般不是個(gè)好作法.第一,如果小組內(nèi)共享文件,若有某人猜著小組口令,則該組的所有用戶的文件就可能泄漏;其次,管理小組口令很費(fèi)事,因?yàn)閷?duì)于小組沒(méi)有類似的passwd命令.可用/usr/lib/makekey生

33、成一個(gè)口令寫(xiě)入/etc/group.以下情況必須建立新組:(1) 可能要增加新用戶,該用戶不屬于任何一個(gè)現(xiàn)有的小組.有的用戶可能時(shí)常需要獨(dú)自為一個(gè)小組有的用戶可能有一個(gè)SGID程序,需要獨(dú)自為一個(gè)小組.(4)有時(shí)可能要安裝運(yùn)行SGID的軟件系統(tǒng),該軟件系統(tǒng)需要建立一個(gè)新組.要增加一個(gè)新組,必須編輯該文件,為新組加一個(gè)入口項(xiàng).由于用戶登錄時(shí),系統(tǒng)從/etc/passwd文件中取GID,而不是從/etc/group中取GID,所以group文件和口令文件應(yīng)當(dāng)具有一致性.對(duì)于一個(gè)用戶的小組,UID和GID應(yīng)當(dāng)是相同的.多用戶小組的GID應(yīng)當(dāng)不同于任何用戶的UID,一般為5位數(shù),這樣在查看/etc/p

34、asswd文件時(shí),就可根據(jù)5位數(shù)據(jù)的GID識(shí)別多用戶小組,這將減少增加新組,新用戶時(shí)可能產(chǎn)生的混淆.文檔來(lái)自于網(wǎng)絡(luò)搜索6. 增加,刪除,移走用戶(1)增加用戶增加用戶有三個(gè)過(guò)程:.在/etc/passwd文件中寫(xiě)入新用戶的入口項(xiàng).為新登錄用戶建立一個(gè)HOM曰錄.在/etc/group中為新用戶增加一個(gè)入口項(xiàng).在/etc/passwd文件中寫(xiě)入新的入口項(xiàng)時(shí),口令部分可先設(shè)置為NOLOGIN以免有人做為此新用戶登錄.在修改文件前,應(yīng)mkdir/etc/ptmp,以免他人同時(shí)修改此文件.新用戶一般獨(dú)立為一個(gè)新組,GID號(hào)與UID號(hào)相同(除非他要加入目前已存在的一個(gè)新組),UID號(hào)必須和其他人不同,H

35、OMES錄一般設(shè)置在/usr或/home目錄下建立一個(gè)以用戶登錄名為名稱的目錄做為其主目錄.文檔來(lái)自于網(wǎng)絡(luò)搜索(2)刪除用戶刪除用戶與加用戶的工作正好相反,首先在/etc/passwd和/etc/group文件中刪除用戶的入口項(xiàng),然后刪除用戶的HOMIg錄和所有文件.rm-r/usr/loginname刪除整個(gè)目錄樹(shù).如果用戶在/usr/spool/cron/crontabs中有crontab文件,也應(yīng)當(dāng)刪除.文檔來(lái)自于網(wǎng)絡(luò)搜索將用戶移到另一個(gè)系統(tǒng)這是一個(gè)復(fù)雜的問(wèn)題,不只是拷貝用戶的文件和用戶在/etc/passwd文件中的入口項(xiàng).首先一個(gè)問(wèn)題是用戶的UID和GID可能已經(jīng)用于另一個(gè)系統(tǒng),若是

36、出現(xiàn)這種情況,必須給要移的用戶分配另外的UID和GID,如果改變了用戶的UID和GID,則必須搜索該用戶的全部文件,將文件的原UID和GID改成新的UID和GID.用find命令可以完成這一修改:find.-userolduid-execchownnewuid(;find.-groupoldgid-execchgrpnewgid(;也許還要為用戶移走其它一些文件:/usr/mail/user和/usr/spool/cron/crontabs/user.如果用戶從一個(gè)不是本系統(tǒng)管理員的系統(tǒng)移來(lái),則應(yīng)對(duì)該用戶的目錄結(jié)構(gòu)運(yùn)行程序來(lái)檢查.一個(gè)不安全系統(tǒng)的用戶,可能有與該用戶其它文件存在一起的SUID/

37、SGID程序,而這個(gè)SUID/SGID程序?qū)儆诹硪粋€(gè)用戶.在這種情況下,如果用cpio或tar命令將用戶的目錄結(jié)構(gòu)拷貝到本系統(tǒng),SUID/SGID程序也將會(huì)拷貝到本系統(tǒng)而沒(méi)有任何警告信息.應(yīng)當(dāng)在允許用戶使用新系統(tǒng)以前先刪除這種文件的SUID/SGID許可.總之,始終堅(jiān)持檢查所移用戶的文件總是更安全些.也可以用su命令進(jìn)入用戶的戶頭,再拷貝用戶文件,這樣文件的所有者就是該用戶,而不是root.文檔來(lái)自于網(wǎng)絡(luò)搜索7. 安全檢查像find和secure這樣的程序稱為檢查程序,它們搜索文件系統(tǒng),尋找出SUID/SGID文件,設(shè)備文件,任何人可寫(xiě)的系統(tǒng)文件,設(shè)有口令的登錄用戶,具有相同UID/GID的用

38、戶等等.文檔來(lái)自于網(wǎng)絡(luò)搜索(1)記帳UNIX記帳軟件包可用作安全檢查工具,除最后登錄時(shí)間的記錄外,記帳系統(tǒng)還能保存全大運(yùn)行的所有進(jìn)程的完整記錄,對(duì)于一個(gè)進(jìn)程所存貯的信息包括UID,命令名,進(jìn)程開(kāi)始執(zhí)行與結(jié)束的時(shí)間,CPU時(shí)間和實(shí)際消耗的時(shí)間,該進(jìn)程是否是root進(jìn)程,這將有助于系統(tǒng)管理員了解系統(tǒng)中的用戶在干什么.acctcom命令可以列出一天的帳目表.有明,系統(tǒng)中有多個(gè)記帳數(shù)據(jù)文件,記帳信息保存在文件/usr/adm/pacct*中,/usr/adm/pacct是當(dāng)前記錄文件,/usr/adm/pacctn是以前的記帳文件(n為整型數(shù)).若有若干個(gè)記帳文件要查看,可在acctcom命令中指定文

39、件名:acctcom/usr/adm/pacct?/usr/adm/pacct要檢查的問(wèn)題的其中之一是:在acctcom的輸出中查找一個(gè)用戶過(guò)多的登錄過(guò)程,若有,則說(shuō)明可能有人一遍遍地嘗試登錄,猜測(cè)口令,企圖非法進(jìn)入系統(tǒng).此外,還應(yīng)查看root進(jìn)程,除了系統(tǒng)管理員用su命令從終端進(jìn)入root,系統(tǒng)啟動(dòng),系統(tǒng)停止時(shí)間,以及由init(通常init只啟動(dòng)getty,login,登錄shell),cron啟動(dòng)的進(jìn)程和具有rootSUID許可的命令外,不應(yīng)當(dāng)有任何root進(jìn)程.由記帳系統(tǒng)也可獲得有關(guān)每個(gè)用戶的CPUJ用率,運(yùn)行的進(jìn)程數(shù)等統(tǒng)計(jì)數(shù)據(jù).文檔來(lái)自于網(wǎng)絡(luò)搜索(2)其它檢查命令*du:報(bào)告在層次目

40、錄結(jié)構(gòu)(當(dāng)前工作目錄或指定目錄起)中各目錄占用的磁盤(pán)塊數(shù).可用于檢查用戶對(duì)文件系統(tǒng)的使用情況.可用于合理調(diào)整磁盤(pán)空間的使用和管理.對(duì)于用了大量CPU時(shí)間的進(jìn)程,同時(shí)運(yùn)行了許CPU寸間的用戶進(jìn)程應(yīng)當(dāng)深入檢查.還可以查出,未注銷(xiāo)戶頭就關(guān)終端的用戶(一般發(fā)生在直接連*df:報(bào)告整個(gè)文件系統(tǒng)當(dāng)前的空間使用情況*ps:檢查當(dāng)前系統(tǒng)中正在運(yùn)行的所有進(jìn)程多進(jìn)程的用戶,運(yùn)行了很長(zhǎng)時(shí)間但用了很少運(yùn)行了一個(gè)無(wú)限制循環(huán)的后臺(tái)進(jìn)程的用戶線的終端).,檢查用戶的登錄時(shí)間,登錄*who:可以告訴系統(tǒng)管理員系統(tǒng)中工作的進(jìn)展情況等等許多信息終端.*su:每當(dāng)用戶試圖使用su命令進(jìn)入系統(tǒng)用戶時(shí),命令將在/usr/adm/sul

41、og文件中寫(xiě)一條信息,若該文件記錄了大量試圖用su進(jìn)入root的無(wú)效操作信息,則表明了可能有人企圖破譯root口令.*login:在一些系統(tǒng)中,login程序記錄了無(wú)效的登錄企圖(若本系統(tǒng)的login程序不做這項(xiàng)工作而系統(tǒng)中有l(wèi)ogin源程序,則應(yīng)修改login).每天總有少量的無(wú)效登錄,若無(wú)效登錄的次數(shù)突然增加了兩倍,則表明可能有人企圖通過(guò)猜測(cè)登錄名和口令,非法進(jìn)入系統(tǒng).文檔來(lái)自于網(wǎng)絡(luò)搜索(3)安全檢查程序的問(wèn)題關(guān)于以上的檢查方法的一個(gè)警告,若有誘騙,則這些方法中沒(méi)有幾個(gè)能防誘騙.如find命令,如果碰到路徑名長(zhǎng)于256個(gè)字符的文件或含有多于200個(gè)文件的目錄,將放棄處理該文件或目錄,用戶就

42、有可能利用建立多層目錄結(jié)構(gòu)或大目錄隱藏SUID程序,使其逃避檢查(但find命令會(huì)給出一個(gè)錯(cuò)誤信息,系統(tǒng)管理員應(yīng)手工檢查這些目錄和文件).也可用ncheck命令搜索文件系統(tǒng),但它沒(méi)有find命令指定搜索哪種文件的功能.如果定期存取.profile文件,則檢查久未登錄用戶的方法就不奏效了.而用戶用su命令時(shí),除非用參數(shù)-,否則su不讀用戶的.profile.有三種方法可尋找久未登錄的帳戶:.UNIX記帳系統(tǒng)在文件/usr/adm/acct/sum/login中為每個(gè)用戶保留了最后一次登錄日期.用這個(gè)文件的好處是,該文件由系統(tǒng)維護(hù),所以可完全肯定登錄日期是準(zhǔn)確的.缺點(diǎn)是必須在系統(tǒng)上運(yùn)行記帳程序以更

43、新loginlog文件,如果在清晨(午夜后)運(yùn)行記帳程序,一天的登錄日期可能就被清除了./etc/passwd文件中的口令時(shí)效域?qū)⒛芨嬖V系統(tǒng)管理員,用戶的口令是否過(guò)期了,若過(guò)期,則意味著自過(guò)期以來(lái),戶頭再未被用過(guò).這一方法的好處在于系統(tǒng)記錄了久未用的戶頭,檢查過(guò)程簡(jiǎn)單,且不需要記帳系統(tǒng)所需要的磁盤(pán)資源,缺點(diǎn)是也許系統(tǒng)管理員不想在系統(tǒng)上設(shè)置口令時(shí)效,而且這一方法僅在口令的最大有效期(只有幾周)才是準(zhǔn)確的.系統(tǒng)管理員可以寫(xiě)一個(gè)程序,每天(和重新引導(dǎo)系統(tǒng)時(shí))掃描/etc/wtmp,自己保留下用戶最后登錄時(shí)間記錄,這一方法的好處是不需要記帳程序,并且時(shí)間準(zhǔn)確,缺點(diǎn)是要自己寫(xiě)程序.以上任何方法都可和/u

44、sr/adm/sulog文件結(jié)合起來(lái),查出由login或su登錄戶頭的最后登錄時(shí)間.如果有人存心破壞系統(tǒng)安全,第一件要做的事就是尋找檢查程序.破壞者將修改檢查程序,使其不能報(bào)告任何異常事件,也可能停止系統(tǒng)記帳,刪除記帳文件,使系統(tǒng)管理員不能發(fā)現(xiàn)破壞者干了些什么.這里最重要的一點(diǎn)是:系統(tǒng)管理沒(méi)越熟悉自己的用戶和用戶的工作習(xí)慣,就越能快速發(fā)現(xiàn)系統(tǒng)中任何不尋常的事件,而不尋常的事件意味著系統(tǒng)已被人竊密文檔來(lái)自于網(wǎng)絡(luò)搜索(4)系統(tǒng)泄密后怎么辦?發(fā)現(xiàn)有人已經(jīng)破壞了系統(tǒng)安全的時(shí)候,這時(shí)系統(tǒng)管理員首先應(yīng)做的是面對(duì)肇事用戶.如果該用戶所做的事不是蓄意的,而且公司沒(méi)有關(guān)于"破壞安全"的規(guī)章,

45、也未造成損壞,則系統(tǒng)管理員只需清理系統(tǒng),并留心該用戶一段時(shí)間.如果該用戶造成了某些損壞,則應(yīng)當(dāng)報(bào)告有關(guān)人士,并且應(yīng)盡可能地將系統(tǒng)恢復(fù)到原來(lái)的狀態(tài).如果肇事者是非授權(quán)用戶,那就得做最壞的假設(shè)了:肇事者已設(shè)法成為root且本系統(tǒng)的文件和程序已經(jīng)泄密了.系統(tǒng)管理員應(yīng)當(dāng)想法查出誰(shuí)是肇事者,他造成了什么損壞?還應(yīng)當(dāng)對(duì)整個(gè)文件做一次全面的檢查,并不只是檢查SUID和SGID,設(shè)備文件.如果系統(tǒng)安全被一個(gè)敵對(duì)的用戶破壞了,應(yīng)當(dāng)采用下面的步驟:.關(guān)系統(tǒng),然后重新引導(dǎo),不要進(jìn)入多用戶方式,進(jìn)入單用戶方式.安裝含有本系統(tǒng)原始UNIX版本的帶和軟盤(pán).將/bin,/usr/bin,/etc,/usr/lib中的文件拷

46、貝到一個(gè)暫存目錄中.將暫存目錄中所有文件的校驗(yàn)和(用原始版本的suM程序拷貝做校驗(yàn)和,不要用/bin中的suM程序做)與系統(tǒng)中所有對(duì)就的文件的校驗(yàn)和進(jìn)行比較,如果有任何差別要查清差別產(chǎn)生的原因.如果兩個(gè)校驗(yàn)和不同,是由于安裝了新版本的程序,確認(rèn)一相是否的確是安裝了新版本程序.如果不能找出校驗(yàn)和不同的原因,用暫存目錄中的命令替換系統(tǒng)中的原有命令.在確認(rèn)系統(tǒng)中的命令還未被竄改之前,不要用系統(tǒng)中原命令.用暫存目錄中的shell,并將PAT破置為僅在暫存目錄中搜索命令.根據(jù)暫存目錄中所有系統(tǒng)命令的存取許可,檢查系統(tǒng)中所有命令的存取許可.檢查所有系統(tǒng)目錄的存取許可,如果用了perms,檢查permlis

47、t文件是否被竄改過(guò).如果系統(tǒng)UNIX(/unix)的校驗(yàn)和不同于原版的校驗(yàn)和,并且系統(tǒng)管理員從未修改過(guò)核心,則應(yīng)當(dāng)認(rèn)為,一個(gè)非法者"很能干",從暫存緩沖區(qū)重新裝入系統(tǒng).系統(tǒng)管理員可以從逐步增加的文件系統(tǒng)備份中恢復(fù)用戶的文件,但是在檢查備份中的"有趣"文件之前,不能做文件恢復(fù).改變系統(tǒng)中的所有口令,通知用戶他們的口令已改變,應(yīng)找系統(tǒng)管理員得到新口令.當(dāng)用戶來(lái)要新口令時(shí),告訴用戶發(fā)生了一次安全事故,他們應(yīng)查看自己的文件和目錄是否潛伏著危害(如SUID文件,特洛依木馬,任何人可寫(xiě)的目錄),并報(bào)告系統(tǒng)管理員任何異乎尋常的情況.設(shè)法查清安全破壞是如何發(fā)生的?如果沒(méi)

48、有肇事者說(shuō)明,這也許是不可能弄清的.如果能發(fā)現(xiàn)肇事者如何進(jìn)入系統(tǒng),設(shè)法堵住這個(gè)安全漏洞.第一次安裝UNIX系統(tǒng)時(shí),可以將shell,sum命令,所有文件的校驗(yàn)和存放在安全的介質(zhì)上(帶,軟盤(pán),硬盤(pán)和任何可以卸下并鎖焉起來(lái)的介質(zhì)).于是不必再?gòu)脑嫦到y(tǒng)帶上重新裝入文件,可以安裝備份介質(zhì),裝入shell和sum,將存在帶上的校驗(yàn)和與系統(tǒng)中文件的校驗(yàn)和進(jìn)行比較.系統(tǒng)管理員也許想自己寫(xiě)一個(gè)計(jì)算校驗(yàn)和的程序,破壞者將不能知道該程序的算法,如果將該程序及校驗(yàn)和保存在帶上,這一方法的保密問(wèn)題就減小到一個(gè)物理的安全問(wèn)題,即只需將帶鎖起來(lái).文檔來(lái)自于網(wǎng)絡(luò)搜索8. 加限制的環(huán)境(1)加限制的shell(rsh)該s

49、hell幾乎與普通的shell相同,但是該shell的設(shè)計(jì)能限制一個(gè)用戶的能力,不允許用戶有某些標(biāo)準(zhǔn)shell所允許的行為:.不能改變工作目錄(cd).不能改變PATH或SHELLshell變量.不能使用含有"/"的命令名.不能重定向輸出(和).不能用exec執(zhí)行程序.用戶在登錄時(shí),招待.profile文件后系統(tǒng)就強(qiáng)加上了這些限制,如果用戶在.profile文件正被解釋時(shí)按了BREA凝或DELETE,該用戶將被注銷(xiāo).這些簡(jiǎn)單的限制,使用寫(xiě)受限制用戶的.profile文件的系統(tǒng)管理員可以對(duì)用戶能使用什么命令,進(jìn)行完全的控制.應(yīng)當(dāng)注意:系統(tǒng)V加限制的shell實(shí)際上不是很安全,

50、在敵對(duì)的用戶時(shí)不要用.系統(tǒng)V版本2以后的版本中加限制的shell更安全些.但若允許受限制的用戶使用某些命令(如env,cp,ln),用戶將能逃避加限制的shell,進(jìn)入非限制的shell.文檔來(lái)自于網(wǎng)絡(luò)搜索(2)用chroot()限制用戶如果的確想限制一個(gè)用戶,可用chroot()子程序?yàn)橛脩艚⒁粋€(gè)完全隔離的環(huán)境,改變了進(jìn)程對(duì)根目錄的概念,因此可用于將一個(gè)用戶封在整個(gè)文件系統(tǒng)的某一層目錄結(jié)構(gòu)中,使用戶無(wú)法用cd命令轉(zhuǎn)出該層目錄結(jié)構(gòu),不能存取文件系統(tǒng)中其余部分的任何文件.這種限制方式比加限制的shell好得多.用戶使用的命令應(yīng)由系統(tǒng)管理員在新的root目錄中建立一個(gè)bin目錄,并建立用戶可用命

51、令的鏈到系統(tǒng)的/bin目錄中相應(yīng)命令文件上(若在不同的文件系統(tǒng)則應(yīng)拷貝命令文件).還應(yīng)建立新的passwd文件,保留系統(tǒng)登錄戶頭(為了使ls-l正確地報(bào)告與受限制的子文件系統(tǒng)中的文件相關(guān)的正確登錄名)和用戶帳戶,但系統(tǒng)帳戶的口令改為NOLOGI以使受限制的用戶不能取得系統(tǒng)登錄的真實(shí)口令,使"破密"程序的任何企圖成為泡影.utmp文件是who所需要的,該文件含有系統(tǒng)中已登錄用戶的列表.新的/etc/profile文件也不是建鏈文件,以便受限制的用戶可以執(zhí)行不同的啟動(dòng)命令./dev目錄中的終端設(shè)備文件被鏈接到新的/dev目錄下,因?yàn)槊顆ho產(chǎn)生輸出時(shí)要查看這些文件.在系統(tǒng)V及

52、以后的UNIX版本中,login命令有chroot()的功能.如果口令文件中用戶入口項(xiàng)的登錄shell域(最后一個(gè)域)是*,login將調(diào)用chroot()把用戶的根目錄設(shè)置成為口令文件中用戶入口項(xiàng)登錄目錄域指定的目錄.然后再調(diào)用exec()執(zhí)行l(wèi)ogin,新的login將在新子系統(tǒng)文件中執(zhí)行該用戶的登錄.chroot()并不是把root封鎖在一個(gè)子文件系統(tǒng)中,所以給受限制用戶用的命令時(shí)應(yīng)加以考慮,具有root的SUID許可的程序可能會(huì)給予用戶root的能力.應(yīng)當(dāng)將這種可能減低到最小程度,交給用戶使用的命令應(yīng)當(dāng)取自清除了SUID陷井的系統(tǒng)命令.鏈接文件可減少磁盤(pán)占用區(qū),但要記住,當(dāng)與敵對(duì)用戶打

53、交道時(shí),鏈接到chroot目錄結(jié)構(gòu)(尤其是命令)的系統(tǒng)文件是很危險(xiǎn)的.如果建立一個(gè)像這樣的限制環(huán)境,應(yīng)確保對(duì)安裝到新的/bin的每條命令都做過(guò)測(cè)試,有些程序可能有系統(tǒng)管理員未曾想到的出乎意料的執(zhí)行結(jié)果.為了使這些命令能運(yùn)行,還得在加限制的子文件系統(tǒng)中加服務(wù)目錄或文件如:/tmp,/etc/termcap,/usr/lib/terminfo,/dev/mem,/dev/kmem,/dev/swap,用戶所登錄的/dev中的tty文件以及/unix.有些程序在子文件系統(tǒng)中運(yùn)行時(shí)不會(huì)很好,如果將假脫機(jī)程序和網(wǎng)絡(luò)命令拷貝到加限制的子文件系統(tǒng)中,并放在為兩條命令專建的目錄層結(jié)構(gòu)下,它們可能也運(yùn)行不了.文

54、檔來(lái)自于網(wǎng)絡(luò)搜索9. 小系統(tǒng)安全任何足夠小,運(yùn)行于辦公室的UNIX系統(tǒng)就是小系統(tǒng).這類小系統(tǒng)也包括所有臺(tái)式UNIX機(jī)器.根據(jù)安全觀點(diǎn),使小系統(tǒng)很特別而值得特別的有以下幾點(diǎn):.小系統(tǒng)的用戶比大系統(tǒng)的用戶少,通常是很小一組用戶,使系統(tǒng)管理員能熟悉每個(gè)人,安全問(wèn)題可以直接地面對(duì)面處理.由于小UNIX系統(tǒng)管理更簡(jiǎn)單,可能只需要一個(gè)系統(tǒng)管理員,因而維護(hù)系統(tǒng)安全的責(zé)任只有一個(gè)人擔(dān)負(fù).如果既是用戶又是系統(tǒng)管理員,將不能花大量時(shí)間考慮系統(tǒng)安全.如果自己擁有系統(tǒng)并且是系統(tǒng)管理員,就可能有權(quán)直接將違反規(guī)的用戶從系統(tǒng)中刪除,而沒(méi)有幾個(gè)大系統(tǒng)的管理員能有這種權(quán)利.如果自己是系統(tǒng)的唯一用戶,則將既是用戶又是管理員,維護(hù)

55、系統(tǒng)安全的任務(wù)就很簡(jiǎn)單了,只須確保系統(tǒng)中所有登錄戶頭的口令是好的.如果不能將系統(tǒng)鎖起來(lái),就把敏感的數(shù)據(jù)存放在軟盤(pán)上,把軟盤(pán)鎖起來(lái).即使系統(tǒng)中有若干個(gè)用戶,但如果系統(tǒng)的終端之產(chǎn)是有線連接,并且用戶們保持門(mén)上鎖,則系統(tǒng)也將是安全的,至少在本組用戶內(nèi)是安全的.小系統(tǒng)通常有可移動(dòng)的介質(zhì)(軟盤(pán)),可用mount命令將其安裝到系統(tǒng)上,提供一種安全的方法讓用戶自己在系統(tǒng)上安裝軟盤(pán),否則系統(tǒng)管理員要一天到晚地干這些瑣碎的安裝盤(pán)事務(wù).允許用戶安裝軟盤(pán)的通常做法是給用戶一個(gè)SUID程序,該程序基本完成與系統(tǒng)管理員安裝用戶軟盤(pán)同樣的操作,首先檢查軟盤(pán)上有無(wú)SUID/SGID/設(shè)備文件,若發(fā)現(xiàn)任何奇怪的文件則拒絕安裝

56、該軟盤(pán).當(dāng)小系統(tǒng)開(kāi)電源后,系統(tǒng)一般在從硬盤(pán)引導(dǎo)以前,先試圖從軟盤(pán)引導(dǎo).這就意味著計(jì)算機(jī)將首先試圖從軟盤(pán)裝入程序,若軟盤(pán)不在驅(qū)動(dòng)器中,系統(tǒng)將從硬盤(pán)裝入U(xiǎn)NIX內(nèi)核.軟盤(pán)幾乎可以含有任何程序,包括在控制臺(tái)啟動(dòng)rootshell的UNIX系統(tǒng)版本.如果破壞者有一把螺絲起子和有關(guān)系統(tǒng)內(nèi)部的一些知識(shí),則即便系統(tǒng)有被認(rèn)為防止安全事故發(fā)生的特殊"微碼"口令,也可能被誘騙去從軟盤(pán)引導(dǎo).即使小系統(tǒng)晚上不鎖,凡從不將個(gè)人的或秘密的信息存放在大系統(tǒng)上的人他們不可能認(rèn)識(shí)所有系統(tǒng)上的用戶),也不會(huì)想把這樣的信息存放在小系統(tǒng)上.小系統(tǒng)的系統(tǒng)管理員在使用UNIX系統(tǒng)方面常不如大系統(tǒng)管理員有經(jīng)驗(yàn),而安全地

57、管理系統(tǒng)需要一定的使用系統(tǒng)的知識(shí).文檔來(lái)自于網(wǎng)絡(luò)搜索10. 物理安全對(duì)于運(yùn)行任何操作系統(tǒng)的小型或大型計(jì)算機(jī),物理安全都是一個(gè)要考慮的重要問(wèn)題,物理安全包括:鎖上放置計(jì)算機(jī)的屋子,報(bào)警系統(tǒng),警衛(wèi),所有安置在不能上鎖的地方的通訊設(shè)施,包括有線通訊線,電話線,局域網(wǎng),遠(yuǎn)程網(wǎng),應(yīng)答MODEM!匙或信用卡識(shí)別設(shè)備,給用戶的口令和鑰匙分配,任何前置通訊設(shè)施的加密裝置,文件保護(hù),備份或恢復(fù)方案(稱為安全保險(xiǎn)方案,用作應(yīng)付偶然的或蓄意的數(shù)據(jù)或計(jì)算設(shè)備被破壞的情況),上鎖的輸出仃,上鎖的廢物箱和碎紙機(jī).物理安全中所飲食的總考慮應(yīng)是:在安全方案上所付出的代價(jià)不應(yīng)當(dāng)多于值得保護(hù)的(硬件或軟件的)價(jià)值.下面著重討論保

58、護(hù)用戶的各種通訊線.對(duì)于任何可在不上鎖的地方存取的系統(tǒng),通訊是特別嚴(yán)重的安全薄弱環(huán)節(jié).當(dāng)允許用戶通過(guò)掛到地方電話公司的撥號(hào)MODEM取系統(tǒng)時(shí),系統(tǒng)的安全程度就將大大地削弱,有電話和MODEM)任何人就可能非法進(jìn)入該系統(tǒng).應(yīng)當(dāng)避免這一情況,要確保MODE的電話號(hào)碼不被列于電話薄上,并且最好將電話號(hào)碼放在不同于本公司普通電話號(hào)碼所在的交換機(jī)上.總之,不要假設(shè)沒(méi)人知道自己的撥入號(hào)碼!大多數(shù)家庭計(jì)算機(jī)都能編程用一個(gè)MODE麋大地依次調(diào)用撥號(hào)碼,記錄下連接上其它MODEM號(hào)碼.如果可能,安裝一個(gè)局域PBX,使得對(duì)外界的撥號(hào)產(chǎn)生一秒鐘的撥號(hào)蜂音,并且必須輸入一個(gè)與MODE機(jī)關(guān)聯(lián)的擴(kuò)展號(hào)碼.文檔來(lái)自于網(wǎng)絡(luò)搜

59、索11. 用戶意識(shí)UNIX系統(tǒng)管理員的職責(zé)之一是保證用戶安全.這其中一部分工作是由用戶的管理部門(mén)來(lái)完成,但是作為系統(tǒng)管理員,有責(zé)任發(fā)現(xiàn)和報(bào)告系統(tǒng)的安全問(wèn)題,因?yàn)橄到y(tǒng)管理員負(fù)責(zé)系統(tǒng)的運(yùn)行.避免系統(tǒng)安全事故的方法是預(yù)防性的,當(dāng)用戶登錄時(shí),其shell在給出提示前先執(zhí)行/etc/profile文件,要確保該文件中的PATW旨定最后搜索當(dāng)前工作目錄,這樣將減少用戶能運(yùn)行特洛依木馬的機(jī)會(huì).將文件建立屏蔽值的設(shè)置放在該文件中也是很合適的,可將其值設(shè)置成至少將防止用戶無(wú)意中建立任何人都能寫(xiě)的文件(022/026).要小心選擇此值,如果限制太嚴(yán),則用戶會(huì)在自己的.profile中重新調(diào)用umask以抵制系統(tǒng)管理員的意愿,如果用戶大量使用小組權(quán)限共享文件,系統(tǒng)管理員就一要設(shè)置限制小組存取權(quán)限的屏蔽值.系統(tǒng)管理員必須建立系統(tǒng)安全和用戶的"痛苦量"間的平衡(痛苦量是安全限制引起的憤怒的函數(shù))定期地用grep命令查看用戶.profile文件中的戶痛苦極

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論