什么是IPC

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是IPC相关的知识,希望对你有一定的参考价值。

IPC$(Internet Process Connection) 是共享 " 命名管道 " 的资源,它是为了让进程间通信而开放的命名管道,通过提供可信任的用户名和口令,连接双方可以建立安全的通道并以此通道进行加密数据的交换,从而实现对远程计算机的访问。 IPC$ 是 NT/2000 的一项新功能,它有一个特点,即在同一时间内,两个 IP 之间只允许建立一个连接。 NT/2000 在提供了 ipc$ 功能的同时,在初次安装系统时还打开了默认共享,即所有的逻辑共享 (c$,d$,e$ …… ) 和系统目录 winnt 或 windows(admin$) 共享。所有的这些,微软的初衷都是为了方便管理员的管理,但在有意无意中,导致了系统安全性的降低。
平时我们总能听到有人在说 ipc$ 漏洞, ipc$ 漏洞,其实 ipc$ 并不是一个真正意义上的漏洞 , 我想之所以有人这么说,一定是指微软自己安置的那个‘后门':空会话( Null session )。

更详细的内容请见百度百科:http://baike.baidu.com/view/373.htm
参考技术A IPC:IPC 最早的名字叫工控机,但现在,更时髦的叫法是产业电脑或工业电脑。因为 IPC不象 PC 是个最终产品,人们往往感觉不到它的存在。人们在看到电子眼、监控器、ATM柜员机、彩票机等设备时,也联想不到它们和工控机之间的关系,但是,打开它们的外壳,里面设备运行的核心都是 IPC,IPC已经在各行各业各个领域显示出巨大的市场潜力。特别是在PC市场去年以来萎缩下滑尽显颓势的环境下,IPC 市场已经连续几年表现出了强劲的增长态势,据国内最大的IPC厂商研祥智能股份的樊小宁先生介绍,在2000年时,国内 IPC 市场的需求已经超过了20亿元。
SMB:为了能沟通,你和我都需要共同的语言,如中文或英文。计算机也一样,有很多计算机“语言”用于沟通互连在网上的机器,这些语言叫“协议”。TCP/IP, NETBEUI, IPX, SNA 和 Appletalk都是协议。有一种很流行的协议,它能使你共享文件,磁盘,目录,打印机,甚至网络端口。这个协议叫做SMB(Server Message Block)标准,它能被用于Warp连接和客户端与服务器之间的信息沟通.
WMI:WMI是Windows 2K/XP管理系统的核心;对于其他的Win32操作系统,WMI是一个有用的插件。WMI以CIMOM为基础,CIMOM即公共信息模型对象管理器(Common Information Model Object Manager),是一个描述操作系统构成单元的对象数据库,为MMC和脚本程序提供了一个访问操作系统构成单元的公共接口。有了WMI,工具软件和脚本程序访问操作系统的不同部分时不需要使用不同的API;相反,操作系统的不同部分都可以插入WMI,如图一所示(该图来自MSDN),工具软件和WMI可以方便地读写WMI。
参考技术B ipc$(internet
process
connection)是共享\"命名管道\"的资源(大家都是这么说的),它是为了让进程间通信而开放的命名管道,可以通过验证用户名和密码获得相应的权限,在远程管理计算机和查看计算机的共享资源时使用。
利用ipc$,连接者甚至可以与目标主机建立一个空的连接而无需用户名与密码(当然,对方机器必须开了ipc$共享,否则你是连接不上的),而利用这个空的连接,连接者还可以得到目标主机上的用户列表(不过负责的管理员会禁止导出用户列表的)。
我们总在说ipc$漏洞ipc$漏洞,其实,ipc$并不是真正意义上的漏洞,它是为了方便管理员的远程管理而开放的远程网络登陆功能,而且还打开了默认共享,即所有的逻辑盘(c$,d$,e$……)和系统目录winnt或windows(admin$)。
所有的这些,初衷都是为了方便管理员的管理,但好的初衷并不一定有好的收效,一些别有用心者(到底是什么用心?我也不知道,代词一个)会利用ipc$,访问共享资源,导出用户列表,并使用一些字典工具,进行密码探测,寄希望于获得更高的权限,从而达到不可告人的目的.
解惑:
1)ipc连接是windows
nt及以上系统中特有的远程网络登陆功能,其功能相当于unix中的telnet,由于ipc$功能需要用到windows
nt中的很多dll函数,所以不能在windows
9.x中运行。
也就是说只有nt/2000/xp才可以建立ipc$连接,98/me是不能建立ipc$连接的(但有些朋友说在98下能建立空的连接,不知道是真是假,不过现在都2003年了,建议98的同志换一下系统吧,98不爽的)
2)即使是空连接也不是100%都能建立成功,如果对方关闭了ipc$共享,你仍然无法建立连接
3)并不是说建立了ipc$连接就可以查看对方的用户列表,因为管理员可以禁止导出用户列表
参考技术C IPC:进程间通信。
有若干方法:
比如:消息,管道,内存映射文件,网络等等都可以实现进程间通信
参考技术D 哪方面的IPC啊,,英文缩写在不同的领域是不同的。

以上是关于什么是IPC的主要内容,如果未能解决你的问题,请参考以下文章

linux里的ipc是啥意思

ipc产品是啥意思呢?

什么是IPC标准

IPC是啥机构?

ipc入侵方法

什么是ipc?我该如何使用它?