第二章 網絡安全思想
網絡安全,這是個百說不厭的話題。因為在互聯網上,每台計算機都存在或多或少的安全問題。安全問題不被重視,必然會導致嚴重後果。諸如係統被破壞、數據丟失、機密被盜和直接、間接的經濟損失等。這都是不容忽視的問題。既然說到網絡安全,我們經常提到要使用防火牆、殺毒軟件等等。這些的確很重要,但是人們往往忽視了最重要的,那就是思想意識。
人類的主觀能動性是很厲害的,可以認識世界、改造世界,正確發揮人的主觀能動性可以提高認知能力。但是人類本身固有的惰性也是十分嚴重的,喜歡墨守成規、圖省事。就是這點惰性給我的網絡帶來了安全隱患。據不完全統計,每年因網絡安全問題而造成的損失超過300億美元,其中絕大多數是因為內部人員的疏忽所至。所以,思想意識問題應放在網絡安全的首要位置。
一、密碼
看到這裏也許會有讀者以為我大放闕詞,那就先以我自己的一個例子來說起吧。
本人也很懶,但是也比較注意安全性,所以能設置密碼的地方都設置了密碼,但是密碼全是一樣的。從E-mail信箱到用戶Administrator,統一都使用了一個8位密碼。我當初想:8位密碼,怎麼可能說破就破,固若金湯。所以從來不改。用了幾年,沒有任何問題,洋洋自得,自以為安全性一流。恰恰在你最得意的時候,該抽你嘴巴的人就出現了。我的一個同事竟然用最低級也是最有效的窮舉法吧我的8位密碼給破了。還好都比較熟,否則公司數據丟失,我就要卷著被子回家了。事後我問他,怎麼破解的我的密碼,答曰:隻因為每次看我敲密碼時手的動作完全相同,於是便知道我的密碼都是一樣的,而且從不改變。這件事情被我引以為戒,以後密碼分開設置,采用10位密碼,並且半年一更換。現在還心存餘悸呢。
我從中得出的教訓是,密碼安全要放在網絡安全的第一位。因為密碼就是鑰匙,如果別人有了你家的鑰匙,就可以堂而皇之的進你家偷東西,並且左鄰右舍不會懷疑什麼。我的建議,對於重要用戶,諸如:Root,Administrator的密碼要求最少要8位,並且應該有英文字母大小寫以及數字和其他符號。千萬不要嫌麻煩,密碼被破後更麻煩。
為什麼要使用8位密碼呢?Unix一共是0x00至0xff共128個字符。小於0x20的都算是控製符,不能輸入為口令,0x7f為轉義符,不能輸入。那麼總共有128-32-1=95個字符可作為口令的字符。也就是10(數字)+33(標點符號)+26*2(大小寫字母)=95個。如果口令取任意5個字母+1位數字或符號(按順序),可能性是:52*52*52*52*52*43=16,348,773,000(即163億種可能性)。但如果5個字母是一個常用詞,估算一個,設常用詞500條,從5000個常用詞中取一個詞與任意一個字符組合成口令,因每一個字母都分為大小寫,所以其可能性為:5000*282828282843=6,880,000(即688萬種可能性)。但實際上絕大多數人都隻用小寫字母,所以可能性還要小。這已經可以用微機進行窮舉了,在Pentium200上每秒可算3.4萬次,像這樣簡單的口令要不了3分鍾。如果用P4算上一周,可進行3000億次演算。所以6位口令很不可靠,應用8位。
密碼設的越難以窮舉,並不是帶來更加良好的安全性。相反帶來的是更加難以記憶,甚至在最初更改的幾天因為輸入緩慢而被別人記住,或者自己忘記。這都是非常糟糕的,但是密碼難於窮舉是保證安全性的前提。矛盾著的雙方時可以互相轉化的,所以如何使係統密碼既難以窮舉又容易記憶呢,這就是門科學了。目前這方麵的書籍幾乎沒有,所以我隻能憑借自我經驗來向大家介紹了。
1、采用10位以上密碼。
對於一般情況下,8位密碼是足夠了,如一般的網絡社區的密碼、E-mail的密碼。但是對於係統管理的密碼,尤其是超級用戶的密碼最好要在10位以上,12位最佳。首先,8位密碼居多,一般窮舉工作的起始字典都使用6位字典或8位字典,10位或12位的字典不予考慮。其次,一個全碼8位字典需要占去4G左右空間,10位或12位的全碼字典更是天文數字,要是用一般台式機破解可能要到下個千年了,運用中型機破解還有有點希望的。再次,哪怕是一個12個字母的英文單詞,也足以讓黑客望而卻步。