01阅读须知
此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。本文所提供的工具仅用于学习,禁止用于其他方面
02影子账户
在 Windows 操作系统中,影子用户通常是指那些不易被普通用户或系统管理员察觉的隐藏用户账户,创建影子用户常见的做法是在用户名后面添加 $ 符号,例如,admin$。通过这种方式创建的用户不会显示在 Windows 登录界面或用户控制面板中,因此常用于维持目标权限阶段。
03原理分析
在 Windows 操作系统中,影子用户通常使用System.DirectoryServices命名空间可以方便地管理用户和组。通过DirectoryEntry类,我们可以访问和操作本地计算机的用户和组。工具的核心功能是创建一个新用户,将其添加到Administrators和Remote Desktop Users组中,并将其设置为影子账户。
3.1 创建用户
在.NET中我们可以通过创建一个DirectoryEntry对象访问本地计算机的目录服务,具体实现代码如下所示。
DirectoryEntry AD = new DirectoryEntry("WinNT://" + Environment.MachineName + ",computer");
这里使用WinNT协议,该协议出现在Windows NT 4.0 及更高版本的计算机或域中的目录服务,专用于访问和管理 Windows 网络中的资源,包括本地用户和组、远程计算机上的用户和组、以及域用户和组。具体协议格式如下所示