首页 » 实战填坑 » 正文

【内网渗透】IPC$链接的正确姿势&Linux/OSX上查找DC的方法

IPC$链接的正确姿势

1.Windows
加入过域的Windows机器
net use \\172.29.4.12\ipc$ "password" /pentest.lab\administrator
工作组机器
net use \\172.29.4.12\ipc$ "password" /user:administrator
映射共享目标C$到本地D盘
net use d: \\172.29.4.12\C$ 

2.Linux
需要先安装smbclient
sudo apt install smbclient

smbclient -L 172.29.4.12 -U administrator
建立C$连接
smbclient \\\\172.29.4.12\\C$ -U administrator

smbclient -L 172.29.4.12 -U pentest.lab/administrator

IPC$连接失败的常见原因

1 IPC连接是Windows NT及以上系统中特有的功能,由于其需要用到Windows NT中很多DLL函数,所以不能在Windows 9.x/Me系统中运行,也就是说只有nt/2000/xp才可以相互建立ipc$连接,98/me是不能建立ipc$连接的;
2 如果想成功的建立一个ipc$连接,就需要对方开启ipc$共享,即使是空连接也是这样,如果对方关闭了ipc$共享,你将建立失败;
3 你未启动Lanmanworkstation服务,它提供网络链结和通讯,没有它你无法发起连接请求(显示名为:Workstation);
4 对方未启动Lanmanserver服务,它提供了 RPC 支持、文件、打印以及命名管道共享,ipc$依赖于此服务,没有它远程主机将无法响应你的连接请求(显示名为:Server);
5 对方未启动NetLogon,它支持网络上计算机 pass-through 帐户登录身份;
6 对方禁止了NBT(即未打开139端口);
7 对方防火墙屏蔽了139和445端口;
8 你的用户名或者密码错误(显然空会话排除这种错误);
9 命令输入错误:可能多了或少了空格,当用户名和密码中不包含空格时两边的双引号可以省略,如果密码为空,可以直接输入两个引号""即可;
10 如果在已经建立好连接的情况下对方重启计算机,那么ipc$连接将会自动断开,需要重新建立连接。

错误号5,拒绝访问:很可能你使用的用户不是管理员权限的,先提升权限;
错误号51,Windows无法找到网络路径:网络有问题;
错误号53,找不到网络路径:ip地址错误;目标未开机;目标lanmanserver服务未启动;目标有防火墙(端口过滤);
错误号67,找不到网络名:你的lanmanworkstation服务未启动或者目标删除了ipc$;
错误号1219,提供的凭据与已存在的凭据集冲突:你已经和对方建立了一个ipc$,请删除再连;
错误号1326,未知的用户名或错误密码:原因很明显了;
错误号1792,试图登录,但是网络登录服务没有启动:目标NetLogon服务未启动;
错误号2242,此用户的密码已经过期:目标有帐号策略,强制定期要求更改密码。

Linux下查找DC的方式

rpcclient -U pentest.lab/administrator 172.29.4.12
枚举用户:
enumdomusers
获取密码组策略
getdompwinfo

更多命令,请查看:
http://bitvijays.github.io/LEF-IPS-P3-Exploitation.html

OSX下查找DC的命令

当前OSX机器已经加入了pentest.lab域
dsconfigad -show | awk '/Active Directory Domain/{print $NF}' pentest.lab
一键导出域的所有用户的信息
dsconfigad -h 172.29.4.12 -p 389 -x -b "cn=sers,dc=pentest,dc=lab" -W -D administrator
后面会提示你输入LDAP的密码

PS:如果域内机器很多,请谨慎使用该命令,因为导出的文件会很大