據有關資料顯示,近兩年內,中國的計算機網絡受到了近200個黑客有意識的襲擊。網絡遭到攻擊已經不僅僅是從報刊文摘中讀到的外國神話,而是真真切切地存在于我們生活中的現實。維護網絡的安全性已經具有越來越重要的現實意義,下面這篇文章介紹了在sco unix上進行安全治理的一些具體設置,也是一些專業書籍中很少涉及到的,具有很強的實用價值。
金融業務系統大部分以UNIX或XENIX操作系統為平臺,以TCP/ip為網絡平臺。雖然UNIX安全性能已達到美國國防部的C2級安全標準,是一個相對安全、嚴密的系統,但也并非無懈可擊。電腦黑客入侵多種、證券網絡系統的新聞再次敲響金融網絡安全治理的警鐘。如何加強UNIX網絡系統的安全性治理,筆者以SCO UNIX3.2.v4.2為例,提幾點看法,與廣大同仁商榷。
這里所說的安全性,主要指通過防止本機或本網被非法侵入、訪問,從而達到保護本系統可靠、正常運行的目的,本文只在此范圍內討論,對其他方面不予考慮。
一、抓好網內主機的治理是網絡安全治理的前提
用戶名和密碼治理永遠是系統安全治理中最重要的環節之一,對網絡的任何攻擊,都不可能沒有合法的用戶名和密碼(后臺網絡應用程序開后門例外)。但目前絕大部分系統治理員只注重對特權用戶的治理,而忽視對普通用戶的治理。主要表現在設置用戶時圖省事方便,胡亂設置用戶的權限(id)、組別(group)和文件權限,為非法用戶竊取信息和破壞系統留下了空隙。
金融系統UNIX的用戶都是最終用戶,他們只需在具體的應用系統中工作,完成某些固定的任務,一般情況下不需執行系統命令(shell)。以農業銀行全國電子匯兌為例,用戶名為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:
MAIL=/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等不常用的用戶的密碼,以防有人在此開個活動的天窗--一個可自由進出的用戶;刪除所有睡眠用戶等。
二、設置好自己的網絡環境是阻止非法訪問的有效途徑
網上訪問的常用工具有telnet、FTP、rlogin、rcp、rcmd等網絡操作命令,對它們的使用必須加以限制。最簡單的方法是修改/etc/services中相應的服務端口號。但這樣做會使網外的一切訪問都被拒絕,即使是否法訪問也不例外。這種閉關自守的做法不值得提倡,因為這樣會使本網和網外隔絕開,也會給自己帶來不便。通過對UNIXt系統的分析,我們認為有可能做到有條件限制(答應)網上訪問。
(1)建立etc/ftpusers文件(不受歡迎的ftp用戶表)。與之相關的命令是ftp。配置如下:
#用戶名
dgxt
dzhd
…
以上都是本機內的一些用戶,侵入者使用以上用戶名ftp訪問本網會被拒之門外。
(2)注重保存好.netrc文件(遠程注冊數據文件)。與之有關的命令是ftp。.netrc包含注冊到網絡上用ftp作文件轉移的遠程主機的數據。通常駐留在用戶當前目錄中,文件權限必須為0600。格式如下:
machine對方主機名login對方主機內用戶名passWord對方用戶密碼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
)在/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 root
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/aaaawk’[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的訪問、禁示非法的網段訪問等。通過網絡路由器進行正確的存取過濾是限制外部訪問簡單而有效的手段。
有條件的地方還可設置網關機,將本網和其他網隔離,網關機上不存放任何業務數據,刪除除系統正常運行所必須的用戶外所用的用戶,也能增強網絡的安全性。
總之,只要我們從現在做起,培養網絡安全意識,并注重經驗的積累和學習,完全可能保證我們信息系統的安全、正常運行。
新聞熱點
疑難解答