1.2 持久化
持久化
隐藏文件
创建系统隐藏文件
attrib +s +a +r +h filename/attrib +s +h filename
利用NTFS ADS (Alternate Data Streams) 创建隐藏文件
利用Windows保留字
aux|prn|con|nul|com1|com2|com3|com4|com5|com6|com7|com8|com9|lpt1|lpt2|lpt3|lpt4|lpt5|lpt6|lpt7|lpt8|lpt9
后门
sethc
``sethc.exe`` 是 Windows系统在用户按下五次shift后调用的粘滞键处理程序,当有写文件但是没有执行权限时,可以通过替换 ``sethc.exe`` 的方式留下后门,在密码输入页面输入五次shift即可获得权限。
映像劫持在高版本的Windows中,替换程序是受到系统保护的,需要使用其他的技巧来实现替换。
具体操作为在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Option 下添加项 sethc.exe ,然后在 sethc.exe 这个项中添加 debugger 键,键值为恶意程序的路径。
定时任务
Windows可以在用户登录前执行脚本,使用 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit 设置。
也可在 HKCU\Environment\ 路径下设置 UserInitMprLogonScript 来实现。
屏幕保护程序
Windows可以使用在用户名后加入 $ 来创建隐藏用户,这种帐户可在一定条件下隐藏,但是仍可以通过控制面板查看。
在创建隐藏用户的基础上,可以修改注册表的方式创建影子用户,这种方式创建的用户只能通过注册表查看。
CLR
Winlogon是一个Windows组件,用来处理各种活动,如登录、注销、身份验证期间加载用户配置文件、关闭、锁定屏幕等。这种行为由注册表管理,该注册表定义在Windows登录期间启动哪些进程。所以可以依靠这个注册表来进行权限维持。
注册表位置如下:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell用于执行exe程序HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit用于执行exe程序HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify用于执行dll文件
自启动
基于注册表的自启动
自启动目录, C:\Users\Username\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup 目录对特定用户生效, C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp 对所有用户生效。在NT6以前,两个目录为 C:\Documents and Settings\Username\Start Menu\Programs\StartUp / C:\Documents and Settings\All Users\Start Menu\Programs\StartUp 。
最后更新于