作者:360U1259595288(这位作者没有昵称哇)
预估稿费:300RMB
投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿
前言
在域网络中留隐蔽性高的后门一直是很多人追求的目标。今天分享一种基于域内对象ACL(Access Control Link访问控制链)的深度隐藏后门。
一直关注这方面的研究,后面会和大家分享系列的学习成果。
0x01 背景知识介绍
域网络中,域的组策略和脚本存放在域服务器的SYSVOL目录,所有域用户均可自由访问,但只有部分高权限用户才有修改权限。域内账号在登录域时,会查询、执行(如果有变化)属于自己的域策略、执行脚本。一定程度上说,控制了SYSVOL目录,就有很大概率控制域网络。
如果域中部署了登录日志审计软件,则会严格审计域内高权限账号的登录、使用情况。所以使用高权限用户控制域网络的方式,隐蔽性并不高。而且,一般来说,域策略会强制周期性修改高权限用户的密码,但是对低权限用户来说不一定有这个强制性要求,而且域中往往有很多用户几乎不怎么登录、使用。
如果低权限用户具备SYSVOL目录的修改权限,登录域时,因为权限不高颜值普通,不会被审计软件发现。现在的防护、监控类软件还没有过多关注目录的ACL,因此这种方式是一种很实用的隐蔽后门方式。
测试环境:Windows 2016 R2 英文版(域服务器,acllab.com);Windows 7 SP1中文版(域内主机)。
0x02 实现方式
以SYSVOL目录下的Policies目录测试实现方式。
第一步,下面的这张图,使用普通用户eviluser登录域客户端Windows 7。通过net use链接域服务器,可查看访问服务器共享的目录,但是没有写权限。
第二步,下面的这张图,表示在域服务器上,我们通过资源管理工具给Policies目录添加了写权限(也可以是完全控制权),并继承给所有子目录和文件。
接下来的这张图显示是Policies目录的安全选项卡,eviluser单独作为权限用户。正常情况下,普通用户都只有Authenticated users用户组权限。
第三步,下面的图,服务器中目录的ACL权限设置成功后,在原来的IPC连接中,普通域用户eviluser成功地往Policies目录写入了数据,证明具备了对该目录的写入权限。从而可以修改里面的策略和脚本,一种隐蔽的后门。
在实际的应用中,界面操作不方便,Powershell脚本方式可实现同样的功能,如下图。
通过PowerShell设置了目录的控制权限,接下来的事情和上面一样,不再啰嗦。
0x03 小结
这种后门方式,只是演示了ACL后门的一种具体形式,因为域中的对象太多,可以操控的ACL对象也很多。读者可以根据自己的需要,灵活选择目标的ACL作为目标进行修改,埋藏后门。
当然关于ACL的检测,微软也推出了专门的工具,ACL Scanner,如果周期性地是用该工具进行检测,还是能检测到这种类型的后门。