「telnetは通信が暗号化されてないので、内容を読み取られる恐れがある」という注意書きはよく目にします。一方で、ネットワークの通信に問題があるときに、通信内容をキャプチャすることで原因切り分けするのはよくあることです。 同じ方法でtelnetの通信内容やパスワードを読み取ることができます。 以下、自宅で実践してみた内容のメモです。
毎度のことですが、本記事はセキュリティ意識の向上を目的としております。悪用しないでください。
内容は、PCからtelnetでサーバにアクセスし、その内容を途中のスイッチでミラーリングしキャプチャするというもの。トポロジは上の図の通り。
今回は、いよいよEOLの迫ったXPにWireSharkとTeraTermをインストールします。
(シリアルケーブルのドライバがXP用しかなかったため)
途中のスイッチにアクセスし、ミラーポートを設定します。
今回はCatalyst2940を使用しました。
コマンドは、
「monitor session 1 source interface fastethernet 0/1 - 2」 ←ポートFastEthernet1と2をキャプチャ
「monitor session 1 destination interface gigabitethernet 0/1」 ←キャプチャされたものはポートGigabitEthernet1へ送出する。
今回は、もう一台Catalystを準備し、それをTelnetサーバとします。
コマンドは割愛しますが、上の写真の通りに設定するとtelnetでのアクセスを受け付けます。
クライアントからTelnetで、Telnetサーバにアクセスします。
パスワードは「gamma」と入力しました。
この時、キャプチャPCのWiresharkで、パケットをキャプチャします。
キャプチャPCでは、Telnetの内容が把握できています。
上の図では、「User Access Verification Password:」が見えています。
上の図の各パケットにて、パスワード入力時の「g」「a」「m」「m」「a」が1文字ずつ送られているのがわかります。
つまり、通信内容を途中でミラーリングすることで、telnetのパスワードは簡単に読まれてしまいます。
当然、以降のtelnetの内容も全部見えます。
余談となりますが、セキュリティ初級ペネトレーションハンズオン(http://www.zusaar.com/event/798003)に多数お申込みいただき、ありがとうございます。
懇親会は当日お申し込みも受け付けますが、なるたけ事前登録お願いいたします。
http://www.zusaar.com/event/799003