一、实验目的
1.什么是ipc$漏洞。
2.在什么条件下能利用ipc$这个漏洞。
3.如何利用ipc$这个漏洞达到我们想要的目的。
4.如何防范黑客利用这个漏洞攻击我们的电脑。
二、实验内容
步骤一:编写BAT文件。:批文件,上面编写你想要实现对应功能的dos命令
例:添加账号的dos命令
net user pp45(账户名) 123456(密码) \add(注意空格)
需要注意的是,保存文件时需添加bat后缀,保存格式为所以文件,如此才能生成批文件。
步骤二:与目标主机建立IPC$连接。
使用命令:Net use \\ip\ipc$ 密码 /user:用户名 (注意空格)
步骤三:拷贝文件至目标主机。
使用命令:copy 文件名 \靶机IP\c$(注意,需先进入文件的路径中,通常使用cd \)
参数说明:
c$:通过ipc$共享到靶机的C盘,c$是默认的共享盘
计划任务添加完毕后,使用命令“net use * /del”断开IPC$连接。
步骤五:物理链接靶机看目的是否达到
三、实验原理
1.ipc$漏洞的原理
首先,他是基于 IPC$共享的漏洞,但这实际不是共享,而是提供一种访问管道;IPC全称“Internet Process Connection”,顾名思义,是为了进程间通信而开放的命名管道。可以通过验证用户名和密码获得相应的权限,在远程管理计算机和查看计算机的共享资源时使用。
利用IPC$,连接者甚至可以与目标主机建立一个空的连接而无需用户名与密码(当然,对方机器必须开了ipc$共享,否则你是连接不上的),而利用这个空的连接,连接者还可以得到目标主机上的用户列表(不过负责的管理员会禁止导出用户列表的)。
2.那他如何成为了一个漏洞呢?
IPC连接是Windows NT及以上系统中特有的远程网络登陆功能,其功能相当于Unix中的Telnet,由于IPC$功能需要用到Windows NT中的很多DLL函数,所以不能在Windows 9.x中运行。也就是说只有nt/2000/xp才可以建立ipc$连接,98/me是不能建立ipc$连接的
即使是空连接也不是100%都能建立成功,如果对方关闭了ipc$共享,你仍然无法建立连接,并不是说建立了ipc$连接就可以查看对方的用户列表,因为管理员可以禁止导出用户列表
四、实验环境
攻击机:winxp
靶机:win2003
在VMware上实现的虚拟环境
五、实验步骤
1.与靶机建立ipc$链接
2.将批处理文件复制共享到靶机的C盘上
3.编写的批文件内容是添加一个账户,账户名为pp45,密码为123456
4.确定靶机的时间后,为其布置一个两分钟后的作业,及两分钟后执行我们刚刚写的批文件,添加一个名为pp45的用户
5.然后,我们物理连接到靶机上,到了两分钟后,我们可以用命令看到,这个pp45的用户就出现了
六、实验总结
还有很多知识点我还没有理解透彻,这个实验虽然步骤很简单,但这个知识的背后,还有很多考究
还有如何防范黑客利用这个漏洞攻击我们的电脑呢?
1禁止空连接进行枚举(此操作并不能阻止空连接的建立,引自《解剖win2000下的空会话》)
首先运行regedit,找到如下组建[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA]把RestrictAnonymous = DWORD的键值改为:00000001(如果设置为2的话,有一些问题会发生,比如一些WIN的服务出现问题等等)
2禁止默认共享
1)察看本地共享资源
运行-cmd-输入net share
2)删除共享(每次输入一个)
net share ipc$ /delete
net share admin$ /delete
net share c$ /delete
net share d$ /delete(如果有e,f,……可以继续删除)
3)停止server服务
net stop server /y (重新启动后server服务会重新开启)
4)修改注册表
运行-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。
如果上面所说的主键不存在,就新建(右击-新建-双字节值)一个主健再改键值。
3永久关闭ipc$和默认共享依赖的服务:lanmanserver即server服务
控制面板-管理工具-服务-找到server服务(右击)-属性-常规-启动类型-已禁用
4安装防火墙(选中相关设置),或者端口过滤(滤掉139,445等),或者用新版本的优化大师
5设置复杂密码,防止通过ipc$穷举密码(此段为转载)