文档章节

找回SecureCRT密码

twisted3
 twisted3
发布于 2016/07/27 16:16
字数 363
阅读 18
收藏 0

第一步:找到SecureCRT中session的配置文件:

http://jingyan.baidu.com/article/e4511cf32815e52b845eaf8b.html

第二步:解密对应的session中的password 加密串 解密脚本:http://www.synacktiv.com/ressources/VanDyke_SecureCRT_decrypt.py


#!/usr/bin/env python
#
# Decrypt SSHv2 passwords stored in VanDyke SecureCRT session files
# Can be found on Windows in:
#   %APPDATA%\VanDyke\Config\Sessions\sessionname.ini
# Tested with version 7.2.6 (build 606) for Windows
# Eloi Vanderbeken - Synacktiv

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))

命令:root# python VanDyke_SecureCRT_decrypt.py abc.ini即可。abc.ini就是crt的配置文件

注意:如果需要先安装crypto 的Python库

    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-devel

    yum install python-devel 

© 著作权归作者所有

共有 人打赏支持
twisted3
粉丝 18
博文 35
码字总数 30995
作品 0
广州
后端工程师
Ubuntu 14.10安装SecureCRT 7.3

Ubuntu 14.10下安装SecureCRT 7.3 1、软件准备 Ubuntu14.10 x64 SecureCRT7.3的版本:scrt-7.3.0-657.ubuntu13-64.x86_64.deb 下载地址:http://www.vandyke.com/download/securecrt/downloa......

Surjur
2015/07/01
0
0
巧用 SecureCRT 实现复杂的 ssh 登录过程自动化

以前公司的服务器都是在 SecureCRT 里直接 ssh 连接,但是最近公司处于安全审计考虑,在所有服务器前加了一层堡垒机,而且密码采用 kerberos 集中授权认证。这样问题就来了,虽然安全审计的目...

大数据之路
2015/12/31
0
0
VMware虚拟机、centos以及securecrt的安装

前言: 我们都知道,几乎服务器都是linux系统的而不是Windows的,所以非常有必要学习linux知识。但是学习成本有限,所以我们选择装虚拟机,然后在虚拟机中安装linux。 vmware虚拟机: 1、简介:...

贪挽懒月
05/13
0
0
SecureCRT 下载,安装,绝佳配色,实用配置,上传下载配置合集

Secure CRT 是一款支持 SSH2、SSH1、Telnet、Telnet/SSH、Relogin、Serial、TAPI、RAW 等协议的终端仿真程序,最吸引我的是,SecureCRT 支持标签化 SSH 对话,从而可方便地管理多个 SSH 连接...

chocoball
2014/02/05
0
4
[转载]如何将Putty生成的PrivateKey转换为SecureCRT所需的PublicKey

首先说明,标题不一定准确,因为盆地并未详细了解清楚这里的公钥、私钥机制,只是根据以前的印象有个大概的理解,且最终以解决问题为主要目的,并未深究。标题的中的PrivateKey和PublicKey分...

加菲猫BigFans
2013/08/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

49.Nginx防盗链 访问控制 解析php相关 代理服务器

12.13 Nginx防盗链 12.14 Nginx访问控制 12.15 Nginx解析php相关配置(502的问题) 12.16 Nginx代理 扩展 502问题汇总 http://ask.apelearn.com/question/9109 location优先级 http://blog....

王鑫linux
今天
1
0
Nginx防盗链、访问控制、解析php相关配置、Nginx代理

一、Nginx防盗链 1. 编辑虚拟主机配置文件 vim /usr/local/nginx/conf/vhost/test.com.conf 2. 在配置文件中添加如下的内容 { expires 7d; valid_referers none blocked server_names *.tes......

芬野de博客
今天
0
0
spring EL 和资源调用

资源调用 import org.springframework.beans.factory.annotation.Value;import org.springframework.context.annotation.PropertySource;import org.springframework.core.io.Resource;......

Canaan_
今天
1
0
memcached命令行、memcached数据导出和导入

一、memcached命令行 yum装telnet yum install telent 进入memcached telnet 127.0.0.1 11211 命令最后的2表示,两位字节,30表示过期时间(秒) 查看key1 get key1 删除:ctrl+删除键 二、m...

Zhouliang6
今天
1
0
Linux定时备份MySQL数据库

做项目有时候要备份数据库,手动备份太麻烦,所以找了一下定时备份数据库的方法 Linux里有一个 crontab 命令被用来提交和管理用户的需要周期性执行的任务,就像Windows里的定时任务一样,用这...

月夜中徘徊
今天
1
1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部