[网络安全] Linux权限维持-隐藏篇
知己知彼,方能百战不殆。本文带你一窥攻击者在Linux系统上常用的隐藏技巧,助你加固防线。
当攻击者拿下服务器权限后,第一件事往往不是搞破坏,而是想方设法藏起来------隐藏文件、隐藏进程、隐藏连接......让你查无可查。
下面这7种"隐身术",是红队和后门工具的常见套路,蓝队同学务必心中有数。
一. 隐藏文件:一个"点"就够了
在Linux下,文件名前面加个 . 就是隐藏文件。
ls -l 看不到,要用 ls -la 才能现形。
攻击者常把后门藏在:
/tmp/.ICE-unix/、/tmp/.X11-unix/等系统临时隐藏目录下。
防御建议 :定期用 ls -la 检查 /tmp 等可写目录,留意陌生隐藏文件。
二.篡改时间戳:鱼目混珠
touch -r 可以把后门文件的时间戳改成和正常文件一模一样。
比如让 webshell.php 的时间完全复制 index.php,管理员按时间排查时极易漏掉。
防御建议 :使用 stat 查看文件详细属性,或通过文件完整性监控工具(如 AIDE)发现异常。
四. 隐藏权限:chattr +i 让你删不掉
chattr +i test.txt 会给文件加上"不可修改"属性,连 root 都不能直接删除或覆盖。
ls -l 看不出任何异常,需要用 lsattr 才能发现。
shell
root@wh-VMware-Virtual-Platform:/home/hail# lsattr
--------------e------- ./1.txt
----i---------e------- ./test.txt
root@wh-VMware-Virtual-Platform:/home/hail# rm -rf test.txt
rm: 无法删除 'test.txt': 不允许的操作
#要想删除则移除文件的不可变属性,再删除
chattr -i test.txt
rm -rf test.txt
防御建议 :定期执行 lsattr -R /var/www /tmp 2>/dev/null,发现 +i 文件要警惕。
五. 抹去历史命令:不留操作痕迹
攻击者常用三种方式让 history 查不到自己干了什么:
- 临时关闭记录 :先敲一个 空格 ,再执行
set +o history,后续命令不进历史。 - 定向删除某条命令 :
history | grep "关键字"找到行号,history -d 行号删掉。 - 批量截断 :
sed -i '150,$d' .bash_history只保留前150行。
shell
# 1. 重新启用历史记录
set -o history
# 2. 将当前内存中的历史(包括之前的命令)强制写入文件
history -w # 覆盖写入 ~/.bash_history
# 或者使用 history -a 追加新命令(但已经丢失的命令无法找回)
防御建议 :将历史命令实时发送到远程日志服务器;或限制用户修改自己的 .bash_history 权限。
六.隐藏SSH登录:不留last/w记录
使用 ssh -T 参数可以登录但不记录在 w、who、last 中:
ssh -T root@靶机 /bin/bash -i
甚至不生成 ~/.ssh/known_hosts 文件。
防御建议 :开启 SSH 的 MaxSessions 日志审计,或用 auditd 监控 sshd 的登录行为。
七. 端口复用:80端口干22端口的活
攻击者可以让 80 端口同时提供 Web 服务和 SSH 登录,你查开放端口只能看到 80,根本想不到那里还藏着一个后门。
常用工具:sslh(端口共享)或 iptables 的 string 匹配 触发端口转发。
例如:向服务器发一个特殊字符串 threathuntercoming,iptables 就会把后续的 80 端口流量重定向到 22。
防御建议 :使用 netstat -anp 确认每个端口对应的进程;部署 IDS 检测异常字符串;定期审计 iptables 规则。
八.进程隐藏:让你 top/ps 都看不见
- libprocesshider :通过
LD_PRELOAD劫持系统函数,让指定进程在ps/top中完全消失。 - linux-inject:把恶意代码注入到已有正常进程,不创建新进程。
- Cymothoa:向运行中的进程注入 shellcode,直接变身后门。
防御建议 :使用 unhide 工具扫描隐藏进程;关注 CPU 异常但找不到来源的主机;部署 EDR 或基于 eBPF 的监控。
最后的话
未知攻,焉知防。
以上技巧并非教你作恶,而是希望运维和安全的同学能从中看清攻击者的套路,从而有针对性地加固系统:
- 定期检查隐藏文件、不可变属性、计划任务、服务及网络连接;
- 开启详细的命令审计和进程创建日志;
- 使用主机入侵检测系统(HIDS)或文件完整性监控。
安全路上,我们共同进阶。
- 本文仅用于技术研究与防御学习,请勿用于非法用途。