如何让我们的OpenSSH更安全

2021-03-15    分类: 网站建设

 

SSH与OpenSSH


1
PermitRootLogin no

2、仅使用 SSH Protocol 2

3、禁用空密码

1
PermitEmptyPasswords no

4、用户登录控制

 

1
2
AllowUsers user1@host1 user1@!* *@*
DenyUsers user2

5、配置 Idle Log Out Timeout 间隔

1
2
ClientAliveInterval 300
ClientAliveCountMax 0

 

6、禁用基于主机的身份验证

1
HostbasedAuthentication no

7、禁用用户的 .rhosts 文件

1
IgnoreRhosts yes

8、强密码策略(生成14位随机字符密码)

1
</dev/urandom tr -dc '!@#$%^&*()-+=0-9a-zA-Z' | head -c14; echo ""

9、pam_chroot

通过ssh远程登录的用户将被限制在jail环境中。

10、访问控制

 

1
2
tcpwrapper(/etc/hosts.allow,/etc/hosts.deny)
iptables(限制源IP等)

二、攻防对抗

一旦攻击者获取了相关权限,就可能安装openssh后门、或者隐身登录等。接下来我们看看如何让攻击者无所遁形。

隐身登录(登录后,不能通过w、who查看到)

通过ssh –T来连接,但-T相当于notty,ctrl+C会中断会话;

另外,大家都知道,w查看时是通过utmp二进制log,如果攻击者在获取权限后,只要修改了utmp,就可以达到隐身效果,管理员再登录上来的时候,通过w、who就看不到已经登录的攻击者了,如下所示。

OpenSSH

当然,这样操作会造成整个utmp为空,如果是在管理员登录之后再操作的话,还是会发现异常的。

同时也要处理下wtmp,否则还是会被审计到。

那么如何快递排查呢,我们可以通过ps命令查看进程,如下图所示。

我们可以看到当攻击者处理掉自己的记录后,管理员虽然通过w、who看不到,但是进程中却存在着攻击者登录申请的TTY。

OpenSSH

以上只是简单的隐藏,通常情况下,攻击者获取权限后,会安装openssh后门,成功运行后门后,攻击者通过后门登录将不记录任何日志,正常用户登录该主机或者通过该主机通过ssh连接其他主机时,都会被后门记录到账号密码。

这里我们介绍如何利用操作系统自身的工具手工快速查找后门,主要用到strace、strings、grep。

通过openssh后门功能中会记录正常用户登录账号密码,因此猜测会用到open系统调用,只要在登录是用strace跟踪sshd打开的系统调用,然后过滤open,就应该能获取到记录密码的文件及路径。

如何让我们的OpenSSH更安全
文章位置:/news28/105228.html

成都网站建设公司_创新互联,为您提供关键词优化网站营销建站公司网站收录网站排名用户体验

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联