ssh爆破问题
- Dominant language
- No language data
- Stars
- 1.5k
- Forks
- 153
- PR merge metrics
- No merged PRs in 30d
Description

如图,goby爆ssh显示成功,但实际上账户密码是错误的,我想goby和很多ssh爆破工具、脚本都是通过建立Session来判断是否爆破成功。但实际上某些设备你使用错误账号密码登录时好像也会建立session,导致误报。以65.187.136.4为例,ssh.Dial()和client.NewSession()结果err都是nil,但实际上这个session是让你继续输入正确账户密码而不是登录成功的session。因此我觉得可以在建立session后发送一个指令来判断ssh是否爆破成功,如下:
client, err := ssh.Dial("tcp", host, config)
if err == nil {
defer client.Close()
session, err := client.NewSession()
if err == nil {
defer session.Close()
combo, _ := session.CombinedOutput("whoami")
if find := strings.Contains(string(combo), "login"); !find {
result := fmt.Sprintf("SSH:%-20v %v:%-10v", host, user, pass)
return result
}
}
}
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.