本文环境是centos下找回,已经安装python2.66,windows下也一样。主要是需要库支持。
首先创建2个文件,分别是SecureCRTDecrypt.py和Session文件(比如我的是192.168.1.10.ini)。
SecureCRTDecrypt.py源码
#decrypt 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))
上面需要有Crypto.Cipher import Blowfish库支持,同时还要argparse模块。2.66版本没有此模块,需要手动下载。直接命令行就行了。
yum install python-argparse
如果遇到“ Cannot retrieve metalink for repository: epel. Please verify its path and try again”提示,是因为用了第三方源造成的,处理很简单,修改文件“/etc/yum.repos.d/epel.repo”, 将全部baseurl的注释取消, mirrorlist注释掉。即可。
再清理源,重新安装
yum clean all
yum install -y 需要的包
依赖包
安装解密依赖包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
最后解密命令
python SecureCRTDecrypt.py 192.168.1.10.ini
结果:
收藏的用户(0) X
正在加载信息~
推荐阅读
最新回复 (0)
站点信息
- 文章2313
- 用户1336
- 访客11730336
每日一句
Biodiversity is Earth's safety net.
生物多样性是地球的安全网。
生物多样性是地球的安全网。
Thinkpad X1隐士 风扇声音过大的解决方法
iOS开发之VHBoomMenuButton使用教程
浅谈NIO界框架大佬——Netty
Win10版本20H2正式版官方ISO镜像大全
android ndk开发之asm/page.h: not found
Android Studio Arctic Fox | 2020.3.1使用问题
转载一篇微信WEB端接口说明
如何成为前端开发人员?
新手必看修改DSDT教程
Thinkpad x1 Extreme黑苹果10.14.5安装完成
ndk神奇问题之non-numeric second argument to `wordlist' function: '8.7z'
CreateProcessW要注意的细节问题
Swift 4.0扩展 WCDB 支持 SQL 语句
新会员