关闭

找回SecureCRT密码

标签: securecrtwindowspython
6325人阅读 评论(0) 收藏 举报
分类:

前言

因为S公司历史原因,几百台服务器的密码保存SecureCRT上,但是这个软件实在太难用了,所以提取其中的原始账号密码,转移到Xshell上

密码保存位置

Windows 在 “用户名\AppData\Roaming\VanDyke\Config\Sessions\”中,每个机器名对应一个ini文件
(位置可能会有修改)

使用

先看后面的安装,Python脚本保存为SecureCRTDecrypt.py
用法
python SecureCRTDecrypt.py [filename...]
例子

[@bx_5_219 /tmp]# python SecureCRTDecrypt.py 10.10.123.123.ini   
10.10.123.123.ini
ssh root@10.10.70.30 # I'mpassword

依赖包

安装解密依赖包pycrypto
下载

https://pypi.python.org/pypi/pycrypto
wget https://pypi.python.org/packages/source/p/pycrypto/pycrypto-2.6.1.tar.gz

解压安装

tar -zxvf pycrypto-2.6.1.tar.gz
cd pycrtyto-2.6.1
python setup.py build
python setup.py install

密文解密程序

保存为SecureCRTDecrypt.py

from Crypto.Cipher import Blowfish
import argparse
import re

def decrypt(password) :
    c1 = Blowfish.new('5F B0 45 A2 94 17 D9 16 C6 C6 A2 FF 06 41 82 B7'.replace(' ','').decode('hex'), Blowfish.MODE_CBC, '\x00'*8)
    c2 = Blowfish.new('24 A6 3D DE 5B D3 B3 82 9C 7E 06 F4 08 16 AA 07'.replace(' ','').decode('hex'), Blowfish.MODE_CBC, '\x00'*8)
    padded = c1.decrypt(c2.decrypt(password.decode('hex'))[4:-4])
    p = ''
    while padded[:2] != '\x00\x00' :
        p += padded[:2]
        padded = padded[2:]
    return p.decode('UTF-16')

REGEX_HOSTNAME = re.compile(ur'S:"Hostname"=([^\r\n]*)')
REGEX_PASWORD = re.compile(ur'S:"Password"=u([0-9a-f]+)')
REGEX_PORT = re.compile(ur'D:"\[SSH2\] Port"=([0-9a-f]{8})')
REGEX_USERNAME = re.compile(ur'S:"Username"=([^\r\n]*)')

def hostname(x) :
    m = REGEX_HOSTNAME.search(x)
    if m :
        return m.group(1)
    return '???'

def password(x) :
    m = REGEX_PASWORD.search(x)
    if m :
        return decrypt(m.group(1))
    return '???'

def port(x) :
    m = REGEX_PORT.search(x)
    if m :
        return '-p %d '%(int(m.group(1), 16))
    return ''

def username(x) :
    m = REGEX_USERNAME.search(x)
    if m :
        return m.group(1) + '@'
    return ''

parser = argparse.ArgumentParser(description='Tool to decrypt SSHv2 passwords in VanDyke Secure CRT session files')
parser.add_argument('files', type=argparse.FileType('r'), nargs='+',
    help='session file(s)')

args = parser.parse_args()

for f in args.files :
    c = f.read().replace('\x00', '')
    print f.name
    print "ssh %s%s%s # %s"%(port(c), username(c), hostname(c), password(c))

参考

[1] 如何找回SecureCRT密码
[2] GitHub上gitPoc32的项目

6
0
查看评论

查看 找回 SecureCRT的密码

原文地址:http://blog.csdn.net/nickwong_/article/details/52373279 打开SecureCRT程序中的 Data\Settings\Config\Sessions目录,会看到所有的回话 对应一个ini文件 如 192.168.8.10.in...
  • lcalqf
  • lcalqf
  • 2017-06-14 20:05
  • 2940

解密SecureCRT的ssh密码

SecureCRT解密
  • wqlpz23045
  • wqlpz23045
  • 2017-07-17 11:29
  • 1606

secureCRT免密码登陆Linux

1.实现原理: 通过CRT生成的密钥对,把公钥上传到Linux服务器指定用户下的.ssh目录中,在客户端上只需输入秘钥的密码即可登陆,而且验证一次以后可以免密码登陆 2.具体过程:
  • wangquannetwork
  • wangquannetwork
  • 2015-05-28 01:06
  • 4514

mac securecrt无法记住密码的解决方法

一、问题描述 mac有自带的终端,可以运行ssl和sftp,但是目录操作,文件操作和文件上传是分开的,很不方便,并且文件上传命令需要文件的全路路径。 使用securecrt能方便的解决上述的问题,并且文件上传采用选择文件的方式。但是由于有多个服务器需要连接和管理,每次连接securecrt都需要...
  • ssrrxx111
  • ssrrxx111
  • 2015-10-21 10:22
  • 5738

mac secureCRT 记住密码

打开SecureCRT的全局选项(),在主菜单Preferences, 或者COMMAND键加逗号,打开之后在Advanced页签下,取消掉Use Keychain即可。
  • w13770269691
  • w13770269691
  • 2014-04-24 15:29
  • 2505

查看SecureCRT保存的密码

登录密码保存在CRT的session配置文件中,不过是加密保存的,看不懂 也不知道它的加密算法,没法解密. 所以如果能让CRT自己显示出来就好了 首先修改要登录的主机的IP地址,改成另外一台机器, 这台的登录密码要跟原来机器的不一样 然后连接,这时因为登录密码错误,会弹出一个窗口,显示了用户名和密...
  • SysProgram
  • SysProgram
  • 2013-10-29 23:59
  • 25000

Secure CRT破解版

  • 2008-11-20 09:44
  • 8.71MB
  • 下载

使用SecureCRT登陆,提示“Password authentication failed”原因

首先,要进行远程连接,必须遵循四要素:1 IP地址 2 用户名 3 密码 4 SSH(SSH2)协议,确保这四点没有错误后,再找别的原因。我使用SecureCRT登陆虚拟机上的linux,点击连接后,提示“Password authentication failed”,输入如下: , 1 首先我...
  • dudefu011
  • dudefu011
  • 2016-08-02 21:02
  • 7881

SecureCRT 迁移到新环境,导出配置文件目录

SecureCRT 打开SecureCRT,点击菜单栏的“选项”--“全局选项” 在打开的窗口中,选择“常规”,在右侧找到“配置文件夹”,这个就是SecureCRT的配置文件目录。 复制这个路径并且进入,将里面的所有文件打包,拷贝到其它机器就成功备份了SecureCRT的配置和会话. 如...
  • lwei_998
  • lwei_998
  • 2015-05-07 14:48
  • 5239

Cisco交换机路由器密码破解

Cisco交换机密码破解: 1.     电脑打开SecureCRT连接交换机 2.     按住交换机面板上的mode按钮并通电 3.     约4...
  • Anonymous2017
  • Anonymous2017
  • 2017-03-03 23:26
  • 949
    个人资料
    • 访问:206014次
    • 积分:2988
    • 等级:
    • 排名:第13923名
    • 原创:121篇
    • 转载:34篇
    • 译文:0篇
    • 评论:11条
    关于我
    • 打过ACM的Geek
    • 喜欢各种折腾
    • 研发各种小工具
    • 偏离文艺的道路越来越远0.0
    • Blogging is a time-consuming work, and sometimes I did’t even have time to open my website. But I think it’s also helpful to put something on the blog for memory, especially for the past life in technical world.
    不定时更新的博客
    状态
    • 好久没看《三体》了
    • 《存在主义是一种人道主义》
    最新评论