シスコの「秘密の」パスワードハッシュを生成するコード


12

「シークレットを有効にする」などのパスワードハッシュを生成するためにシスコが使用するコード(またはアルゴリズム)へのポインタはありますか?

私は何にも侵入しようとはしていません。クリアテキストのパスワードを指定して適切な「シークレットを有効にする」行を生成しようとしていますが、ハッシュされたパスワードで既存の「シークレットを有効にする」行をデコードしません。これは、作業中の自動構成ファイル生成プログラムNetomata Config Generator)に必要です。

基本的に、私が欲しいのは、Webサーバーに使用される「htpasswd」コマンドに相当するシスコのものです。

たとえば、次のコマンドをクリアテキストパスワードとともにCisco configに入力すると、

enable secret foobar

次に、「show config」コマンドを実行すると(「サービスパスワード暗号化」が有効になっていると仮定して)、次のように表示されます。

enable secret 5 $1$pdQG$0WzLBXV98voWIUEdIiLm11

「foobar」を「5 $ 1 $ pdQG $ 0WzLBXV98voWIUEdIiLm11」に変換するコードが必要です。これにより、生成された構成にクリアテキストパスワードを入れてルーターがハッシュを生成します。

ハッシュ結果の「5」は、ある種のハッシュアルゴリズム識別子であると推測されます。シスコが現在または過去に使用した他のハッシュアルゴリズムがある場合は、それらのアルゴリズムのコードも入手したいと思います。

回答:


18

あたりとしては、このウェブサイト、OpenSSLのコマンドラインユーティリティは、必要な機能を提供するために表示されます。

$ openssl passwd -1 -salt pdQG -table foobar
foobar  $1$pdQG$0WzLBXV98voWIUEdIiLm11
$

そして、おそらくライブラリ自体に同等の機能があります。

IOSで特定のソルト値を使用する必要があるかどうかはわかりませんが、技術的には、「enable secret」コマンドで指定した文字列が有効なMD5パスワードダイジェストである限り、そうする必要はありません。テストする機会があれば、結果を知りたいと思います。


11

シスコは4文字のソルトを必要とするようです。デフォルトでは、「-salt salt」引数なしで、openssl8文字のソルトが生成されます。

opensslただし、次のように、適切なランダムな4文字のソルトを使用して、「クリアテキスト」のシスコ互換のハッシュを生成できます。

openssl passwd -salt `openssl rand -base64 3` -1 "cleartext"

openssl rand -base64 3」サブコマンドは3つのランダムバイトを生成し、それらをbase64形式でエンコードします。これにより、4文字の印刷可能文字が得られます(Cisco互換のソルトに必要なもの)。

このソリューションへの正しい道を歩み始めた答え(このページの他の部分)をくれたMurali Suriarに感謝します。


3

5私は、MD5を使用するタイプ5であり、300プレイステーション3が必要になるという事実に言及していると思います。Type 7は簡単にクラックされ、Webサイトにスクリプトがあります。これは、Stackoverflowでより適切に尋ねられる場合があります。


1
面白い答え:)奇妙なことに、これはまた、その記事を使用して、その多分今私にいくつかの希望を与え、私は...私の上司は私たちにプレイステーションを購入するために取得を開始することができますのための1
グレッグ・ミーハン

3

ここに素晴らしいリファレンスがありますhttp://haxcess.com/2008/10/21/cisco-password-recovery/

一番下の行は、ハッシュがいくつかの部分に分割されていることです

  -> Indicates MD5 algorithm
 |   -> Salt
 |  |     -> Salt + Password Hash
 |  |    |
$1$mERr$RchIrJirmCXltFBZ2l50l/

これは、過去に私にとって驚異的な働きをしてきたPerlソリューションです。この赤ちゃんをループに入れて走らせます。

#!/usr/bin/perl
use Crypt::PasswdMD5;
my $hash = unix_md5_crypt('password','salt')

1

「5」は、クリアパスワードがciscoパスワードタイプ5に変換されたことを意味します。タイプ5パスワードはMD5ベースのアルゴリズムです(ただし、計算方法はわかりませんが、申し訳ありません)。「パスワードの有効化」を行うときに使用されるタイプ7は、よく知られている可逆アルゴリズムです。「service password-encryption」は、パスワードが平文(タイプ0)で保存されないようにするだけです。

http://en.wikipedia.org/wiki/Crypt_(Unix)#MD5-based_schemeと幸運をご覧ください :)

EDIT:あなたがまた見えるかもしれhttp://www.h4x3d.com/md5-and-crypt-password-generator/http://www.koders.com/c/fid530E8983791E1CB2AB90EAA69A68789FA2A83A6D.aspxのhttp://www.cryptgenerator .de /

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.