王一九
摘 要:隨著網(wǎng)絡(luò)通信的發(fā)展,網(wǎng)絡(luò)與通信工程中的安全問題也越來越受重視。簡單地說,安全目的和目標(biāo)包括機(jī)密性( Confidentiality)、完整性(Integrity)和可用性(Availability)。簡單地稱為安全的CIA三元組。該文首先介紹機(jī)密性、完整性、可用性的概念、安全問題及影響等。然后,闡述網(wǎng)絡(luò)與通信工程中的安全問題及解決方案。最后,對常見的應(yīng)用程序攻擊進(jìn)行說明,并給出防御措施。
關(guān)鍵詞:機(jī)密性;完整性;可用性;加密;散列
中圖分類號:TP393 文獻(xiàn)標(biāo)志碼:A
1 對安全三元組的認(rèn)識
1.1 機(jī)密性
機(jī)密性是限制未授權(quán)的主體對信息的訪問、使用和披露。一旦機(jī)密性遭到破壞,意味著信息被泄露。而信息的機(jī)密性涉及數(shù)據(jù)在存儲、處理和傳輸過程中,都要對數(shù)據(jù)進(jìn)行合理保護(hù),包括對數(shù)據(jù)進(jìn)行加密、限制未授權(quán)主體處理、透明傳輸?shù)取?/p>
1.2 完整性
完整性是保證數(shù)據(jù)的正確性,不能被未授權(quán)的主體修改,同時保證信息在網(wǎng)絡(luò)通信傳輸過程中不能被惡意篡改或偽造。
1.3 可用性
可用性是保證授權(quán)主體對客體的可使用、可訪問。如果發(fā)生可用性的風(fēng)險,那么就導(dǎo)致網(wǎng)絡(luò)服務(wù)中斷、掛起、拒絕服務(wù)等。
2 網(wǎng)絡(luò)與通信工程中的安全問題
下面首先針對網(wǎng)絡(luò)與通信工程中的安全問題與解決方案進(jìn)行詳細(xì)說明。
2.1 機(jī)密性問題與解決方案
為了保證機(jī)密性就要根據(jù)需求,對信息進(jìn)行加密。加密過程可以采取對稱加密算法或非對稱加密算法。
在對稱加密算法中,通信的成員之間使用相同的密鑰進(jìn)行加密、解密。對稱加密算法包括DES、3DES、AES、Twofish、IDEA、Skipjack等;在非對稱加密算法中,存在公鑰和私鑰。當(dāng)對信息進(jìn)行加密時,發(fā)送方使用接收方的公鑰進(jìn)行加密。接收方收到被加密的信息后,使用自己的私鑰進(jìn)行解密。非對稱加密算法包括RSA、El Gamal、ECC。其中,RSA算法是第一個能同時用于加密和數(shù)字簽名的算法,也易于理解和操作。對稱加密算法和非對稱加密算法都有優(yōu)缺點和應(yīng)用場景。
對稱加密算法的主要優(yōu)點是運算速度快,因此,在大量信息加密的情況下,對稱加密算法的運算速度優(yōu)勢明顯。然而,對稱加密算法存在以下缺點:1)密鑰的分發(fā)問題。如果進(jìn)行密鑰分發(fā),必須保證分發(fā)的網(wǎng)絡(luò)通信是安全的,否則,密鑰分發(fā)過程必須通過離線分發(fā)。2)無法實現(xiàn)不可否認(rèn)性問題。由于通信的各方都用相同的密鑰進(jìn)行加密,因此,無法實現(xiàn)加密過程中的不可否認(rèn)性。3)不可擴(kuò)展性問題。對于大的用戶組來說,共享密鑰非常困難,且密鑰成幾何數(shù)量級增長。如果n個人通過對稱密鑰算法進(jìn)行通信,那么密鑰為n(n-1)/2個;4)密鑰必須經(jīng)常更新。當(dāng)用戶組有成員離開時,所有涉及該成員的密鑰必須丟棄,必須使用新的密鑰進(jìn)行通信。所有使用涉及的密鑰進(jìn)行加密的信息,也必須使用新的密鑰重新進(jìn)行加密。
針對對稱加密算法的不足之處,非對稱加密算法提供了解決方案:1)密鑰分發(fā)。由于非對稱密鑰中通信各方的私鑰自己保存,只需要共享各方的公鑰,因此,不存在密鑰的分發(fā)問題。2)不可否認(rèn)性。為了實現(xiàn)不可否認(rèn)性,發(fā)送方可以使用自己的私鑰進(jìn)行加密信息,接收方在收到加密信息時,可以使用發(fā)送方的公鑰進(jìn)行解密信息。如果解密成功,那么就可以確認(rèn)信息是發(fā)送方發(fā)送的,從而實現(xiàn)不可否認(rèn)性。3)可擴(kuò)展性。在非對稱密鑰中,通信雙方都有一對公鑰和私鑰。如果n個人通過非對稱密鑰算法進(jìn)行通信,那么密鑰為2n個。4)密鑰的更新。在非對稱密鑰中,當(dāng)有成員離開時,可以進(jìn)行密鑰撤銷,從而將該成員從非對稱系統(tǒng)中刪除。
然而,非對稱密鑰的不足之處在于運算速度慢。因此,不適合大量信息的加密操作。因此,在網(wǎng)絡(luò)與通信工程中,通常采用對稱加密算法與非對稱加密算法相結(jié)合的方式進(jìn)行。
2.2 完整性問題與解決方案
為保證信息的完整性,離不開散列函數(shù)和消息摘要。散列函數(shù)是將收到的消息,根據(jù)消息內(nèi)容,通過運算生成消息摘要。發(fā)送者將消息摘要與消息一起發(fā)送給接收者,接收者再根據(jù)同樣的散列函數(shù)對消息進(jìn)行運算,運算的結(jié)果與發(fā)送者發(fā)來的消息摘要進(jìn)行比對。如果兩者一致,那么表示消息在傳輸過程中未被篡改;否則,表示消息在傳輸過程中被篡改??梢钥闯觯⒘泻瘮?shù)和消息摘要可以保證網(wǎng)絡(luò)通信中信息的完整性。
常見的散列函數(shù)包括MD2、MD4、MD5、SHA1和SHA2。目前MD2、MD4、MD5、
SHA1已經(jīng)被證明是不安全的散列函數(shù)。SHA2是被公認(rèn)為比較安全的散列函數(shù)。
2.3 可用性問題與解決方案
可用性的威脅來源包括環(huán)境問題、人為的誤操作、設(shè)備故障、軟件錯誤等。
針對以上問題,需要采取有效措施進(jìn)行防護(hù)。1)對于環(huán)境問題,必須在機(jī)房或服務(wù)器選址的時候進(jìn)行重點考慮。2)進(jìn)行安全教育,加強技術(shù)的培訓(xùn),提高操作技能,防止人為事故的發(fā)生。3)對設(shè)備及信息采取冗余備份的方式,對各種服務(wù)器通過主備方式進(jìn)行備份,當(dāng)主服務(wù)器發(fā)生故障時,備服務(wù)器能夠快速接替主服務(wù)器繼續(xù)工作;將信息通過磁帶備份,保證在信息丟失的情況下能及時進(jìn)行信息還原。
3 應(yīng)用程序攻擊
常見的應(yīng)用程序攻擊包括緩沖區(qū)溢出、檢驗時間到使用時間、后門、權(quán)限提升和Rootkit。這些攻擊都會導(dǎo)致網(wǎng)絡(luò)和通信過程中出現(xiàn)嚴(yán)重的安全問題。因此,必須采取有效措施進(jìn)行防御和阻斷。
3.1 緩沖區(qū)溢出
緩沖區(qū)溢出常見于對用戶的輸入未進(jìn)行必要的檢查。當(dāng)用戶的輸入量超過了分配的內(nèi)存單元時,即發(fā)生緩沖區(qū)溢出。緩沖區(qū)溢出會造成服務(wù)掛起,導(dǎo)致服務(wù)不可用。防御措施:開發(fā)人員必須對用戶輸入進(jìn)行檢查,包括輸入的長度、輸入的數(shù)據(jù)類型等。
3.2 檢驗時間到使用時間
當(dāng)程序檢查訪問許可的時間早于請求資源的時間,就會發(fā)生檢驗時間到使用時間風(fēng)險。象用戶在登錄某個網(wǎng)站時,對用戶進(jìn)行身份驗證。用戶身份驗證通過,并在網(wǎng)站內(nèi)查看或修改數(shù)據(jù)。如果用戶一直不退出網(wǎng)站,即使在接下來的某個時間,對該用戶的修改權(quán)限進(jìn)行撤銷,用戶也仍然可以繼續(xù)執(zhí)行修改操作。這就導(dǎo)致了檢驗時間到使用時間的風(fēng)險。
防御措施:對用戶的訪問分配超期時間,這樣當(dāng)超期時間到時,用戶就需要重新進(jìn)行身份及訪問權(quán)限的驗證。
3.3 后門
后門的初衷是便于開發(fā)人員在開發(fā)過程中對缺陷進(jìn)行調(diào)試,在代碼中增加的繞過所有安全
檢查的訪問手段。然而,如果在產(chǎn)品進(jìn)入市場后,仍存在后門,那么可能造成嚴(yán)重的安全問題。象某個懷有惡意的開發(fā)人員可能在代碼中留有邏輯炸彈等。
防御措施:在產(chǎn)品的測試階段,必須對代碼進(jìn)行徹底檢查,避免存在后門。
3.4 權(quán)限提升和Rootkit
權(quán)限提升和Rootkit是系統(tǒng)與網(wǎng)絡(luò)攻擊常用的攻擊方式之一。黑客可能通過字典攻擊或社會工程學(xué)等手段,獲得某個系統(tǒng)的某個普通用戶的訪問權(quán)限。當(dāng)用普通用戶的訪問權(quán)限進(jìn)入系統(tǒng)后,黑客再通過權(quán)限提升和Rootkit提升到管理員權(quán)限。這樣,可以獲得更大的權(quán)限,其對系統(tǒng)造成的損失也就更大。防御措施:系統(tǒng)管理員必須關(guān)注系統(tǒng)相關(guān)的操作系統(tǒng)發(fā)布的補丁,并對操作系統(tǒng)存在的漏洞及時打最新的補丁。同時,通過系統(tǒng)日志嚴(yán)格監(jiān)控特權(quán)賬戶的活動情況。
4 結(jié)語
總而言之,網(wǎng)絡(luò)與通信工程中的信息和系統(tǒng)的安全性必須受到重視,才能保證信息的機(jī)密性、完整性、可用性。當(dāng)信息在網(wǎng)絡(luò)中進(jìn)行通信傳輸時,必須采取措施加以防御和緩解。這樣才能滿足用戶對信息和系統(tǒng)的使用要求。
參考文獻(xiàn)
[1]左曉靜,譚會君.常用數(shù)據(jù)加密算法分析及比較[J].漯河職業(yè)技術(shù)學(xué)院學(xué)報,2017(2):27-29.
[2]苗永清.網(wǎng)絡(luò)安全威脅與對策分析[J].通訊世界,2017(8):97.