你正在使用哪个版本的Go(go version
)?
$ go version
go version go1.15.6 linux/arm64
这个问题在最新版本中是否会重现?
我正在使用
golang.org/x/crypto v0.0.0-20201124201722-c8d3bf9c5392 [v0.0.0-20201203163018-be400aefbc4c]
你正在使用什么操作系统和处理器架构(go env
)?
go env
输出
$ go env
GO111MODULE=""
GOARCH="arm64"
GOBIN=""
GOCACHE="/home/ubuntu/.cache/go-build"
GOENV="/home/ubuntu/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="arm64"
GOHOSTOS="linux"
GOINSECURE=""
GOMODCACHE="/home/ubuntu/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/ubuntu/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_arm64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/home/ubuntu/ssh-honeypot/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build038631070=/tmp/go-build -gno-record-gcc-switches"
你做了什么?
我正在编写一个SSH蜜罐。当接收连接时,有时由于解组错误而无法接受连接。我不确定这是否是一个可以解决的问题。
如果我必须猜测,可能断开消息结构的语言字段中存在不受支持的字符。
不幸的是,没有简单的方法来复现。我只是运行我的蜜罐,偶尔会出现这些错误。
你期望看到什么?
我期望看到成功的认证。
你看到了什么?
在我调用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
1条答案
按热度按时间kknvjkwl1#
/cc @FiloSottile