人們?cè)谌粘I钪兴龅降挠?jì)算機(jī)安全問(wèn)題,一部分是由于某項(xiàng)產(chǎn)品的缺陷所導(dǎo)致,還有一部分則是在使用產(chǎn)品時(shí)人為錯(cuò)誤所致。有關(guān)專家開發(fā)出類似這些問(wèn)題的清單,稱之為“十個(gè)不變的安全性法則”。
別費(fèi)神等待防止以下所討論問(wèn)題發(fā)生的補(bǔ)丁程序上市。微軟或其它軟件廠商不可能“修好”這些問(wèn)題,因?yàn)檫@些問(wèn)題是因計(jì)算機(jī)的運(yùn)作方式而產(chǎn)生。但也別完全絕望,明智的判斷力是防止這些問(wèn)題在您身上發(fā)生的關(guān)鍵。如果您牢記這些法則,便可以顯著的改善您系統(tǒng)的安全性。
法則一 如果動(dòng)機(jī)不良的人能夠說(shuō)服您在自己計(jì)算機(jī)上執(zhí)行他的程序,那么該計(jì)算機(jī)便不再屬于您。
這是計(jì)算機(jī)科學(xué)不幸的事實(shí):當(dāng)計(jì)算機(jī)程序執(zhí)行時(shí),不管該程序是否有害,它會(huì)遵照程序指示作業(yè)。當(dāng)您選擇執(zhí)行一個(gè)程序時(shí),這個(gè)決定便把計(jì)算機(jī)的控制權(quán)托付給該程序。一旦程序開始執(zhí)行,可能會(huì)做任何事情,但不會(huì)超越您在計(jì)算機(jī)上所能做的事。程序可以監(jiān)視您的按鍵輸入并傳送到網(wǎng)站、打開計(jì)算機(jī)上的每一個(gè)文件,并將所有文件中的“會(huì)”這個(gè)字變更為“不會(huì)”、傳送粗魯無(wú)禮的電子郵件給您所有的朋友、安裝病毒、建立“后門”讓他人遠(yuǎn)程控制您的計(jì)算機(jī)、撥接到尼泊爾加德滿都的 ISP,或者把您的硬盤重新格式化。
所以這點(diǎn)非常重要:永遠(yuǎn)不要從不能信任的資源執(zhí)行甚至下載程序,而“資源”所指的是寫程序而不是給您程序的人。執(zhí)行程序與吃三明治是很好的模擬:如果有個(gè)陌生人走到您面前,給您一塊三明治,您會(huì)吃嗎?恐怕不會(huì)吧;如果是您最好的朋友給您三明治呢?您可能會(huì)吃,也可能不會(huì)吃,得看她是自己做的還是在路上撿到的。將三明治情境中使用的判斷思考應(yīng)用到程序上,您多半會(huì)很安全。
法則二 如果動(dòng)機(jī)不良的人能夠在您的計(jì)算機(jī)上變更操作系統(tǒng),那么該計(jì)算機(jī)便不再屬于您。
操作系統(tǒng)最終不過(guò)是一系列的 0 與 1,被處理器解譯時(shí),會(huì)引發(fā)計(jì)算機(jī)做特定的事件,而 0 與 1 改變時(shí),會(huì)完成不同的事件。0 與 1 儲(chǔ)存在哪里呢?就是與其它東西共同存在計(jì)算機(jī)上!它們只是文件,但如果其它使用計(jì)算機(jī)的人可以變更這些文件,那就不妙了。
要了解原因,就要把操作系統(tǒng)文件,想象成計(jì)算機(jī)中最能夠信任的文件,且通常是以系統(tǒng)層次的特殊權(quán)限執(zhí)行,也就是說(shuō)它們可以做任何的事情。此外,可以信任它們管理使用者賬戶、處理密碼變更,以及執(zhí)行誰(shuí)可以做什么的支配規(guī)則。如果一個(gè)動(dòng)機(jī)不良的人變更這些文件,這些文件就變得無(wú)法信任,并且會(huì)做此人叫它們做的事,因此沒有什么他辦不到的事。他可以竊取密碼,讓他自己成為計(jì)算機(jī)的系統(tǒng)管理員,或是新增全新的功能到操作系統(tǒng)。為預(yù)防這類型的攻擊,請(qǐng)確定系統(tǒng)文件 (與登錄文件) 的保護(hù)周全 。
法則三 如果動(dòng)機(jī)不良的人能夠無(wú)限制地實(shí)體存取您的計(jì)算機(jī),那么該計(jì)算機(jī)便不再屬于您。
如果一個(gè)動(dòng)機(jī)不良的人能夠使用您的計(jì)算機(jī),他可以做的事情不少。這里列出從石器時(shí)代到太空時(shí)代的取樣:
·他可以發(fā)動(dòng)技術(shù)性極低的拒絕服務(wù)攻擊,并用大錘砸爛您的計(jì)算機(jī)。
·他可以把計(jì)算機(jī)的插座拔掉,把它運(yùn)到大樓外面,然后以它要挾贖金。
·他可以用磁盤開機(jī),重新格式化您的硬盤。但是等一等,您說(shuō):“計(jì)算機(jī)開機(jī)時(shí),計(jì)算機(jī)上的 BIOS 有設(shè)定提示輸入密碼。”這沒什么難的,他大可打開計(jì)算機(jī)機(jī)殼,變更系統(tǒng)硬件,更換 BIOS 的芯片 (其實(shí),還有很多更容易的方式)。
·他可以把您的硬盤從您的計(jì)算機(jī)移除,然后把它安裝到他的計(jì)算機(jī)并閱讀里面的東西。
·他可以復(fù)制您的硬盤然后帶回他的窩。在那里,他有足夠的時(shí)間進(jìn)行暴力攻擊,例如嘗試所有可能的登入密碼。有可用的程序自動(dòng)化這個(gè)工作,假如時(shí)間足夠,毫無(wú)疑問(wèn)的他會(huì)成功。成功后,前述的法則 1 與法則 2 就派上用場(chǎng)了。
·他可以將您的鍵盤替換成裝有無(wú)線發(fā)報(bào)機(jī)的鍵盤,監(jiān)視您輸入的所有訊息,包括您的密碼。
要永遠(yuǎn)確定計(jì)算機(jī)實(shí)體的保護(hù)與其價(jià)值成正比,并記住計(jì)算機(jī)的價(jià)值不是只有硬件的部分,還包括其中的數(shù)據(jù)以及動(dòng)機(jī)不良之人得以存取您網(wǎng)絡(luò)的價(jià)值。商業(yè)關(guān)鍵性的機(jī)器,至少要放在上鎖的機(jī)房,只讓系統(tǒng)管理員或維修人員存取。但是您可能也要考慮保護(hù)其它的計(jì)算機(jī),并可能使用額外的保護(hù)措施。
如果您帶著筆記型計(jì)算機(jī)旅行,對(duì)它的保護(hù)絕對(duì)很重要。體積小、重量輕等讓筆記型計(jì)算機(jī)成為旅行良伴的特性,也是讓它們非常容易遭竊的原因。目前有筆記型計(jì)算機(jī)可用的鎖與警鈴,有的計(jì)算機(jī)還能讓您取下硬盤并隨身攜帶。您也可以使用像是 Windows 2000 加密文件系統(tǒng)的功能,有人成功竊取計(jì)算機(jī)時(shí)可以減輕損害。但是可以讓您完全確定文件數(shù)據(jù)安全與硬件未被變動(dòng)的唯一方式,就是在旅行時(shí)永遠(yuǎn)將筆記型計(jì)算機(jī)隨身攜帶。
法則四 如果您允許動(dòng)機(jī)不良的人上載程序到您的網(wǎng)站,那么該網(wǎng)站便不再屬于您。
這個(gè)法則基本上與法則 1 相反。在法則 1 的狀況中,動(dòng)機(jī)不良的人;ㄕ校屖芎φ呦螺d有害的程序到他的計(jì)算機(jī)并執(zhí)行該程序。在法則 4 的狀況中,動(dòng)機(jī)不良的人則上載有害的程序到別人的計(jì)算機(jī)里,并自行執(zhí)行該程序。雖然當(dāng)您隨時(shí)讓陌生人聯(lián)機(jī)到您的計(jì)算機(jī)時(shí),就會(huì)有這樣的危險(xiǎn),但是網(wǎng)站涉及的案例絕大多數(shù)都是這一種。許多營(yíng)運(yùn)網(wǎng)站的人為了自己的好處而過(guò)于好客,讓訪客上載與執(zhí)行程序。如同前面所述,如果動(dòng)機(jī)不良的人能夠在您計(jì)算機(jī)上執(zhí)行程序,令人不悅的事就會(huì)發(fā)生。
如果您手上有網(wǎng)站在營(yíng)運(yùn),必須限制訪客所能做的事情。在您的網(wǎng)站上,應(yīng)該只允許自己或可信任之開發(fā)者所寫的程序。但這些措施可能還不夠,如果您的網(wǎng)站是與其它網(wǎng)站裝載于共享的服務(wù)器上,您需要特別小心。如果動(dòng)機(jī)不良的人有辦法拖累其它網(wǎng)站之一,那他很有可能會(huì)擴(kuò)充他的控制到服務(wù)器本身,因而可以控制所有在上面的網(wǎng)站,包括您的在內(nèi)。如果您是在共享服務(wù)器上,了解該服務(wù)器系統(tǒng)管理員的政策是什么就很重要 (順道一提,在使您的網(wǎng)站公開化前,要確定您已經(jīng)遵循 IIS 4.0 與 IIS 5.0 的安全檢查清單的指示)。
法則五 強(qiáng)大的安全性敵不過(guò)脆弱的密碼。
登入程序的目的在于建立您的身份。一旦操作系統(tǒng)知道您的身份,就可以適當(dāng)?shù)氖谂c或拒絕對(duì)系統(tǒng)資源的要求。如果動(dòng)機(jī)不良的人取得您的密碼,他便可用您的身份登入。事實(shí)上對(duì)操作系統(tǒng)而言,這個(gè)動(dòng)機(jī)不良的人就是您。您在系統(tǒng)上能做什么他都可以做,因?yàn)樗褪蔷褪悄;蛟S他要讀取您儲(chǔ)存在計(jì)算機(jī)上的敏感信息,例如您的電子郵件;或許您在網(wǎng)絡(luò)上比他的權(quán)限大,所以借用您的身份便可以做平時(shí)不能做的事;或許他只想做壞事然后怪罪到您身上;不管如何,保護(hù)您的信譽(yù)是值得的。
永遠(yuǎn)使用密碼。令人驚訝的是,有許多賬戶竟然使用空白密碼。請(qǐng)選擇一個(gè)復(fù)雜的密碼,不要使用狗的名字、周年紀(jì)念日期或地方球隊(duì)名稱,還有,別用 ”password” 這個(gè)字當(dāng)密碼!選一個(gè)混合英文、字母大小寫、數(shù)字、標(biāo)點(diǎn)符號(hào)等等的密碼,讓它愈長(zhǎng)愈好,并且常常變更。一旦選取了穩(wěn)當(dāng)?shù)拿艽a,要適當(dāng)加以處理,不要寫下
來(lái)。如果您一定要把它寫下來(lái),至少把它放到安全或可以上鎖的抽屜中。一個(gè)動(dòng)機(jī)不良的人在找密碼時(shí),第一個(gè)會(huì)找的地方就是在您屏幕旁邊的黃.色小標(biāo)簽紙。不要告訴別人您的密碼,記得富蘭克林曾說(shuō):“若要兩個(gè)人保守秘密,只有其中一人死掉才有可能成立!
最后,要考慮在系統(tǒng)中使用比密碼更強(qiáng)力的東西識(shí)別自己。舉例來(lái)說(shuō),Windows 2000 支持智能卡的使用,可以顯著加強(qiáng)系統(tǒng)所能執(zhí)行的識(shí)別碼檢查。您也可以考慮生物測(cè)量 (biometric) 的產(chǎn)品,像是指紋與視網(wǎng)模掃描儀。
法則六 計(jì)算機(jī)的安全性只等同于可靠的系統(tǒng)管理員。
每臺(tái)計(jì)算機(jī)須有位系統(tǒng)管理員:這個(gè)人能夠安裝軟件、設(shè)定操作系統(tǒng)、新增與管理使用者賬戶、建立安全性政策,與處理所有其它有關(guān)保持計(jì)算機(jī)開機(jī)與運(yùn)作的管理工作。根據(jù)定義,這些工作必須在系統(tǒng)管理員能夠控制計(jì)算機(jī)的情況下運(yùn)作,如此系統(tǒng)管理員的地位有著無(wú)與倫比的力量。一位不可信任的系統(tǒng)管理員能反轉(zhuǎn)所有您采取的安全措施。他可以變更計(jì)算機(jī)上的使用權(quán)限、變更系統(tǒng)安全性政策、安裝有害的軟件、新增不存在的使用者,或是做其它各式各樣的事情。事實(shí)上,他可以破壞任何操作系統(tǒng)的保護(hù)措施,因?yàn)樗褪强刂撇僮飨到y(tǒng)的人,最糟的是他還可以掩飾他的行為。如果您有位不可信任的系統(tǒng)管理員,就很明顯的沒有安全性。
雇用系統(tǒng)管理員時(shí),要認(rèn)知系統(tǒng)管理員所具有之信任的地位,而且只能雇用能擔(dān)保那份信任的人。打電話給該系統(tǒng)管理員的推薦人,詢問(wèn)有關(guān)他過(guò)去的工作紀(jì)錄,特別是在過(guò)去雇主公司有關(guān)安全性的事件。如果您的公司能夠接受銀行與其它安全意識(shí)高的公司所采取的步驟,您可以照樣操作,并要求系統(tǒng)管理員通過(guò)雇用時(shí)以及雇用后定期的完全背景檢查。不管您選用什么標(biāo)準(zhǔn),都要貫徹實(shí)施。在您的網(wǎng)絡(luò)上,不要給任何人管理上的特殊權(quán)限,除非這些人已經(jīng)過(guò)調(diào)查,對(duì)象包括臨時(shí)雇員與承包商。
下一步,采取行動(dòng)幫助誠(chéng)實(shí)的人保持誠(chéng)實(shí)。使用登入/注銷工作表以追蹤誰(shuí)曾出入服務(wù)器機(jī)房 (您一定有間上鎖的服務(wù)器機(jī)房,對(duì)吧?如果沒有,請(qǐng)重讀法則 3)。在安裝或?yàn)檐浖?jí)時(shí),采用“兩人”制度。盡可能把管理工作多元化,如此可以把每個(gè)系統(tǒng)管理員所擁有的權(quán)力降到最低。還有,不要使用系統(tǒng)管理員賬戶,取而代之,給每個(gè)系統(tǒng)管理員擁有系統(tǒng)管理員特殊權(quán)限的個(gè)別的賬戶,如此您可以知道誰(shuí)在做什么。最后,考慮進(jìn)一步讓系統(tǒng)管理員更難掩飾他的所作所為。例如,將稽核數(shù)據(jù)儲(chǔ)存在唯寫媒體,或是將系統(tǒng)甲的稽核數(shù)據(jù)放置于系統(tǒng)乙,并確定兩個(gè)系統(tǒng)的系統(tǒng)管理員是不同的人。當(dāng)您的系統(tǒng)管理員愈可靠,您的問(wèn)題就越少。
法則七 加密數(shù)據(jù)的安全性只等同于解密金鑰。
假設(shè)您安裝全世界最大、最強(qiáng)固、最安全的鎖在您家的前門,但是鑰匙就放在門前的墊子底下,那么不管您的鎖有多堅(jiān)固也沒有用,不是嗎?關(guān)鍵因素在于鑰匙沒有好好的保存,因?yàn)槿绻⊥嫡业剿,要開鎖可說(shuō)易如反掌。加密數(shù)據(jù)的運(yùn)作方式是一樣的-不管加密的算法有多強(qiáng),數(shù)據(jù)的安全性只等同于能夠解密的金鑰。
許多操作系統(tǒng)與加密的軟件產(chǎn)品,讓您選擇把加密金鑰儲(chǔ)存在計(jì)算機(jī)里。這個(gè)作法的優(yōu)點(diǎn)是方便-您就不必處理金鑰,但是所犧牲的是安全性。這些金鑰通常是隱藏的,有的隱藏方式非常好,但最后不管金鑰隱藏的多好,如果它就在計(jì)算機(jī)里,總是可以找得出來(lái)。最后一定會(huì)有軟件能夠找到金鑰,因此動(dòng)機(jī)不良之士也可以找得到。只要有機(jī)會(huì),請(qǐng)使用離線的存放區(qū)放置金鑰。如果機(jī)碼是一個(gè)字或詞,請(qǐng)予以牢記;如果不是,就將它匯出到磁盤上、制作備份復(fù)本,并把復(fù)本儲(chǔ)存到不同且安全的地點(diǎn)。
法則八 過(guò)期的掃毒程序比起沒有掃毒程序好不了多少。
病毒掃描儀的運(yùn)作方式,是把計(jì)算機(jī)上的數(shù)據(jù)與一組的病毒“簽名”互相比較。每一個(gè)簽名是一種病毒的特征,掃描儀在文件、電子郵件或其它地方發(fā)現(xiàn)數(shù)據(jù)與簽名符合時(shí),它就認(rèn)定找到病毒。但是病毒掃描儀只能掃描它所知道的病毒。保持最新的病毒掃描儀簽名檔案是很重要的,因?yàn)槊刻於加行碌牟《井a(chǎn)生。
但問(wèn)題其實(shí)比這個(gè)概念還要深一點(diǎn)。一般而言,新的病毒在其早期的生命階段會(huì)造成最大的損壞,正是因?yàn)楹苌偃四軌騻蓽y(cè)到它。消息一旦傳開,指出有新的病毒在散布,然后人們更新手上的病毒簽名文件,之后病毒的散布程度就大幅下降。重點(diǎn)是要趕在散布曲線的前端,意即病毒大肆散布前,在計(jì)算機(jī)上更新病毒簽名文件。
事實(shí)上每一家防毒軟件的供貨商都提供由網(wǎng)站取得免費(fèi)簽名文件的方式。其實(shí),許多廠商已經(jīng)“推進(jìn)”他們的服務(wù),每當(dāng)新的簽名文件發(fā)行時(shí),他們會(huì)傳送通知。請(qǐng)您善加利用這些服務(wù),同時(shí),也要持續(xù)使用這些服務(wù),讓掃描儀本身 (也就是掃描軟件) 更新。病毒的建立者會(huì)定期發(fā)展新的技術(shù),使得掃描儀本身運(yùn)作的方式也有變更的需要。
法則九 完全的匿名不管在現(xiàn)實(shí)或網(wǎng)絡(luò)上都不實(shí)際。
所有人類的互動(dòng)都涉及某種的數(shù)據(jù)交換。如果有人組合足夠的數(shù)據(jù),他們就可以識(shí)別您。仔細(xì)想想一個(gè)人在與您簡(jiǎn)短的對(duì)談中能夠收集的所有信息。只要看一眼,他們就可以判斷您的身高、體重與大概的年紀(jì)。您的口音可能會(huì)告訴他們您來(lái)自哪個(gè)國(guó)家,或是來(lái)自國(guó)內(nèi)的哪一區(qū)域。如果您談話的內(nèi)容不是只有天氣,您可能會(huì)告訴他們一些與您的家庭、興趣、住處與以何維生有關(guān)的事情。他人要了解您是誰(shuí),并不需要花很長(zhǎng)的時(shí)間收集信息。如果您渴望絕對(duì)的隱姓埋名,最好的方式是住在山洞里,不與任何人接觸。
在因特網(wǎng)上的情形也是一樣。如果您瀏覽一個(gè)網(wǎng)站,網(wǎng)站擁有者如果有心,他就有辦法查出您的身份。畢竟由 0 與 1 所組成的網(wǎng)站工作階段,一定能夠找到通往目的地的路,而那個(gè)目的地就是您的計(jì)算機(jī)。有很多的方式可以掩飾位,例如,您可以使用網(wǎng)絡(luò)地址轉(zhuǎn)譯,為您實(shí)際的 IP 地址加上屏障;訂閱匿名服務(wù)將位,由以太網(wǎng)絡(luò)的一端轉(zhuǎn)送到另一端,以掩飾您的位;為其它目的使用別家的 ISP 賬戶;只從公共信息站瀏覽特定的網(wǎng)站等等。這些方式讓人更難判定您的身份,但并非全無(wú)可能。您確定知道是誰(shuí)在操作這些匿名的服務(wù)嗎?可能就是您剛瀏覽之網(wǎng)站的擁有者!您昨天瀏覽提供您 10 元折價(jià)券的無(wú)害網(wǎng)站呢?或許該網(wǎng)站的擁有者愿意與其它網(wǎng)站擁有者共享您的數(shù)據(jù)。如果是這樣,第二個(gè)網(wǎng)站所有者或許可以把兩個(gè)網(wǎng)站的信息相互關(guān)聯(lián),進(jìn)而判定您的身份。
難道這代表網(wǎng)絡(luò)上的隱私權(quán)是不可能的嗎?一點(diǎn)也不。那意味著在因特網(wǎng)上保護(hù)您隱私的最好方式,與保護(hù)您日常生活的隱私?jīng)]有不同-都是經(jīng)由您的行為。閱讀您瀏覽網(wǎng)站的隱私權(quán)聲明,并且只與您能接受其做法的網(wǎng)站交易。如果您擔(dān)心 Cookie,就停用該功能。最重要的是,請(qǐng)避免毫無(wú)選擇地瀏覽網(wǎng)站-如同絕大多數(shù)的城市都有治安不好的區(qū)域,因特網(wǎng)也是一樣。但是如果您要的是徹底與全面的匿名,還是著手找一個(gè)山洞比較好。
法則十 技術(shù)不是萬(wàn)能藥。
技術(shù)能夠做到令人驚奇的事情。近年來(lái),前所未有的廉價(jià)、更具威力的硬件與利用硬件的軟件日漸開發(fā),因而為計(jì)算機(jī)使用者、加密技術(shù)的發(fā)展與其它科學(xué)打開了新的領(lǐng)域。如果我們努力研究的程度足夠,很難不相信技術(shù)可以帶來(lái)一個(gè)沒有風(fēng)險(xiǎn)的世界
。但是這完全是不實(shí)際的。
完美的安全性需要一層不存在的極至境界,而事實(shí)上也不太可能存在。這對(duì)軟件與人類有興趣的所有領(lǐng)域而言都是事實(shí)。軟件開發(fā)是一個(gè)不完美的科學(xué),所有的軟件都有問(wèn)題,其中有些可被利用而造成安全性漏洞,那不過(guò)是嚴(yán)酷的生活現(xiàn)實(shí)面。即使軟件能夠做到十全十美,還是無(wú)法解決所有的問(wèn)題。就某個(gè)程度而言,大部分的攻擊牽涉到人性的操縱-這通常稱為社交工程學(xué) (social engineering)。
增加成本與攻擊安全性技術(shù)的困難度,動(dòng)機(jī)不良之士會(huì)將焦點(diǎn)由技術(shù)轉(zhuǎn)向在控制臺(tái)的人,作為響應(yīng)。了解您在維護(hù)堅(jiān)固安全性的角色很重要,否則您可能會(huì)成為自己系統(tǒng)保護(hù)的裂縫。
解決方法在于認(rèn)知兩個(gè)重要的部分。第一,安全性是由技術(shù)與政策兩者所組成,也就是說(shuō),組合技術(shù)與使用它的方法,最終會(huì)決定您系統(tǒng)安全的程度。第二,安全性是一個(gè)過(guò)程而不是目的,它不是一個(gè)可以一次永遠(yuǎn)“解決”的問(wèn)題,而是好人與壞人之間一連串的行動(dòng)與對(duì)抗。關(guān)鍵是要確定您有良好的安全性意識(shí)與穩(wěn)健的判斷力。