Telnet咋就不安全了呢?帶你來(lái)看用戶名和密碼
曾幾何時(shí),Telnet是我最喜歡的遠(yuǎn)程登錄協(xié)議!
當(dāng)年還年輕,還在H公司做網(wǎng)絡(luò)測(cè)試的工作,天天千方百計(jì)的找路由器和交換機(jī)的BUG,總想給開發(fā)人員添堵,總想搞事情、不想讓版本正常發(fā)布:),現(xiàn)在回想起來(lái),那真是一段單純而美好的時(shí)光!
為了對(duì)交換機(jī)和路由器進(jìn)行管理,當(dāng)時(shí)我們都是使用Telnet登錄的,各種命令敲的很High。突然有一天,我們的部門經(jīng)理(現(xiàn)在擔(dān)任H公司高管)專門把我們召集起來(lái),讓我們以后登錄設(shè)備時(shí),禁止使用Telnet,要切換為SSH,自動(dòng)化平臺(tái)的連接也要全部換成SSH!
這讓我們很驚訝,因?yàn)門elnet已經(jīng)用很久了,整個(gè)部門的測(cè)試系統(tǒng)登錄都是基于Telnet的,大家都已經(jīng)習(xí)慣了!后來(lái)才知道因?yàn)榘l(fā)生了某個(gè)泄密事件(具體內(nèi)容忘了),所以公司要求即使在內(nèi)部登錄設(shè)備時(shí),也不能使用Telnet,必須使用更安全的SSH!然后整個(gè)部門就切換了!
后來(lái)離開H公司,到別的公司以后,發(fā)現(xiàn)大家雖然都知道Telnet不安全,但是還都在使用。因?yàn)門elnet配置起來(lái)比SSH更方便,而人都是有惰性的,多走一步路都不愿意,當(dāng)然喜歡使用Telnet!估計(jì)只有現(xiàn)網(wǎng)的設(shè)備才會(huì)禁止使用Telnet。
后來(lái)學(xué)了一點(diǎn)安全知識(shí),才理解H公司強(qiáng)制要求的苦心,原來(lái)Telnet真的不安全,有心人可以輕易的獲取登錄設(shè)備的用戶名和密碼,今天就和大家一起看一下!
簡(jiǎn)單的了解一下Telnet的C/S工作模式
C/S工作模式,小伙伴聽起來(lái)有沒有感覺很高大上?我就曾經(jīng)被唬住,感覺C/S模式是一種非常高深的架構(gòu)!后來(lái)還專門查了資料,才搞清楚C/S工作模式是什么。
我們來(lái)看看下圖的C/S工作模式,做好大跌眼鏡的準(zhǔn)備
C/S工作模式
- C:client,客戶端;
- S:server,服務(wù)器。
客戶端和服務(wù)器之間交換信息,只要客戶端使用單獨(dú)軟件訪問(wèn)服務(wù)器的工作模式,都可以稱為C/S模式!是不是沒有想到呢?
與C/S模式相對(duì)應(yīng)的是B/S模式,如下圖所示:
B/S工作模式
- B:brower,瀏覽器
- S: server,服務(wù)器
看完上圖和B、S的解釋,小伙伴應(yīng)該能猜出B/S模式是什么了吧?客戶端和服務(wù)器之間交換信息,只要是通過(guò)瀏覽器訪問(wèn)server的模式,都稱為B/S模式!是不是感覺不淡定,感覺太簡(jiǎn)單了:)
那我們言歸正傳,既然Telnet采用的C/S模式,就是說(shuō)Telnet客戶端需要第三方軟件才行。我們通常會(huì)使用window自帶的CMD、SecureCRT、XShell、Putty等軟件作為Telnet客戶端,去連接Telnet服務(wù)器!
SecureCRT界面
網(wǎng)絡(luò)工程師最常用的就是SecureCRT了,簡(jiǎn)直就是敲命令行的必備利器啊!如果安裝和使用SecureCRT有疑問(wèn),可以到我的專欄去看看,有一節(jié)是專門介紹SecureCRT的視頻教程。
查看Telnet的用戶名密碼
看過(guò)了Telnet的工作模式以后,下面就帶領(lǐng)大家一起來(lái)查看用戶名密碼了!
那用什么工具來(lái)查看用戶名和密碼呢?wireshark軟件!
Wireshark是一個(gè)抓包軟件,是網(wǎng)絡(luò)工程師排除問(wèn)題的必備軟件。
要獲取Telnet的用戶名、密碼,只需要經(jīng)過(guò)下面的三個(gè)步驟:
- 第一步:打開wireshark軟件,抓取經(jīng)過(guò)網(wǎng)卡的報(bào)文;
- 第二步:使用Telnet客戶端,登錄網(wǎng)絡(luò)設(shè)備;
- 第三步:停止wireshark抓包,分析報(bào)文,找出用戶名和密碼。
步驟一:打開wireshark軟件,抓取所有經(jīng)過(guò)網(wǎng)卡的報(bào)文
在電腦上安裝了wireshark軟件,打開就可以看到下圖的的軟件界面:
wireshark軟件界面
選擇正確的網(wǎng)卡:如果有多塊網(wǎng)卡,需要選擇抓包的網(wǎng)卡,
選擇正確的網(wǎng)卡
點(diǎn)擊開始以后,就會(huì)開始抓包:如下圖所示,正在抓包中
抓包中
步驟二:使用Telnet客戶端,登錄Telnet服務(wù)器
打開SecureCRT軟件,新建一個(gè)連接,選擇Telnet協(xié)議,如下圖所示:
選擇Telnet協(xié)議
輸入Telnet服務(wù)器的IP地址或主機(jī)名:
服務(wù)器IP地址或者主機(jī)名
給創(chuàng)建的會(huì)話起一個(gè)名字:
會(huì)話名稱
雙擊會(huì)話名稱,會(huì)自動(dòng)的連接失敗,并提示輸入用戶名和密碼:
提示輸入用戶名和密碼
不過(guò)華為的設(shè)備會(huì)提示:Telnet是不安全的,不建議使用,原文如下:
Warning: Telnet is not a secure protocol, and it is recommended to use Stelnet. |
我們當(dāng)然不能被嚇到,否則今天的課程就沒有辦法繼續(xù)下去了,我們按照提示輸入用戶名和密碼:
輸入用戶名和密碼
步驟三:使用wireshark找出用戶名和密碼
在我們停止抓包以后,會(huì)發(fā)現(xiàn)我們已經(jīng)抓取了大量的報(bào)文,不知道如何入手。其實(shí)很簡(jiǎn)單,只需要在上面的過(guò)濾器輸入telnet即可,wireshark會(huì)把協(xié)議屬于telnet的報(bào)文過(guò)濾出來(lái),如下圖:
過(guò)濾出Telnet報(bào)文
過(guò)濾以后,就沒有多少報(bào)文了,可以一個(gè)一個(gè)的報(bào)文查找,用戶名和密碼就藏這些報(bào)文里面。也可以使用wireshark的“追蹤流”功能,它會(huì)把這條流量的所有內(nèi)容都顯示出來(lái)。如下圖,右鍵選中一個(gè)報(bào)文以后,然后選擇追蹤TCP流:
追蹤流
Wireshark就會(huì)把屬于這條TCP連接的所有內(nèi)容都顯示出來(lái)(Telnet使用TCP傳輸),如下圖:
顯示用戶名、密碼
你看是不是比較坑爹,用戶名/密碼直接就顯示出來(lái)了!是不是比較簡(jiǎn)單呢,不需要掌握什么高深的技術(shù)就可以輕易獲取Telnet的用戶名/密碼了!
當(dāng)然有心人是不會(huì)在你電腦上抓包的,他會(huì)在網(wǎng)絡(luò)中間抓包。這個(gè)對(duì)他們不是什么困難的事情,例如下圖:
有心人抓包
他們的抓包設(shè)備和分析軟件會(huì)更專業(yè),如果獲取現(xiàn)網(wǎng)設(shè)備的用戶名/密碼,就可以對(duì)設(shè)備進(jìn)行任何的配置了,想想都可怕!所以我們還是不要使用telnet的好,養(yǎng)成使用SSH的習(xí)慣!
總結(jié)
各位小伙伴經(jīng)過(guò)上面的解釋,知道C/S工作原理和Telnet不安全的原因了吧?我來(lái)作一下簡(jiǎn)單的總結(jié):
- 使用第三方客戶端連接服務(wù)器的工作模式叫做C/S模式;
- 使用瀏覽器連接服務(wù)器的工作模式叫做B/S模式;
- Telnet之所以不安全,是因?yàn)榭蛻舳撕头?wù)器之間交互的報(bào)文是沒有加密的,可以被有心人輕易的找出用戶名和密碼。