I'm writing an SSH honeypot. When receiving connections, sometimes, their connection isn't accepted because of an unmarshal error. I'm not sure if this is an issue that can be resolved.
If I had to guess, maybe unsupported characters are in the Language field of the disconnectMsg struct.
Unfortunately, there's no easy way to reproduce. I just ran my honeypot and got these errors occasionally.
What did you expect to see?
I expected to see a successful authentication.
What did you see instead?
I receive these messages in my logs after calling ssh.NewServerConn:
[DBG] SSH password attempt from 142.93.52.3:48066.
[DBG] Username: root
[DBG] Password: Password
[DBG] Could not initiate SSH handshake: ssh: unmarshal error for field Language of type disconnectMsg
What version of Go are you using (
go version
)?Does this issue reproduce with the latest release?
I am using
What operating system and processor architecture are you using (
go env
)?go env
OutputWhat did you do?
I'm writing an SSH honeypot. When receiving connections, sometimes, their connection isn't accepted because of an unmarshal error. I'm not sure if this is an issue that can be resolved.
If I had to guess, maybe unsupported characters are in the Language field of the disconnectMsg struct.
Unfortunately, there's no easy way to reproduce. I just ran my honeypot and got these errors occasionally.
What did you expect to see?
I expected to see a successful authentication.
What did you see instead?
I receive these messages in my logs after calling ssh.NewServerConn: