当我尝试 ssh 到服务器时出现分段错误,ssh 在 sudo 模式下工作,但在用户模式下不工作。
这些是 ssh 中断的地方的 strace 位
open("/usr/include/pwd2.h", O_WRONLY|O_CREAT|O_APPEND|O_LARGEFILE, 0666) = -1 EACCES (Permission denied)
getpeername(3, {sa_family=AF_INET, sin_port=htons(222), sin_addr=inet_addr("xxx.xxx.xxx.xx")}, [16]) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
有人能给我一些关于这个问题的想法吗?
答案1
有人能给我一些关于这个问题的想法吗?
检查包裹:
# debsums openssh-server
/usr/share/lintian/overrides/openssh-server OK
/usr/share/man/man5/sshd_config.5.gz OK
/usr/share/man/man8/sshd.8.gz OK
/usr/share/man/man8/sftp-server.8.gz OK
/usr/lib/openssh/sftp-server OK
/usr/sbin/sshd OK
重新安装/升级 openssh-server:
sudo apt-get --reinstall install openssh-server
使用 gdb/valgrind 进行调试。
答案2
伙计,你中了 rootkit,重新安装!你的 ssh 二进制文件正在尝试将其使用的每个密码记入该文件,同时请记住,你在那里看到的每个密码都已被泄露。