【实验目的】
通过使用AccessChk检测工具搜集系统的配置信息,发现存在弱注册表权限和弱服务权限对其进行利用并成功提权,了解并掌握弱注册表权限和弱服务权限的原理。
【知识点】
注册表,弱权限,服务,AccessChk
【实验原理】
弱服务权限:由SYSTEM创建的服务存在弱权限,会导致提权。如果低权限用户可以修改服务配置,也就是,修改 binPath 为一个恶意二进制文件并重启该服务,那么,恶意二进制文件就将以SYSTEM权限被执行。
弱注册表权限:在Windows中,每一个服务都有一个注册键,而且这些注册键位于HKLM\SYSTEM\CurrentControlSet\Services\<service_name>
,如果Authenticated Users或NT AUTHORITY\INTERACTIVE有任一服务的完全控制权,那么你就可以换掉要该service要运行的二进制文件。
为了确保其创建的环境是安全的,Windows 管理员通常需要了解特定用户或组对哪此类型的资源具有访问权限,资源包括文件、目录、注册表项、全局对象和 Windows 服务等。AccessChk 能够以直观的界面和输出快速检测此类问题。
参数 | 说明 |
---|---|
-a | 名称是 Windows 帐户权限。 指定"*" 为名称以显示分配给用户的所有权限。 请注意,指定特定权限时,仅显示直接分配给此权限的组和帐户。 |
-c | 名称是 Windows 服务,例如ssdpsrv 。 指定"*" 作为名称,以显示所有服务和scmanager ,检查服务控制管理器的安全性。 |
-d | 仅进程目录或顶级键 |
-e | 令显示明确设置的完整性级别(Windows Vista 以及更高级别) |
-f | 如果遵循-p ,则显示包括组和权限在内的进程令牌完整信息。 否则是由逗号分隔的帐户列表,用于从输出进行筛选。 |
-h | 名称是文件或打印机共享。 将"*" 指定为显示所有共享的名称。 |
-i | 转储完整访问控制列表时,忽略仅具有继承的 ACE 的对象。 |
-k | 名称是注册表项,例如hklm\software |
-l | 显示完整的安全描述符。 添加-i 以忽略继承的 ACE。 |
-n | 仅显示没有访问权限的对象 |
-o | 名称是对象管理器命名空间中的对象(默认为根)。 若要查看目录中的内容,请指定以斜杠为结尾的名称,或添加-s 。 添加-t 和对象类型(如部分),以便仅查看特定类型的对象。 |
-p | 名称是进程名称或 PID,例如cmd.exe (将"*" 指定为显示所有进程的名称)。 添加-f 以显示包括组和权限在内的进程令牌完整信息。 添加-t 以显示线程。 |
-q | 省略横幅 |
-r | 仅显示具有访问权限的对象 |
-s | Recurse |
-t | 对象类型筛选器,例如"section" |
-u | 禁止显示错误 |
-v | 详细(包括 Windows Vista 完整性级别) |
-w | 仅显示具有写入权限的对象 |
【软件工具】
服务器:Windows Server 2008 1台;防火墙 1台;Kali Linux台;Windows 10 1台;
交换机/路由:路由器 1台;
软件:冰蝎;AccessChk;
【实验拓扑】
已在FreeBuf发表 0 篇文章
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf
客服小蜜蜂(微信:freebee1024)