天天看點

中間人攻擊(一)實體中斷、竊聽

本文所說的中間人攻擊是指,當主機A與主機B在互相通信的過程中,主機C對此通信所實施的攻擊手段,這裡主要介紹4種攻擊模式與現在常用的解決方案

1.實體中斷

實體中斷,顧名思義是指将主機A與主機B之間的實體連接配接掐斷,使之無法在網絡上找到對方,基本情形如下:(A與B之間通信被C實體中斷) A<---------XXX C XXX--------->B;

日常生活中,多見于拔掉網線插頭,盜取網線等情況,解決方案上基本以隔離(建立機房,布置暗線等)或行政、法律限制為主

2.竊聽

竊聽,偷聽他人說話而得到不該自己知道的資訊,該模式的基本情形如下所示:

A<-------------------------------->B

|

C

在主機A與主機B正常通訊的過程中,主機C以非常手段得了A與B互相通信的資訊,如果資訊涉及銀行賬号、密碼或商業情報等重要内容,則會造成非常嚴重的後果

針對該種模式的解決方案:采用資訊加密技術,保證資料機密性

加密:由兩部分組成,算法&密鑰(算法要夠複雜,密鑰要夠安全);

對稱加密,也稱為單密鑰加密,采用單鑰密碼系統的加密方法,同一個密鑰可以同時用于資訊的加密和解密,由于其速度的優勢,對稱性加密通常在消息發送方需要加密大量資料時使用,主要的加密工具有:DES;3DES;AES等

非對稱加密,與對稱加密算法不同,加密盒解密使用的是兩個不同的密鑰:公開密鑰和私有密鑰。公開密鑰與私有密鑰是一對,如果用公開密鑰對資料進行加密,隻有用對應的私有密鑰才能解密;如果用私有密鑰對資料進行加密,那麼隻有用對應的公開密鑰才能解密。常用的加密工具有RSA和DSA等

實驗一:對稱加密openssl

本實驗使用的加密工具為openssl,加密檔案/etc/passwd

#openssl enc -e -des -in /etc/passwd -out /tmp/passwd.des -->加密,使用des算法

enter des-cbc encryption password:marmotc -->設定密鑰為marmotc

Verifying - enter des-cbc encryption password:marmotc

#openssl enc -d -des -in /tmp/passwd.des -out /tmp/passwd -->解密

enter des-cbc decryption passwd:marmotc -->輸入密鑰

實驗二:非對稱加密GPG

GnuPG(全稱:GNU PrivacyGuard,簡稱:GPG),大多用于加密資訊的傳遞,是一款免費的加密和數字簽名工具。GPG提供了“公鑰/私鑰”對,即采用了非對稱加密手段,利用“公鑰”對資訊進行加密,因加密時單向的,隻有“私鑰”能解開加密資訊,故資訊安全性上能夠得到相應的保證

測試使用者:user1和user2

user1生成非對稱密鑰對:[user1@localhost ~]$gpg --gen-key

gnupg檔案的存放位置:[user1@localhost ~]$ls .gnupg/

檢視已有的公鑰:[user1@localhost ~]$gpg --list-keys

檢視已有的私鑰:[user1@localhost ~]$gpg --list-secret-keys

user1将自己的公鑰導出:[user1@localhost ~]$gpg --export --armor user1 > /tmp/user1.key -->這裡的user1是--list-keys中所檢視的uid列裡的名字或郵箱,該内容在生成密鑰的過程由使用者輸入而得

user2導入user1的public key(這裡是user1.key):[user2@localhost ~]$pgp --import user1.key

user2用user1的public key加密檔案file.gpg,并将加密檔案file.gpg.asc發送給user1:[user2@localhost ~]$gpg --encrypt --armor --recipient user1 file.gpg

user1用pgp解密file.gpg.asc得到原檔案file.gpg:[user1@localhost ~]$gpg file.gpg.asc

繼續閱讀