據(jù)有關(guān)資料顯示,近兩年內(nèi),中國(guó)的計(jì)算機(jī)網(wǎng)絡(luò)受到了近200個(gè)黑客有意識(shí)的襲擊。網(wǎng)絡(luò)遭到攻擊已經(jīng)不僅僅是從報(bào)刊文摘中讀到的外國(guó)神話,而是真真切切地存在于我們生活中的現(xiàn)實(shí)。維護(hù)網(wǎng)絡(luò)的安全性已經(jīng)具有越來越重要的現(xiàn)實(shí)意義,下面這篇文章介紹了在sco unix上進(jìn)行安全管理的一些具體設(shè)置,也是一些專業(yè)書籍中很少涉及到的,具有很強(qiáng)的實(shí)用價(jià)值。
金融業(yè)務(wù)系統(tǒng)大部分以UNIX或XENIX操作系統(tǒng)為平臺(tái),以TCP/IP為網(wǎng)絡(luò)平臺(tái)。雖然UNIX安全性能已達(dá)到美國(guó)國(guó)防部的C2級(jí)安全標(biāo)準(zhǔn),是一個(gè)相對(duì)安全、嚴(yán)密的系統(tǒng),但也并非無懈可擊。電腦黑客入侵多種、證券網(wǎng)絡(luò)系統(tǒng)的新聞再次敲響金融網(wǎng)絡(luò)安全管理的警鐘。如何加強(qiáng)UNIX網(wǎng)絡(luò)系統(tǒng)的安全性管理,筆者以SCO UNIX3.2.v4.2為例,提幾點(diǎn)看法,與廣大同仁商榷。
這里所說的安全性,主要指通過防止本機(jī)或本網(wǎng)被非法侵入、訪問,從而達(dá)到保護(hù)本系統(tǒng)可靠、正常運(yùn)行的目的,本文只在此范圍內(nèi)討論,對(duì)其他方面不予考慮。
一、抓好網(wǎng)內(nèi)主機(jī)的管理是網(wǎng)絡(luò)安全管理的前提
用戶名和密碼管理永遠(yuǎn)是系統(tǒng)安全管理中最重要的環(huán)節(jié)之一,對(duì)網(wǎng)絡(luò)的任何攻擊,都不可能沒有合法的用戶名和密碼(后臺(tái)網(wǎng)絡(luò)應(yīng)用程序開后門例外)。但目前絕大部分系統(tǒng)管理員只注重對(duì)特權(quán)用戶的管理,而忽視對(duì)普通用戶的管理。主要表現(xiàn)在設(shè)置用戶時(shí)圖省事方便,胡亂設(shè)置用戶的權(quán)限(id)、組別(group)和文件權(quán)限,為非法用戶竊取信息和破壞系統(tǒng)留下了空隙。
金融系統(tǒng)UNIX的用戶都是最終用戶,他們只需在具體的應(yīng)用系統(tǒng)中工作,完成某些固定的任務(wù),一般情況下不需執(zhí)行系統(tǒng)命令(shell)。以農(nóng)業(yè)銀行全國(guó)電子匯兌為例,用戶名為dzhd,它在/etc/passwd文件中描述如下:
dzhd:x:200:50: :/usr/dzhd:/bin/sh
它的.profile內(nèi)容大致如下:
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”,關(guān)掉終端電源,或同時(shí)鍵入“Ctrl”“\”,那么用戶將進(jìn)入shell命令狀態(tài)。例如他可以在自己的目錄不斷創(chuàng)建子目錄而耗盡系統(tǒng)的I節(jié)點(diǎn)號(hào)、或用yes>aa創(chuàng)建一個(gè)其大無比的垃圾文件而耗盡硬盤空間等導(dǎo)致系統(tǒng)的崩潰、癱瘓;如果文件系統(tǒng)的權(quán)限設(shè)置不嚴(yán)密,他可運(yùn)行、窺視甚至修改它;還可通過su等命令竊取更高的權(quán)限;還可登錄到其它主機(jī)上去搗亂,令你防不勝防,危險(xiǎn)性可想而知。這一些問題都與用戶設(shè)置有關(guān)。所以,盡量不要把用戶設(shè)置成上述形式。如果必須這樣,可根據(jù)實(shí)際需要,看看能否把用戶的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文件,看看是否有來歷不明的用戶和用戶的權(quán)限;定期修改用戶密碼,特別是uucp、bin等不常用的用戶的密碼,以防有人在此開個(gè)活動(dòng)的天窗--一個(gè)可自由進(jìn)出的用戶;刪除所有睡眠用戶等。
二、設(shè)置好自己的網(wǎng)絡(luò)環(huán)境是阻止非法訪問的有效途徑
網(wǎng)上訪問的常用工具有telnet、ftp、rlogin、rcp、rcmd等網(wǎng)絡(luò)操作命令,對(duì)它們的使用必須加以限制。最簡(jiǎn)單的方法是修改/etc/services中相應(yīng)的服務(wù)端口號(hào)。但這樣做會(huì)使網(wǎng)外的一切訪問都被拒絕,即使是否法訪問也不例外。這種閉關(guān)自守的做法不值得提倡,因?yàn)檫@樣會(huì)使本網(wǎng)和網(wǎng)外隔絕開,也會(huì)給自己帶來不便。通過對(duì)UNIXt系統(tǒng)的分析,我們認(rèn)為有可能做到有條件限制(允許)網(wǎng)上訪問。
(1)建立etc/ftpusers文件(不受歡迎的ftp用戶表)。與之相關(guān)的命令是ftp。配置如下:
#用戶名
dgxt
dzhd
…
以上都是本機(jī)內(nèi)的一些用戶,侵入者使用以上用戶名ftp訪問本網(wǎng)會(huì)被拒之門外。
(2)注意保存好.netrc文件(遠(yuǎn)程注冊(cè)數(shù)據(jù)文件)。與之有關(guān)的命令是ftp。.netrc包含注冊(cè)到網(wǎng)絡(luò)上用ftp作文件轉(zhuǎn)移的遠(yuǎn)程主機(jī)的數(shù)據(jù)。通常駐留在用戶當(dāng)前目錄中,文件權(quán)限必須為0600。格式如下:
machine對(duì)方主機(jī)名login對(duì)方主機(jī)內(nèi)用戶名password對(duì)方用戶密碼macdef init ftp的操作命令集。
(3)創(chuàng)建匿名ftp。所謂匿名ftp,是指其他主機(jī)的用戶能以ftp或anonymous用戶進(jìn)行數(shù)據(jù)收發(fā)而不要任何密碼。建立方法如下:
a)用sysadmsh創(chuàng)建ftp用戶,在passwd文件表示為:
ftp:x:210:50: :/usr/ftp:/bin/sh
.profile中的路徑為:
PATH=$HOME/bin:$HOME/etc
b)在/usr/ftp目錄:
#創(chuàng)建匿名ftp所用的目錄
#mkdir bin etc dev pub shlib
#改變pub以外所有目錄權(quán)限
#chmod 0555 bin etc dev shlib
#改變pub目錄的所有者和同組者
#chown ftp pub
#chgrp ftp pub
#復(fù)制匿名ftp所執(zhí)行文件
#cp/bin/rsh/bin/pwd/bin/1s bin
#改變所需執(zhí)行文件權(quán)限
#chmod 011 bin/*
#查看所需偽設(shè)備的情況
#1/dev/socksys
#1/dev/null
#建立所需偽設(shè)備的驅(qū)動(dòng)程度
#cd/usr/ftp/dev
#mkond null c 4 2
#mkond socksys c 26 0
#改變偽設(shè)備驅(qū)動(dòng)程序的所有者、同組者
#chown ftp ftp/*
#chgrp ftp ftp/*
#復(fù)制共享文件
#cp/shlib/ilbe_s shlib
注意不要復(fù)制/etc/passwd、/etc/proup到etc下,這樣對(duì)安全具有潛在的威脅。此外給ftp用戶加上密碼,不要告訴其他任何人。
(4)限制.rhosts用戶等價(jià)文件(又叫受托用戶文件)。與之有關(guān)命令有rlogin、rcp、rcmd等。
所謂用戶等價(jià),就是用戶不用輸入密碼,即可以相同的用戶信息登錄到另一臺(tái)主機(jī)中。用戶等價(jià)的文件名為.rhosts,存放在根下或用戶主目錄下。它的形式如下:
#主機(jī)名 用戶名
ash020000 root
ash020001 dgxt
…
如果用戶名為空,是所有用戶均等價(jià)。
(5)限制hosts.equiv主機(jī)等價(jià)文件,又叫受托主機(jī)文件。有關(guān)的命令為rlogin、rcp、rcmd等。主機(jī)等價(jià)類似于用戶等價(jià),在兩臺(tái)計(jì)算機(jī)除根目錄外的所有區(qū)域有效,主機(jī)等價(jià)文件為hosts.equiv,存放在/etc下,它的形式如下:
#主機(jī)名 用戶名
ash020000
ash020001
…
當(dāng)遠(yuǎn)程使用ftp訪問本系統(tǒng)時(shí),UNIX系統(tǒng)首先驗(yàn)證用戶名和密碼,無誤后查看ftpusers文件,一旦其中包含登錄所用用戶名則自動(dòng)拒絕連接,從而達(dá)到限制作用。因此我們只要把本機(jī)內(nèi)除匿名ftp以外的所有用戶列入ftpusers文件中,即使入者獲得本機(jī)內(nèi)正確的用戶信息,無法登錄系統(tǒng)。需對(duì)外發(fā)布的信息,放到/usr/ftp/bub下,讓遠(yuǎn)方通過匿名ftp獲取。使用匿名ftp,不需密碼,不會(huì)對(duì)本機(jī)系統(tǒng)的安全構(gòu)成威脅,因?yàn)樗鼰o法改變目錄,也就無法獲得本機(jī)內(nèi)的其他信息。使用.netrc配置,需注意保密,防止泄露其他相關(guān)主機(jī)的信息。
使用用戶等價(jià)和主機(jī)等機(jī)這類訪問,用戶可以不用口令而像其他有效用戶一樣登錄到遠(yuǎn)程系統(tǒng),遠(yuǎn)程用戶可使用rlogin直接登錄而不需密碼,還可使用rcp命令向或從本地主機(jī)復(fù)制文件,也可使用rcmd遠(yuǎn)程執(zhí)行本機(jī)的命令等。因此主種訪問具有嚴(yán)重的不安全性,必須嚴(yán)格控制或在非常可靠的環(huán)境下使用。1998年美國(guó)發(fā)現(xiàn)的著名的“蠕蟲”病毒,由一個(gè)叫英爾(morris)的年青人編寫的,在Internet網(wǎng)上流傳開,造成許多UNIX系統(tǒng)的癱瘓,損失達(dá)數(shù)億美元,其重要的傳播手段之一就是利用了用戶等價(jià)和主機(jī)等價(jià)的配置。慎重使用(最好不用)和經(jīng)常檢查上述文件,會(huì)有效加強(qiáng)系統(tǒng)安全。
UNIX系統(tǒng)沒有直接提供對(duì)telnet的控制。但我們知道,/etc/profile是系統(tǒng)默認(rèn)shell變量文件,所有用戶登錄時(shí)必須首先執(zhí)行它。如果我們?cè)谠撐募撞吭黾尤缦聨讞lshell命令:
#設(shè)置中斷變量
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“請(qǐng)輸入密碼:\c”
read abc
#獲取正確密碼
dd=“grep root /etc/edfault/aaa|awk’[pint $2]’`”
#非法用戶發(fā)出警告信息到主控臺(tái)
法[“$abc”!=$dd]
then
echo “非法用戶!”
echo“有非法用戶試圖登錄!”>tev/tty01
logname>/dev/tty01
#同時(shí)記載日記文件
echo“有非法用戶試圖登錄!\c”> >/usr/tmp/err
echo $dc> >/usr/tmp/err
logname > >/usr/tmp/err
exit;
fi;
fi
其中/etc/default/aaa是受限終端名的一個(gè)文本文件,root后為密碼,它的內(nèi)容如下:
root qwerty
ttyp0
ttyp1
ttyp2
ttyp3
ttypa
ttypb
…
這樣非法用戶即例獲得了合法的用戶名和密碼,也無法遠(yuǎn)程使用。系統(tǒng)管理員定時(shí)閱讀日記文件,注意控制臺(tái)信息,就能獲得被非法訪問的情況,及時(shí)采取措施。如果用c語言實(shí)現(xiàn)上述過程,把接受愛變成不可顯示,效果更佳。
三、加強(qiáng)對(duì)重要資料的保密
它主要包括hosts表、X.25地址、路由、連接調(diào)制解調(diào)器的電腦號(hào)碼及所用的通信軟件的種類、網(wǎng)內(nèi)的用戶名等,這些資料都應(yīng)采取一些保密措施,防止隨意擴(kuò)散。如可向電信部門申請(qǐng)通信專用的電話號(hào)碼不刊登、不供查詢等。由于公共的或普通郵電交換設(shè)備的介入,信息通過它們后可能被篡改或泄露。
四、加強(qiáng)對(duì)重要網(wǎng)絡(luò)設(shè)備的管理
路由器在網(wǎng)絡(luò)安全計(jì)劃中是很重要的一環(huán)。現(xiàn)在大多數(shù)路由器已具備防火墻的一些功能,如禁止telnet的訪問、禁示非法的網(wǎng)段訪問等。通過網(wǎng)絡(luò)路由器進(jìn)行正確的存取過濾是限制外部訪問簡(jiǎn)單而有效的手段。
有條件的地方還可設(shè)置網(wǎng)關(guān)機(jī),將本網(wǎng)和其他網(wǎng)隔離,網(wǎng)關(guān)機(jī)上不存放任何業(yè)務(wù)數(shù)據(jù),刪除除系統(tǒng)正常運(yùn)行所必須的用戶外所用的用戶,也能增強(qiáng)網(wǎng)絡(luò)的安全性。
總之,只要我們從現(xiàn)在做起,培養(yǎng)網(wǎng)絡(luò)安全意識(shí),并注意經(jīng)驗(yàn)的積累和學(xué)習(xí),完全可能保證我們信息系統(tǒng)的安全、正常運(yùn)行。