转载 

通过模拟ssh服务器端找回 ssh客户端存储密码(比如:MobaXterm)即 fake ssh

分类:运维    1190人阅读    IT小君  2020-12-09 20:52

题记:

上周服务器断了,本地登录处理·记不起root 密码,抓瞎了。MobaXterm 客户端上是保存了密码的,但是免费版无法查看。

于是想着可不可以假冒个服务器接收登录请求,解析出密码。

使用GO语言假冒一个服务器,代码如下:

package main
 
import (
	"github.com/gliderlabs/ssh"
	gossh "golang.org/x/crypto/ssh"
	"io/ioutil"
	"log"
)
 



func homeHandler(s ssh.Session) {
 
}
 
func passwordHandler(ctx ssh.Context, password string) bool {
	log.Printf("username:%s, password:%s\n", ctx.User(), password)
	return true
}
 
func main() {
	keyPath := "id_rsa"
	keyData, err := ioutil.ReadFile(keyPath)
	if err != nil {
		log.Fatal(err)
		return
	}
	key, err := gossh.ParsePrivateKey(keyData)
	if err != nil {
		log.Fatal(err)
		return
	}
 
	s := &ssh.Server{
		Addr:    "127.0.0.1:10005",
		Handler: homeHandler, //
		//PublicKeyHandler:
		PasswordHandler: passwordHandler,
	}
	s.AddHostKey(key)
	log.Fatal(s.ListenAndServe())
}

使用说明:

1、当前目录需要一个id_rsa文件,到用户目录.ssh拷贝一个就行

2、Addr: "127.0.0.1:10005" 改成自己的地址和端口

3、添加hosts映射,将你连接的服务器地址映射到127.0.0.1,比如

127.0.0.1  ddns.weiqinxue.cn

使用如下运行GO脚本(fake_ssh.go 为文件名):

go run fake_ssh.go

点击ssh连接服务器,可以看到账号密码如图:



点击广告,支持我们为你提供更好的服务

css+js实现的颜色渐变数字时钟动画特效

HTML5数字产品服务公司网站模板

响应式太阳能能源公司网站模板

css鼠标跟随文字模糊特效

html5 canvas彩色碎片组合球形旋转动画特效

html5图标下拉搜索框自动匹配代码

网页设计开发公司网站模板

有机水果蔬菜HTML5网站模板

响应式咖啡饮品宣传网站模板

HTML5现代家居装潢公司网站模板

html5 canvas进度条圆环图表统计动画特效

js+css3抽奖转盘旋转点餐代码

canvas炫酷鼠标移动文字粒子特效

现代时尚家具公司网站模板

中小型创意设计服务公司网站模板

HTML5 Canvas竖直流动线条背景动画特效

html5 svg夜空中星星流星动画场景特效

jQuery右端悬浮带返回顶部特效

响应式时尚单品在线商城网站模板

小众时尚单品在线电子商务网站模板

点击广告,支持我们为你提供更好的服务
 工具推荐 更多»
点击广告,支持我们为你提供更好的服务