标题: ipc的小总结 [转载] 返回
作者: magic[buaaytt]   [ 邮箱: nicholas_by@sina.com.cn 主页: ] 发表日期: 2002-09-30   浏览次数: 5215
    前几天闲来无事,在菜鸟乐园的搜索里打了个ipc,出了22篇文章,看完之后想总结一下,希望于人于己都能有些帮助,里面大部分都是别人说的话,我只是copy加上edit罢了。\r
\r
1、ipc$和空会话是不是一回事?\r
\r
    空连接是在没有信任的情况下与服务器建立的会话,换句话说,它是一个到服务器的匿名访问,你不需要提供用户名和密码。只需要键入net use \\ipipc$ "" /user:""就可以简单地和目标建立一个空连接(需要目标开放ipc$),具体的实现原理可以看看下面这篇文章(我是看不太懂)。http://www.sandflee.net/txt/list.asp?id=117。 对于NT,在默认安全设置下,借助空连接可以列举目标用户、共享,访问everyone权限的共享,访问小部分注册表等,没有什么利用价值。对2000作用就更小了。而且实现也不方便,需借助工具。\r
\r
    ipc$是为了让进程间通信而开放的命名管道,可以通过验证用户名和密码获得相应的权限,有许多的工具必须用到ipc$。默认共享是为了方便远程管理而开放的共享,包含了所有的逻辑盘(c$,d$,e$……)和系统目录winnt或windows(admin$)。\r
\r
2、怎样建立ipc$?\r
\r
    net use \\ipipc$ "密码" /user:"用户名" \r
\r
3、为什么我连不上IPC$?\r
\r
    这个问题的答案简直太多了:\r
\r
    (1)只有nt/2000/xp及以上系统才可以建立ipc$,如果你用的是98/me是没有该功能的。\r
    (2)确认你的命令没有打错,注意别多了或少了空格。当用户名和密码中不包含空格时两边的双引号可以省略。如果密码为空,就直接打两个引号""就行了。\r
\r
    (3)根据返回的错误号分析原因: \r
\r
         错误号5,拒绝访问 : 很可能你使用的用户不是管理员权限的,先提升权限; \r
         错误号51,Windows 无法找到网络路径 : 网络有问题; \r
         错误号53,找不到网络路径 : ip地址错误;目标未开机;目标lanmanserver服务未启动;目标有防火墙(端口过滤); \r
         错误号67,找不到网络名 : 你的lanmanworkstation服务未启动;目标删除了ipc$; \r
         错误号1219,提供的凭据与已存在的凭据集冲突 : 你已经和对方建立了一个ipc$,请删除再连。 \r
         错误号1326,未知的用户名或错误密码 : 原因很明显了; \r
         错误号1792,试图登录,但是网络登录服务没有启动 : 目标NetLogon服务未启动。(连接域控会出现此情况) \r
         错误号2242,此用户的密码已经过期 : 目标有帐号策略,强制定期要求更改密码。\r
\r
    (4)如果在已经建立好了连接的情况下对方重启机器了,那么ipc$连接也就自然断开了,所以还得重新建立连接。\r
\r
4、怎样打开目标的IPC$?\r
\r
    首先你需要获得一个不依赖于ipc$的shell,比如sql的cmd扩展、telnet、木马。当然,这shell必须是admin权限的。然后你可以使用shell执行命令 net share ipc$ 来开放目标的ipc$。从上一问题可以知道,ipc$能否使用还有很多条件。请确认相关服务都已运行,没有就启动它(不知道怎么做的请看net命令的用法)。还是不行的话(比如有防火墙,杀不了)建议放弃。\r
\r
5、关于映射共享\r
\r
    首先要建立了ipc$,就可以直接用IP加盘符加$访问。比如copy muma.exe\\IPd$pathmuma.exe 。或者先映射对方硬盘到自己的机器上再copy也可以,net use y: \\IPd$ 。然后 copy muma.exe y:pathmuma.exe 。当路径中包含空格时,须用""将路径全引住。\r
    用命令 net use \\IPipc$ /del 删除和一个目标的ipc$连接。 \r
    用命令 net use z: /del 删除映射的z盘,其他盘类推。 \r
    用命令 net use * /del 删除全部。会有提示要求按y确认\r
\r
6、连上ipc$之后我能做什么?\r
\r
    能使用管理员权限的帐号成功和目标连接ipc$,表示你可以和对方系统做深入“交流”了。很多初学者或者没搞懂ipc$是什么的连上就迫不及待用net user hacker hacker /add命令添加用户了。这里告诉大家,这样做的结果是在自己的机器上开了一个hacker hacker的用户,你的目的是在对方的机器里添加用户,所以要让对方的机器执行这个命令,所以你得有一个对方机器的shell,当然是admin权限的了。如果不知道自己的帐号是什么权限,可以用net user 帐号 查看,当然也是在对方的机器里才能这么做了。\r
\r
    最好是给对方开个后门,这就需要管理员权限了。可以用opentelnet,winshell等等这种只需要一行命令就搞定的简单的工具,用图形界面远程控制也行。但是如果你想学东西的话,我觉得用最少的工具,用最多的步骤来做这件事会比较好(个人看法)。再次重申一次,一定要用ipc$连上才行,而不是net use \\ipipc$这种空连接哦。\r
\r
    另外,也可以通过解administrator的密码来实现,这才是最好的不会被发觉的后门,当然前提是他不会经常更换密码并且也不能太复杂哦。\r
\r
看了这么多,自然要问如何防范啊?\r
\r
1、把ipc$和默认共享都删除了\r
           net share ipc$ /del \r
           net share admin$ /del \r
           net share c$ /del \r
           …………(有几个删几个)\r
但重启后还会有,这就需要改注册表。\r
\r
2、禁止建立空连接 \r
    首先运行regedit,找到如下主键[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLSA]把RestrictAnonymous(DWORD)的键值改为:00000001。 \r
\r
3、禁止自动打开默认共享 \r
    对于server版,找到如下主键[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesLanmanServerParameters]把AutoShareServer(DWORD)的键值改为:00000000。 \r
           对于pro版,则是[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesLanmanServerParameters]把AutoShareWks(DWORD)的键值改为:00000000。 \r
     如果上面说的主键不存在,就新建一个再改键值。 \r
\r
4、另一种是关闭ipc$和默认共享依赖的服务(不推荐) \r
           net stop lanmanserver \r
        可能会有提示说,XXX服务也会关闭是否继续。因为还有些次要的服务依赖于lanmanserver。一般情况按y继续就可以了。 \r
\r
5、还有一个办法就是装防火墙,或者端口过滤。防火墙的方法就不说了,端口过滤看这里: \r
        http://www.sandflee.net/txt/list.asp?id=98\r
\r
------------------------\r
帖子发表时间:09/28 17:30\r
当前位置: 20CN 精华区 > 安全基地 > 菜鸟乐园 返回

20CN缃戠粶瀹夊叏灏忕粍鐗堟潈鎵鏈
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
璁哄潧绋嬪簭缂栧啓锛NetDemon

绮CP澶05087286鍙