Cisco "비밀"비밀번호 해시를 생성하는 코드?


12

시스코가 "비밀 활성화"와 같은 암호 해시를 생성하는 데 사용하는 코드 (또는 알고리즘)에 대한 포인터가 있습니까?

나는 아무것도 침입하려고하지 않는다. 일반 텍스트 비밀번호가 지정된 적절한 "비밀번호 사용"줄을 생성하려고하지만 기존의 "비밀번호 사용"줄을 해시 된 비밀번호로 디코딩 하지 않습니다 . 내가 작업중 인 자동화 된 구성 파일 생성기 ( Netomata Config Generator ) 에 이것이 필요합니다 .

기본적으로 원하는 것은 웹 서버에 사용되는 "htpasswd"명령과 동일한 Cisco입니다.

예를 들어, 일반 텍스트 암호를 사용하여 다음 명령을 Cisco 구성에 넣을 때 :

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에서 특정 솔트 값을 사용해야하는지 확실하지 않지만 기술적으로 '비밀 사용'명령에 제공 한 문자열이 유효한 MD5 암호 다이제스트 인 한 아무 이유가 없습니다. 테스트 할 기회가 있다면 결과를 알고 싶습니다.


11

시스코는 4 자 소금이 필요한 것으로 보입니다. 기본적으로 " -salt salt "인수가 없으면 openssl8 자 소금이 생성됩니다.

openssl그러나 다음과 같이 적절한 임의의 4 문자 솔트를 사용하여 "cleartext"의 Cisco 호환 해시를 생성하는 데 사용할 수 있습니다 .

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

" openssl rand -base64 3"하위 명령은 3 개의 임의 바이트를 생성 한 다음 base64 형식으로 인코딩하여 4 개의 인쇄 가능한 문자 (시스코 호환 솔트에 필요한 것)를 제공합니다.

이 솔루션의 올바른 길을 시작하게 된 Murali Suriar에게 감사의 말을 전합니다 (이 페이지의 다른 곳).


3

5 나는 그것이 MD5를 사용하는 타입 5라는 사실을 말하며, 이는 당신이 300 플레이 스테이션 3 을 필요로한다는 것을 의미합니다 . 유형 7은 쉽게 해독되며 웹 사이트 에 스크립트 가 있습니다. 이것은 Stackoverflow에서 더 잘 요청할 수 있습니다.


1
우스운 대답을 위해 +1 :) 이상하게도,이 기사를 사용하여 상사에게 플레이 스테이션을 사도록 시작할 수 있다는 희망이 생겼습니다.
Greg Meehan 2016 년

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은 잘 알려진 가역 알고리즘입니다. "서비스 비밀번호 암호화"는 비밀번호가 명확하게 저장되지 않도록합니다 (유형 0).

http://en.wikipedia.org/wiki/Crypt_(Unix)#MD5-based_scheme 및 행운을 살펴보십시오. :)

편집 : 당신은 또한 http://www.h4x3d.com/md5-and-crypt-password-generator/ , http://www.koders.com/c/fid530E8983791E1CB2AB90EAA69A68789FA2A83A6D.aspxhttp : //www.cryptgenerator를 볼 수 있습니다 .de /

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.