Cisco 機器に設定した脆弱な暗号化パスワードの解読方法

ノウハウ

Ciscoのネットワーク機器でパスワードを設定する場合、暗号化を選択して設定することでコンフィグにも暗号化された状態で表示されます。ただし、暗号化の方法によっては簡単に復元できてしまいます。また、強固な暗号化方法を選択しても安易なパスワードを設定してしまうと簡単に解読が可能になります。

はじめに

ここでは最もよく使われるイネーブルパスワードを例に実際の解読方法を紹介します。

パスワードを暗号化する種類は、脆弱な暗号化の「type7」と、より強固なMD5(ハッシュ)を使った暗号化「type5」があります。

自身で設定したパスワードを忘れてしまった場合などに、ここで紹介する方法で保存しているコンフィグから復元可能です。コンフィグを取っておらず enable パスワードを忘れてしまった場合は、こちらの「Cisco スイッチでパスワードを忘れた場合の復旧手順」が利用できます。

パスワードの暗号化設定

以下は、type7 と type5 のそれぞれのパスワードを設定方法です。設定後にコンフィグにどのように表示されるかを確認します。

type7の暗号化パスワードを設定

パスワードは cisco7 を設定しています。

Switch(config)# enable password cisco7
Switch(config)# service password-encryption

コンフィグ上のパスワードは以下のように表示されます。

enable password 7 121A0C0411045B

type5の暗号化パスワードを設定

パスワードは cisco5 を設定しています。

Switch(config)# enable secret cisco5

コンフィグ上のパスワードは以下のように表示されます。

enable secret 5 $1$RUMw$lXsS/vMgNmkb/aVR7hrIP0

ちなみに上記のように2つ同時に設定した場合は、より強固な暗号化パスワード「type5」が使用されます。

パスワード(Type7)の解読

方法1:ネットワーク機器を使って解読する

key chain の test を作成してパスワード「121A0C0411045B」の文字列をペーストします。

Switch(config)# key chain test
Switch(config-keychain)# key 0
Switch(config-keychain-key)# key-string 7 121A0C0411045B

show コマンドで作成したkey chain を表示すると設定したパスワード(cisco7)が確認できます。

Switch# show key chain
Key-chain test:
key 0 — text “cisco7”
accept lifetime (always valid) – (always valid) [valid now]
send lifetime (always valid) – (always valid) [valid now]

確認できたら作成した key chain を削除します。

Switch(config)# no key chain test

方法2:解読サイトを使って解読する

Cisco type7 パスワードを解読できるサイトを利用する。

参考サイト例)

パスワードを入力して実行するだけですぐに解読可能です。

サイトへのパスワード入力と解読-cisco7

パスワード(Type5)の解読

Type5 ではCisco のコマンドで解読する方法はありません。

enable secret で使用するMD5アルゴリズムにより暗号化されたパスワードは元のパスワードには戻せない仕組みになっています。

しかし、脆弱性がないわけではなくブルートフォースアタック(総当り攻撃)による解読も不可能ではありません。そのため、一般的な単語をパスワードにしていると一瞬で解読することが可能になります。

type7の解析サイトと同じようなサイトもありますが、単純な単語をパスワードとしている場合のみ解読はすぐにできます。たとえば、cisco とか passwordのような一般的な単語では解読可能です。

サイトへのパスワード入力と解読-cisco
サイトへのパスワード入力と解読-password

※上記サイトではクライアント側のJavascriptを使用しているため単純な単語で一致しない場合、総当たり攻撃となり一般のPCでは解読が困難になります。

まとめ

「Type5」の enable secret を使用して設定したからと言って必ずしも安全ではないことがわかります。

これは Cisco のネットワーク機器だけではなくその他の機器にも共通して言えることですが、少なくとも複数の人が利用可能なネットワーク上の機器にパスワードを設定する場合は、なるべく強固な暗号化を使用し、かつ解読しにくい文字列を心がけて設定する必要があります。

同時に設定後もパスワードを忘れてわからなくなったり流出してしまうことがないようしっかりとした管理も必要になります。

参考リンク

Cisco スイッチでパスワードを忘れた場合の復旧手順

はじめての Cisco ネットワーク機器① 「起動~コンソール接続」


コメント