freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

IPC$建立通道与用户权限的故事
2023-03-06 22:21:34
所属地 四川省

IPC$

IPC(Internet Process Connection),为了让进程之间通信所建立的管道,两个进程之间使用它可以进行数据交互,通过用户名和密码获得响应的权限。
使用net share查看本机共享目录:
IPC共享

IPC访问限制

  1. 同一时间,两个IP之间只允许建立一个连接
  2. 系统安装之后一般都对各个盘符进行了默认共享,如C$,D$,Admin$(C:\windows),但因为Windows系统存在用户访问控制(UAC)的原因,因此除了默认SID为500的用户Administrator之外其他的用户只有执行net time命令的权限,就算是本地账户管理组当中的用户也不行。但在域环境当中会有所不同,在接下来的实验当中会进行验证,如果需要看最后的结论请移步到文章末尾即可。
  • 注:IPC$一般会禁用空密码连接,并且目前的Windows系统在安装的时候会禁用Administrator用户,而是创建一个普通用户并添加到管理组内。

IPC建立条件

139或445端口被开启:如果连接的目标主机没有开放139或445端口,使用IPC连接,会提示找不到网络名。
● SMB协议(445端口):Windows文件打印共享服务使用的就是此端口,永恒之蓝也利用这个端口,还有在MSF当中的smb_login攻击模块的密码喷洒也使用的此端口。
SMB密码喷洒
● NETBios(139端口):NETBios协议是一种在局域网上的程序可以使用的应用程序编程接口(API)。

实验验证

这个问题困扰很久,因为在平时没有U盘或者虚拟机VMTools存在问题的时候,经常使用它来传输文件,当然Windows传输文件的方式不止这一种手段,比如就还有直接共享文件夹。接下来就对比几个实验验证什么用户能够使用IPC连接进行文件传输以及执行命令。

  • 实验一:同为管理员组的Administrator用户和cds用户分别建立IPC共享通道,是否都能执行命令?
  1. 查看本地管理组成员,并且查看开放共享
    查看本地管理组成员
    查看共享
  2. 分别用管理组普通用户cds和管理组用户Administrator用户建立连接并复制文件
    普通管理员执行命令
    Administrator执行命令
    ● 实验二:在域环境当中,当域账户为本地管理组成员是否能够执行IPC命令呢?
  3. 查看本地管理组与共享
    域中查看本地管理组成员
    域中查看共享
  4. 使用域账户建立IPC连接并执行命令
    使用域管理组账户执行命令
    结论
    通过实验可以看到在不存在域的时候,只有系统内置账号Administrator才有权限执行命令,但在域环境当中,只要域账户在本地账户管理组当中,就可以执行命令,为什么呢?下面是微软的官方文档,官方文档链接
    官方文档
    通过官方文档可知,当我们使用目标计算机上本地Administrators组成员的用户使用net use命令建立远程管理时,是没有执行管理任务的权限的。想要拥有管理任务的权限需要才有远程协助和远程桌面的方式。而针对域用户在本地管理组内的情况,登录到远程计算机则会使用管理员令牌,并且UAC不会生效。
# 系统安全
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者