SCO UNIX網路安全管理 (轉)

worldblog發表於2007-12-07
SCO UNIX網路安全管理 (轉)[@more@]

管理 編者按 1998年10月13日,步嫌襲擊銀行網路的江蘇兩兄弟被捕。今年9月,他們在聯網的銀行終端上了控制裝置,透過製造假帳從銀行竊取了近20萬元人民幣。 據有關資料顯示,近兩年內,中國的網路受到了近200個 有意識的襲擊。網路遭到已經不僅僅是從報刊文摘中讀到的外國神話,而是真真切切地存在於我們生活中的現實。維護網路的安全性已經具有越來越重要的現實意義,下面這篇文章介紹了在sco unix 上進行安全管理的一些具體設定,也是一些專業書籍中很少涉及到的,具有很強的實用價值。 金融業務大部分以UNIX或XENIX為平臺,以 為網路平臺。雖然UNIX安全已達到美國國防部的C2級安全標準,是一個相對安全、嚴密的系統,但也並非無懈可擊。電腦駭客多種、證券網路系統的新聞再次敲響金融網路安全管理的警鐘。如何加強UNIX網路系統的安全性管理,筆者以SCO UNIX3.2.v4.2為例,提幾點看法,與廣大同仁商榷。 這裡所說的安全性,主要指透過防止本機或本網被侵入、訪問,從而達到保護本系統可靠、正常執行的目的,本文只在此範圍內討論,對其他方面不予考慮。 一、抓好網內主機的管理是網路安全管理的前提 名和密碼管理永遠是管理中最重要的環節之一,對網路的任何攻擊,都不可能沒有合法的使用者名稱和密碼(後臺網路應用 開例外)。但目前絕大部分員只注重對特權使用者的管理,而忽視對普通使用者的管理。主要表現在設定使用者時圖省事方便,胡亂設定使用者的(id)、組別(group)和許可權,為非法使用者竊取資訊和破壞系統留下了空隙。 金融系統UNIX的使用者都是終端使用者,他們只需在具體的應用系統中工作,完成某些固定的任務,一般情況下不需系統命令()。以農業銀行全國電子匯兌為例,使用者名稱為dzhd,它在/etc/passwd 檔案中描述如下: dzhd:x:200:50: :/usr/dzhd:/bin/sh 它的.profile內容大致如下: COBSW=+R+N+Q-10 DD_PRINTER=“1p-s” PATH=/etc:/bin:/usr/bin:$HOME/bin:/usr/dzhd/obj: =/usr/spool/mail/logname umask 007 eval`test -m ansi:ansi -m:?ansi -c -s -Q` export PATH MAIL COBSW DD_PRINTER cd usr/dzhd/obj runx hdg exit 使用者正常登入後,如果按下中斷鍵“delete”,關掉終端電源,或同時鍵入“Ctrl”“”,那麼使用者將進入shell命令狀態。例如他可以在自己的目錄不斷建立子目錄而耗盡系統的I節點號、或用yes>aa 建立一個其大無比的垃圾檔案而耗盡空間等導致系統的崩潰、癱瘓;如果檔案系統的許可權設定不嚴密,他可執行、窺視甚至修改它;還可透過su等命令竊取更高的許可權;還可登入到其它主機上去搗亂…… 令你防不勝防,危險性可想而知。這一些問題都與使用者設定有關。所以,儘量不要把使用者設定成上述形式。如果必須這樣,可根據實際需要,看看能否把使用者的sh變成受限sh,如rsh等,變成如下形式: dzhd:x:200:50: :/usr/dzhd/obj:/bin/rsh 或如下形式: dzhd:x:200:50: :/usr/dzhd:./main 在main(.porfile)首部增加如下一行: trap' ' 0 1 2 3 5 15 那麼上述一切問題都可避免。 此外定期檢查你的/etc/passwd檔案,看看是否有來歷不明的使用者和使用者的許可權;定期修改使用者密碼,特別是uucp、bin等不常用的使用者的密碼,以防有人在此開個活動的天窗--一個可自由進出的使用者;刪除所有睡眠使用者等。 二、設定好自己的網路環境是阻止非法訪問的有效途徑 網上訪問的常用工具有、、rlogin、rcp、rcmd等網路操作命令,對它們的使用必須加以限制。最簡單的方法是修改/etc/services 中相應的服務埠號。但這樣做會使網外的一切訪問都被拒絕,即使是否法訪問也不例外。這種閉關自守的做法不值得提倡,因為這樣會使本網和網外隔絕開,也會給自己帶來不便。透過對UNIXt系統的分析,我們認為有可能做到有條件限制(允許)網上訪問。 (1)建立etc/ftpusers檔案(不受歡迎的ftp使用者表)。與之相關的命令是ftp。如下: #使用者名稱 dgxt dzhd … 以上都是本機內的一些使用者,侵入者使用以上使用者名稱ftp訪問本網會被拒之門外。 (2)注意儲存好.netrc檔案(遠端註冊資料檔案)。與之有關的命令是ftp。.netrc包含註冊到網路上用ftp作檔案轉移的遠端主機的資料。通常駐留在使用者當前目錄中,檔案許可權必須為0600。格式如下: machine對方主機名login對方主機內使用者名稱pass對方使用者密碼macdef init ftp的操作命令集。 (3)建立匿名ftp。所謂匿名ftp,是指其他主機的使用者能以ftp 或anonymous使用者進行資料收發而不要任何密碼。建立方法如下: a)用sysadmsh建立ftp使用者,在passwd檔案表示為: ftp:x:210:50: :/usr/ftp:/bin/sh .profile中的路徑為: PATH=$HOME/bin:$HOME/etc b)在/usr/ftp目錄: #建立匿名ftp所用的目錄 #mkdir bin etc dev pub shlib #改變pub以外所有目錄許可權 #chmod 0555 bin etc dev shlib #改變pub目錄的所有者和同組者 #chown ftp pub #chgrp ftp pub #複製匿名ftp所執行檔案 #cp/bin/rsh/bin/pwd/bin/1s bin #改變所需執行檔案許可權 #chmod 011 bin/* #檢視所需偽裝置的情況 #1/dev/socksys #1/dev/null #建立所需偽裝置的程度 #cd/usr/ftp/dev #mkond null c 4 2 #mkond socksys c 26 0 #改變偽裝置驅動程式的所有者、同組者 #chown ftp ftp/* #chgrp ftp ftp/* #複製共享檔案 #cp/shlib/ilbe_s shlib 注意不要複製/etc/passwd、/etc/proup到etc下,這樣對安全具有潛在的威脅。此外給ftp使用者加上密碼,不要告訴其他任何人。 (4)限制.rhosts使用者等價檔案(又叫受託使用者檔案)。與之有關命令有rlogin、rcp、rcmd等。 所謂使用者等價,就是使用者不用輸入密碼,即可以相同的使用者資訊登入到另一臺主機中。使用者等價的檔名為.rhosts,存放在根下或使用者主目錄下。它的形式如下: #主機名 使用者名稱 ash020000 ash020001 dgxt … 如果使用者名稱為空,是所有使用者均等價。 (5)限制hosts.equiv主機等價檔案,又叫受託主機檔案。有關的命令為rlogin、rcp、rcmd等。主機等價類似於使用者等價,在兩臺計算機除根目錄外的所有區域有效,主機等價檔案為hosts.equiv,存放在/etc下,它的形式如下: #主機名 使用者名稱 ash020000 ash020001 … 當遠端使用ftp訪問本系統時,UNIX系統首先驗證使用者名稱和密碼,無誤後檢視ftpusers檔案,一旦其中包含登入所用使用者名稱則自動拒絕連線,從而達到限制作用。因此我們只要把本機內除匿名ftp以外的所有使用者列入ftpusers檔案中,即使入者獲得本機內正確的使用者資訊,無法登入系統。需對外發布的資訊,放到/usr/ftp/bub下,讓遠方透過匿名ftp獲取。使用匿名ftp,不需密碼,不會對本機系統的安全構成威脅,因為它無法改變目錄,也就無法獲得本機內的其他資訊。使用.netrc配置,需注意保密,防止洩露其他相關主機的資訊。 使用使用者等價和主機等機這類訪問,使用者可以不用口令而像其他有效使用者一樣登入到遠端系統,遠端使用者可使用rlogin直接登入而不需密碼,還可使用rcp命令向或從本地主機複製檔案,也可使用rcmd 遠端執行本機的命令等。因此主種訪問具有嚴重的不安全性,必須嚴格控制或在非常可靠的環境下使用。1998年美國發現的著名的“” ,由一個叫英爾(morris)的年青人編寫的,在Internet網上流傳開,造成許多UNIX系統的癱瘓,損失達數億美元,其重要的傳播手段之一就是利用了使用者等價和主機等價的配置。慎重使用(最好不用)和經常檢查上述檔案,會有效加強系統安全。 UNIX系統沒有直接提供對telnet的控制。但我們知道,/etc/profile 是系統預設shell變數檔案,所有使用者登入時必須首先執行它。如果我們在該檔案首部增加如下幾條shell命令: #設定中斷變數 trap' ' 0 1 2 3 4 5 15 umask 022 #獲取登入終端名 dc=“'who am i |awk‘[prin $2]’`” #檢查是否受限 grep $de /etc default/aaa >dev/null 2>&1 #如果受限 if [$?=“0”] then echo“請輸入密碼:c” read abc #獲取正確密碼 dd=“grep root /etc/edfault/aaa|awk’[pint $2]’`” #非法使用者發出警告資訊到主控臺 法[“$abc”!=$dd] then echo “非法使用者!” echo“有非法使用者試圖登入!”>tev/tty01 logname>/dev/tty01 #同時記載日記檔案 echo“有非法使用者試圖登入!c”> >/usr/tmp/err echo $dc> >/usr/tmp/err logname > >/usr/tmp/err exit; fi; fi 其中/etc/default/aaa是受限終端名的一個文字檔案,root後為密碼,它的內容如下: root qwerty ttyp0 ttyp1 ttyp2 ttyp3 ttypa ttypb … 這樣非法使用者即例獲得了合法的使用者名稱和密碼,也無法遠端使用。系統管理員定時閱讀日記檔案,注意控制檯資訊,就能獲得被非法訪問的情況,及時採取措施。如果用c語言實現上述過程,把接受愛變成不可顯示,效果更佳。 三、加強對重要資料的保密 它主要包括hosts表、X.25地址、、連線調變解調器的電腦號碼及所用的通訊的種類、網內的使用者名稱等,這些資料都應採取一些保密措施,防止隨意擴散。如可向部門申請通訊專用的電話號碼不刊登、不供查詢等。由於公共的或普通郵電裝置的介入,資訊透過它們後可能被篡改或洩露。 四、加強對重要的管理 路由器在網路安全計劃中是很重要的一環。現在大多數路由器已具備的一些功能,如禁止telnet的訪問、禁示非法的網段訪問等。透過網路路由器進行正確的存取過濾是限制外部訪問簡單而有效的手段。 有條件的地方還可設定閘道器機,將本網和其他網隔離,閘道器機上不存放任何業務資料,刪除除系統正常執行所必須的使用者外所用的使用者,也能增強網路的安全性。 總之,只要我們從現在做起,培養網路安全意識,並注意的積累和學習,完全可能保證我們資訊系統的安全、正常執行。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-989474/,如需轉載,請註明出處,否則將追究法律責任。

相關文章