论坛: 系统集成 标题: Windows98/2000/xp/2003访问xp的问题(转载) 复制本贴地址    
作者: guang0701 [guang0701]    论坛用户   登录
    有人说启用guest、有人甚至说安装netbeui等。现将正确的说法总结一下,注意我只说网络连接正常且权限允许的情况下98/2000/xp/2003访问xp/2003的用户验证问题。
    首先关于启用guest为什么不能访问的问题。
    1。默认情况下,xp 禁用guest帐户
    2。默认情况下,xp的本地安全策略禁止guest用户从网络访问
    3。默认情况下,xp的本地安全策略-用户权限指派里,“空密码用户只能进行控制台登陆”是启用的,也就是说,空密码的任何帐户都不能从网络访问只能本地登陆,guest默认空密码・・・
    所以,如果需要使用guest用户访问xp的话,要进行上面的三个设置:启用guest、修改安全策略允许guest从网络访问、禁用3里面的安全策略或者给guest加个密码。
    有时还会遇到另外一种情况:访问xp的时候,登录对话框中的用户名是灰的,始终是guest用户,不能输入别的用户帐号。
    原因是这个安全策略在作怪(管理工具-本地安全策略-安全选项-“网络访问:本地帐户的共享和安全模式”)。默认情况下,xp的访问方式是“仅来宾”的方式,那么你访问它,当然就固定为guest不能输入其他用户帐号了。
    所以,访问xp最简单的方法就是:不用启用guest,仅修改上面的安全策略为“经典”就行了。别的系统访问xp就可以自己输入帐户信息。
   至于访问2003,默认情况下2003禁用guest,但是没有xp那个讨厌的默认自相矛盾的来宾方式共享,所以可以直接输入用户名密码访问。

地主 发表时间: 04-08-02 14:45

回复: nxwg [nxwg]   论坛用户   登录
你发这个贴子的目的是什么????

B1层 发表时间: 04-08-02 21:38

回复: guang0701 [guang0701]   论坛用户   登录
自己也问过这个问题
觉得好,觉得对大家有用就发了


[此贴被 即将删除(guang0701) 在 08月03日10时43分 编辑过]

B2层 发表时间: 04-08-03 09:29

回复: roveman [roveman]   论坛用户   登录
说的不错,我能不能请教你一下?
我用的是2003,原来我的98机器可以访问他来着,有一天我看了20cn里的东西,我现在不知道改了什么设置。现在我在98机器网络邻居里双击2003的机器,就会说“没有访问资源的权限”。我要改什么才能改回来??

B3层 发表时间: 04-08-05 22:03

回复: ch2001728 [ch2001728]   论坛用户   登录
我是菜鸟问个简单的问题,
是不是要登陆别人的计算机要得先在别人机子上改以上的操作啊?
还是只要在自己的机子上改就可以了?
输入的是自己的用户名是吗?.

B4层 发表时间: 04-08-08 16:48

回复: guang0701 [guang0701]   论坛用户   登录
这个是Windows98/2000/xp/2003访问xp
如果你要访问的主机是XP就要改别人的机器了

B5层 发表时间: 04-08-09 09:46

回复: ch2001728 [ch2001728]   论坛用户   登录
我是想看他的机子里面的每天的键盘记录请问有什么方法?

B6层 发表时间: 04-08-09 18:16

回复: sea0x [sea0x]   论坛用户   登录
我�@也是有���P于�L��的���}。但怪是win2k或win98�L��win98,在网上��居可以看到�@台机器�o但�p�羲�之后立即就��出���υ�窗�f�s�@�������]有�嘞��倪@��站登��。
怎么是�@�拥哪亍6�有的机器win98或win2k又可以�L��的。困�牢伊撕芫谩�


有�]人看看�@是怎回事。
�x。

B7层 发表时间: 04-08-11 10:45

回复: tiandayu [tiandayu]   论坛用户   登录
我也有类似的问题,我的WIN2000SERVER版,我能访问XP,WIN2000的机器,但是对方访问我时就说没有权限,如何设置啊?

B8层 发表时间: 04-08-18 15:40

回复: lqfrla [lqfrla]   论坛用户   登录
哦知道了

B9层 发表时间: 04-08-27 22:40

回复: zhuzai21 [zhuzai21]   论坛用户   登录
非常感谢,我已经被这各问题困惑好久了

B10层 发表时间: 04-09-03 08:57

回复: rrrihc [rrrihc]   论坛用户   登录
我也遇到了这个问题啊,,,,请给予解决啊

B11层 发表时间: 04-09-06 08:50

回复: baihome [baihome]   论坛用户   登录
好一点道理

B12层 发表时间: 04-09-06 18:49

回复: baihome [baihome]   论坛用户   登录
好一点道理

B13层 发表时间: 04-09-06 18:52

回复: jhtslove [jhtslove]   论坛用户   登录
我刚前段子碰到xp是能访问win2000的,可是win2000不能访问xp郁闷死了,太感谢你啦hoho

B14层 发表时间: 04-09-14 15:35

回复: ben1981 [ben1981]   论坛用户   登录
我想问楼主讲噶野系咪同共享打印机一样有关????

B15层 发表时间: 04-09-26 09:02

回复: seagate [seagate]   论坛用户   登录
很简单,只要计算机所在的域名一样,就可以互相访问了。
    guest没有开,网络访问为仅来宾..


B16层 发表时间: 04-10-07 23:01

回复: bear2000 [bear2000]   论坛用户   登录
我办公室有两台笔记本,一台打印机,1号机装的是home系统,2号机装的是professional(连接打印机),现在想用1号机共享打印机,但是网上邻居无法访问2号(同一工作组中),连登陆界面都没有。你说的这些设置home里都没有,是不是设2号机就行了?

B17层 发表时间: 05-01-12 17:02

回复: zh0377 [zh0377]   论坛用户   登录
不错的帖子

B18层 发表时间: 05-01-19 00:03

回复: xunfang [xunfang]   论坛用户   登录
你以为所以的计算机都会加入域吗?

B19层 发表时间: 05-02-02 18:41

回复: yingxiong1 [yingxiong1]   论坛用户   登录
还是不懂!!!!!!!!!!!!!!!!!!!!

B20层 发表时间: 05-04-07 09:10

回复: nallfather [nallfather]   论坛用户   登录
Windows网上邻居互访的基本条件:   

  1) 双方计算机打开,且设置了网络共享资源;

  2) 双方的计算机添加了 "Microsoft 网络文件和打印共享" 服务;

  3) 双方都正确设置了网内IP地址,且必须在一个网段中;

  4) 双方的计算机中都关闭了防火墙,或者防火墙策略中没有阻止网上邻居访问的策略。

  Windows 98/2000/XP/2003访问XP的用户验证问题   

  首先关于启用Guest为什么不能访问的问题:   

  1、默认情况下,XP 禁用Guest帐户

  2、默认情况下,XP的本地安全策略禁止Guest用户从网络访问

  3、默认情况下,XP的 本地安全策略 -> 安全选项 里,"帐户:使用空密码用户只能进行控制台登陆"是启用的,也就是说,空密码的任何帐户都不能从网络访问只能本地登陆,Guest默认空密码......   

  所以,如果需要使用Guest用户访问XP的话,要进行上面的三个设置:启用Guest、修改安全策略允许Guest从网络访问、禁用3里面的安全策略或者给Guest加个密码。   

  有时还会遇到另外一种情况:访问XP的时候,登录对话框中的用户名是灰的,始终是Guest用户,不能输入别的用户帐号。   
  原因是这个安全策略在作怪(管理工具 -> 本地安全策略 -> 安全选项 -> "网络访问:本地帐户的共享和安全模式")。默认情况下,XP的访问方式是"仅来宾"的方式,那么你访问它,当然就固定为Guest不能输入其他用户帐号了。   

  所以,访问XP最简单的方法就是:不用启用Guest,仅修改上面的安全策略为"经典"就行了。别的系统访问XP就可以自己输入帐户信息。   

  至于访问2003,默认情况下2003禁用Guest,但是没有 XP 那个讨厌的默认自相矛盾的来宾方式共享,所以可以直接输入用户名密码访问。   

  一个小型办公局域网,都是winxp系统,都能上外网,也能看到对方计算机,却不能看到对方共享的计算机提示网络路径不正确,或你没有权限使用网络 大概就是这个意思 我记的不太清楚!!来宾帐户我也启用了!winxp的防火墙也是关闭的,ip地址也没什么问题!!希望大家给分析一下!!非常感谢!   

  原因:Win2000/XP中存在安全策略限制。   

  有时,Win2000/XP"聪明"过了头,虽然我们已经启用了Guest账户,从Win98中却仍然无法访问Win2000/XP,比如使用了类似瑞星等的防火墙漏洞修补,它会修改"拒绝从网络访问这台计算机"的策略,按下面的方法修改回来:   

  开始 -> 运行 -> gpedit.msc -> 计算机配置 -> windows设置 -> 本地策略 -> 用户权利分配 -> 删除"拒绝从网络访问这台计算机"中的guest用户。

  Win2000/XP与Win98互访   

  如果两台电脑都使用Win2000/XP操作系统,那么组建局域网是一件非常简单轻松的事情,当硬件连接完成后,正常情况下立即可以在"网上邻居"中看到对方。但如果局域网中有一台电脑使用Win98,那情况可就不一定了,我们经常会发觉虽然Ping命令可以通过,但仍然无法在"网上邻居"中实现互访,这时该怎么办呢?

  对策一:在Win2000/XP中启用Guest用户。在Win2000/XP系统安装之后会缺省建立两个用户账户,即Administrator(系统管理员)和Guest(来宾账户),所有在本地计算机没有被分配到账户的用户都将默认使用Guest账户,该账户是没有密码的。不过,在缺省设置下,这个Guest账户并未被启用,我们可以从"控制面板 管理工具 计算机管理 本地用户和组 用户"中找到"Guest"账户,并用鼠标右击打开"Guest属性"对话框,去除这里的"账户已停用"复选框上的对钩标记,这样退出后就可以从Win98中访问到Win2000/XP了。   

  其实,启用了Guest账户后,最大的好处是从Win98访问Win2000/XP时就不需要输入用户名和密码了,这种方法比较适合于用户不确定、访问量较大的局域网,但对家庭用户来说并不适用。

  对策二:检查Win2000/XP中是否存在安全策略限制。有时,Win2000/XP"聪明"过了头,虽然我们已经启用了Guest账户,从Win98中却仍然无法访问Win2000/XP,这时就要从"控制面板 管理工具 本地安全策略 本地策略 用户权利指派"中找到"从网络访问此计算机"或者"拒绝从网络访问这台计算机",然后检查一下其中是否出现了Guest账户或者其他对应的账户,然后根据不同情况进行添加或者删除即可。

  对策三:停用本地连接上的防火墙。防火墙是充当网络与外部世界之间的保卫边界的安全系统,微软在WinXP中为用户提供了一个内置的Internet连接防火墙(ICF),启用后可以限制某些不安全信息从外部进入内部网络。不过,如果您是在本地连接上启用了这个防火墙,那么就会造成工作组之间无法互访,出现"XXX无法访问"、"您可能没有权限使用网络资源"、"请与这台服务器的管理员联系以查明您是否有访问权限"、"找不到网络路径"等类似的提示,此时请停用本地连接的防火墙屏蔽。

  对策四:为WinXP添加NetBEUI协议。其实,直接添加NetBEUI协议对于解决不能互访的问题有时反而更为简单一些,而且它可以解决上面提到的启用防火墙的问题。Win98安装时会自动安装NetBEUI协议,但由于WinXP已经不再提供对NetBEUI协议的技术支持,因此只能手工添加了。   

  找出WinXP安装光盘,进入"valueaddMsftNetNetbeui"文件夹下,这里有Nbf.sys、Netbeui.txt、Netnbf.inf共3个文件,先将Nbf.sys文件复制到本机的"WindowsSystem32Drivers"文件夹下(这里的本机指安装了WinXP的那台电脑),再将Netnbf.inf文件复制到本机的"WindowsINF"文件夹下,Netbeui.txt文件可有可无。不过, INF文件夹具有隐藏属性,用户需要先在WinXP下的"工具 属性"窗口中选择显示文件才可以看到该目录。

  对策五:启用Win98中的"文件及打印机共享"。这是一个很简单但却经常被人忽略的问题,就是装有Win2000/XP的机器虽然可以从"网上邻居"中发现装有Win98的机器,但却无法访问,这是因为Win98未启用"允许其他用户访问我的文件"而造成的,启用该选项就可以解决这个问题。

  当然,除了上面提到的各种原因外,还有两台电脑不处于同一工作组中,或者是两台电脑的内部IP地址发生了冲突,甚至包括Hub故障、线路故障等。   

  微软知识库文章,Microsoft Knowledge Base Article - 318030

  无法访问共享文件和文件夹或者浏览工作组中的计算机

  http://support.microsoft.com/default.aspx?scid=kb;cn;318030   

  3) 双方都正确设置了网内IP地址,且必须在一个网段中;

  这个不一定,因为名称解析问题可以用WINS服务解决。


[此贴被 灌水N神(nallfather) 在 04月25日18时42分 编辑过]

B21层 发表时间: 05-04-16 13:29

回复: tianxing04 [tianxing04]   论坛用户   登录
谢谢,各位了,这个问题,终于有希望解决了.

B22层 发表时间: 05-05-07 02:56

回复: shangao [shangao]   论坛用户   登录
怎么访问别人没有共享的文件???

B23层 发表时间: 05-05-07 20:04

回复: kangfeng [kangfeng]   论坛用户   登录
你可以注销,用Administrator这个管理员帐号登陆呀!

B24层 发表时间: 05-05-11 16:06

回复: lonelyrain [leason]   论坛用户   登录
我不是很懂呀

B25层 发表时间: 05-05-18 17:19

回复: zch001 [zch001]   论坛用户   登录
我顶。顶

B26层 发表时间: 05-05-21 17:27

回复: bluecolor [bluecolor]   论坛用户   登录
有收获



B27层 发表时间: 05-08-04 11:47

回复: VIVA [liansc]   论坛用户   登录
嗯`~~还好~!

顶~~

B28层 发表时间: 05-08-30 02:22

回复: zhong [zhong]   见习版主   登录
正需要这东西

B29层 发表时间: 05-09-15 10:17

回复: Waylon [ywdp]   论坛用户   登录
在硬盘里搜到一篇关于网上邻居互访的文章...

=============================================================
有关网上邻居的问题,问的人一直比较多,在理解上存在的误区也普遍较为严重。鉴于Microsoft的NETBIOS文档不是很细致,我四处收集了一些相关资料加上自己的实践经验写了这个系列,希望能对大家有所帮助.

本来想为了增加可读性,把这个系列写成问答的形式,不过一时之间脑袋里也编不出这么多的问题,还是按部就班先感性的对微软的浏览服务作一大致介绍,然后再深入剖析NETBIOS的具体工作机理,大家要是有什么问题,可以提出来我们一起讨论.

***微软网络浏览过程简介***

在“Windows NT系统管理技术内幕”一书中,讲到了一个非常具有代表性的问题,我把它摘抄了下来:

问:什么情况下会导致在网络邻居中计算机能看见却无法访问或可以访问却看不见?

请选择最佳答案:
A.你的网络存在物理问题,比如网线
B.作为域主浏览器的Windows NTserver的浏览服务坏了
C.Windows NTserver网卡有问题
D.你的网络没有问题,用户描述的是正常的微软浏览现象

正确答案 D

书上的解释:微软的网络浏览可能在使用中出现"中断",而实际上它们并没有中断, 这种误解是由于用户对微软网络浏览的处理过程不熟悉造成的。

就象同学们经常在抱怨的“为什么别人的网上邻居可用,我的却不行?”“为什么有时候可以浏览,有时候却无法浏览网络?”解铃还须系铃人,让我们一起去看看微软的网络浏览到底是如何实现的。鉴于大家可能对NT的“域”概念还不甚了解,出现浏览故障的也多为98的机子,我将以98的“工作组模式”为大家讲解。

1.什么是浏览列表(Browsing List)

在微软网络中,用户可以在浏览列表里看到整个网络(何指?子网还是广播域?大家可以考虑考虑)上所有的计算机。当你通过网上邻居窗口打开整个网络时,你将看到一个工作组列表,再打开某个工作组,你将看到里面的计算机列表(也可在 DOS方式下用net view /domain:workgroupname命令得到),这就是我们所说的 Browsing List。工作组从本质上说就是共享一个浏览列表的一组计算机,所有的工作组之间都是对等的,没有规定不可以让所有的计算机同处于一个工作组中。

2.浏览列表在哪里

曾在木棉上看到过一场争论,有人说:网上邻居里的计算机列表是广播查询得来的。可有人举反例说:我的同学都关机了,可我还是能在网上邻居里看到它,应该是从HUB或交换机之类较为固定的设备的缓存中取得的。 其实他们都只说对了一个方面,把他们二人的说法结合起来就是正确答案了--- 浏览列表是通过广播查询浏览主控服务器,由浏览主控服务器提供的。

3.浏览主控服务器又是什么

浏览主控服务器是工作组中的一台最为重要的计算机,它负责维护本工作组中的浏览列表及指定其他工作组的主控服务器列表,为本工作组的其他计算机和其他来访本工作组的计算机提供浏览服务,每个工作组都为会每个传输协议选择一个浏览主控服务器,而我们经常遇到的无法浏览网络的错误大多是因为你所处的工作组没有浏览主控服务器而造成的。你可以在一个工作组中用NBTSTAT -a computername 命令找出使用NBT协议的浏览主控服务器,它的标识是含有\\_MSBROWSE_名字段。

4.浏览主控服务器是如何指定的

缺省情况下,win98工作组中的浏览主控服务器是该工作组中第一台启用文件及打印机共享功能的计算机,也允许手工将一台win计算机配置为浏览主控服务器(方法会在后面讲述网络配置时具体介绍,但由于浏览主控服务器需要维护动态浏览列表,性能会受影响),如果一个工作组中有多台计算机配置了这个选项,或是当前的浏览主控服务器关闭了系统,又没有其他计算机启用主控设置时,就要进行主控浏览器的选举。

5.如何通过浏览器选举产生浏览主控服务器

关于浏览器的选举报文,不太好抓包,我就只好按书上的东西来讲述了.其实过程很简单,首先由一台计算机发送一个选举临界报文,该报文包含了来自发送计算机的信息(操作系统,版本及NET名等),选举报文向网络中广播,工作组中的每一台计算机都会用自身信息与选举报文进行优先级比较,主要是操作系统起主要作用,记得好像是NT Server>NT Workstation>Win98>WFWG,反正到最后是那个自身条件最好的成为新的浏览主控服务器.

6.整个网络浏览的过程是怎样的

当一台win98进入网络时,如果它带有服务器服务(启用了文件及打印机共享)会向网络广播宣告自己的存在,而浏览主控服务器会取得这个宣告并将它放入自己维护的浏览列表中;而没有在相应协议上绑定文件及打印机共享的计算机则不会宣告,因而也就不会出现在网络邻居里了。

当客户计算机想获得需要的网络资源列表时,首先会广播发出浏览请求,浏览主控服务器收到请求后,如果请求的是本组的浏览列表,则直接将客户所需的资源列表发回;如果请求的是其它工作组的浏览列表,浏览主控服务器会根据本身Browsing List中的记录找到相应工作组的主控浏览器返回给用户,用户可从那里得到它想要的浏览列表。至于如何去和另一台计算机共享交换资源,就不是我们这里要讨论的问题了。

明白了网络浏览的原理,下面我给大家讲一个有用的应用,现在很多同学出于安全的考虑都不太欢迎陌生人通过网上邻居访问自己的机子,可有时下部电影又需要给认识的同学共享出来,因而还不能删除文件及打印机共享服务。怎么办?有些人给共享名加个$,以达到隐藏的效果,可这用DOS下的net share是可被看到的;有些人给共享加上密码,可听说这也是有办法破解的,而且很容易激起“黑客同志”的好奇心。有没有办法将自己的机器在网络邻居里隐藏起来呢?而对于认识的同学可以让他用\\IP 来访问。

想对了,关键就是要阻止自己的机器向网络中去宣告自己,而且我知道我们其中的一些人已经将此变成了现实,至于方法嘛,就不要来问我了。

注:因为有关win98浏览服务的资料很少,涉及的书籍也多为以NT的“域”模型进行介绍,因而我只能根据自己的理解结合netxray的实践来测试,细节部分难免有错,欢迎大家指正。

7.在我的网上邻居里为什么有些机子访问不了

如果微软的网上邻居真能做到所见即所得,相信抱怨它的人不会象现在这么多,可通过前面对浏览服务的介绍,大家已经知道这是不可能的,因为浏览列表的获得不是通过访问其中每一台机子得到的,很多时候网络中的计算机并不能正确更新浏览列表。当一台计算机正常关机时,它会向网络发出广播宣告,使浏览主控服务器及时将它从浏览列表中删除;而非正常关机后,浏览列表里仍会把该条目保持很长一段时间(NT下是45分钟),这就是我们仍能在网络邻居里看到它的原因.而98的稳定性是众所周知的 ----在还没来得及关机前就已经崩溃了^-^

SMB(Server Message Block)协议在NT/2000中用来作文件共享,在NT中,SMB运行于NBT(NetBIOS over TCP/IP)上,使用137,139(UDP),139(TCP)端口。

在2000中,SMB可以直接运行在tcp/ip上,而没有额外的NBT层,使用TCP 445端口。因此在2000上应该比NT稍微变化多一些。可以在“网络连接/属性/TCPIP协议/属性/高级/WINS中设置启用或者禁用NBT(NetBIOS over TCP/IP)。

当2000使用网络共享的时候,就面临着选择139或者445端口了。下面的情况确定会话使用的端口:

1、如果客户端启用了NBT,那么连接的时候将同时访问139和445端口,如果从445端口得到回应,那么客户端将发送RST到139端口,终止这个端口的连接,接着就从445端口进行SMB的会话了;如果没有从445端口而是从139得到回应,那么就从139端口进行会话;如果没有得到任何回应,那么SMB会话失败。

2、如果客户端禁用了NBT,他就将只从445端口进行连接。当然如果服务器(开共享端)没有445端口进行SMB会话的话,那么就会访问失败了,所以禁用445端口后,对访问NT机器的共享会失败。

3、如果服务器端启用NBT,那么就同时监听UDP 137、138端口和TCP139,445。如果禁用NBT,那么就只监听445端口了。

所以对于2000来说,共享问题就不仅仅是139端口,445端口同样能够完成。

关于空会话

NULL会话(空会话)使用端口也同样遵循上面的规则。NULL会话是同服务器建立的无信任支持的会话。一个会话包含用户的认证信息,而NULL会话是没有用户的认证信息,也就好比是一个匿名的一样。

没有认证就不可能为系统建立安全通道,而建立安全通道也是双重的,第一,就是建立身份标志,第二就是建立一个临时会话密匙,双方才能用这个会话进行加密数据交换(比如RPC和COM的认证等级是PKT_PRIVACY)。不管是经过NTLM还是经过Kerberos认证的票据,终究是为会话创建一个包含用户信息的令牌。(这段来自Joe Finamore)

根据WIN2000的访问控制模型,对于空会话同样需要提供一个令牌。但是空会话由于是没有经过认证的会话,所以令牌中不包含用户信息,因此,建立会话双方没有密匙的交换,这也不能让系统间发送加密信息。这并不表示空会话的令牌中不包含SID,对于一个空会话,LSA提供的令牌的SID是S-1-5-7,这就是空会话建立的SID,用户名是ANONYMOUS LOGON。这个用户名是可以在用户列表中看到的。但是是不能在SAM数据库中找到,属于系统内置的帐号。

(关于这部分对NULL SESSION的分析,可以参照:《NULL Sessions In NT/2000》http://rr.sans.org/win/null.php)

NULL会话几乎成为了微软自己安置的后门,但是微软为什么要来设置这样一个“后门”呢?我也一直在想这个问题,如果NULL会话没有什么重要的用途,那么微软也应该不会来设置这样一个东西。好不容易才在微软上找到这个:

当在多域环境中,要在多域中建立信任关系,首先需要找到域中的PDC来通过安全通道的密码验证,使用空会话能够非常容易地找到PDC,还有就是关于一些系统服务的问题。而且LMHOSTS的#Include就需要空会话的支持,可以参考文章: http://support.microsoft.com/default.aspx?...b;EN-US;q121281

还有http://support.microsoft.com/default.aspx?scid=kb;EN-US;q124184

其实建立一个空会话的条件也非常严格。首先要能够满足上面的,也就是打开TCP 139和TCP 445端口。我们可以从一次关闭这两个端口的情况中看得出来。服务器关闭445和139端口,然后我们来进行空会话的连接。首先,客户端打算连接的是445端口,然后再试图连接139端口。当然最后还是失败了。

仅仅开放这两个端口还不行,服务器还必须得打开IPC$共享。如果没有IPC共享,即使共享一个文件,有权限为Anonymous Logon,也不能建立会话,即使权限设置为完全控制,出现的连接错误依然是权限不够。这和其他帐号是不一样的。如果要允许一个文件夹共享能够类似IPC$(命名管道而非共享)能够使用空会话,那么需要修改注册表:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters\

中的:NullSessionShares,添加新的共享名,这样才能建立一个共享的空会话。这时,将不依赖IPC的存在了。(即使这样的空会话对于后面的突破也是一点没可取之处的,因为没有了IPC$命名管道,RPC不可取了,这下知道IPC这个命名管道的具体实现了。呵呵)

虽然空会话建立的要求很严格,但是那都是默认建立的。既然是默认的,对于使用WIN2K系统的服务器来说,就还是有利用的价值。最明显的就是空会话可以很方便地连接到其他的域,枚举用户、机器等。这也就是扫描软件进行探测的原理。

1. 有些人给共享名加个$,以达到隐藏的效果,可这用DOS下的net share是可被看到的;

这种隐藏只是微软Windows标准客户端net view的限制,不是服务端的限制,网络传输过程中是一视同仁的,所以直接修改客户端解除这种限制或者使用第三方客户端软件均可看到所谓的隐藏共享,比如smbclient就是典型代表。而直接修改windows客户端的办法,99年袁哥贴过,我在华中Security版上转载过,精华区中还在。

2. 有些人给共享加上密码,可听说这也是有办法破解的;

这个破解要看是什么层面上的,纯暴力破解的就不必说了,那当然总是可以的。而95/98另有漏洞,袁哥发现的,就是他那个著名的vredir.vxd,服务端验证密码时所用长度居然是客户端提供的,这就意味着至多猜测256次(事实上没这么多,考虑可打印字符范围)即可进入。当初N多人用这种办法非法浏览别人的机器。2000年报告微软,现在已修补。
http://security.nsfocus.net/index.php?act=...o=view&adv_id=6

顺便说一句,利用该漏洞可以快速穷举出原始口令,虽然在攻击中这是不必要的。因而我只能根据自己的理解结合netxray的实践来测试,细节部分难免有错,

推荐www.ethereal.com提供的Ethereal,这是我所见过的对SMB解码最强的免费软件,有Unix/Windows版,提供源码。

3. 在2000中,SMB可以直接运行在tcp/ip上,而没有额外的NBT层,使用TCP 445端口。因此在2000上应该比NT稍微变化多一些。

事实上正相反,在ssaxh_capabilities字段中指明不使用"扩展安全验证",此时使用原有身份验证机制,只需去掉NBT层的Session Request,将139/TCP改成445/TCP,一样可以成功建立空会话,并且成功打开"\\\IPC$"。

至于更高层的RPC Over SMB,更是不必作任何变动。换句话说,从139/TCP换到445/TCP,整个通信过程中减少了一对NBT Session Request/Response,后面的报文对于两者来说是完全一致的。

而所谓的NBT层,即使在445通信中也未去掉,一直存在着,区别只是上面这段话。

4. 如果客户端启用了NBT,那么连接的时候将同时访问139和445端口,

微软并没有让139/TCP与445/TCP公平竞争。发起连接的SYN包在宏观上是同时发出的,具体起来,有时是先向139/TCP发起连接请求,有时是先向445/TCP发起连接请求,有点随机性。

在向139/TCP发送三次握手的最后一个ACK报文时,Windows顺手携带了数据,这里以一个刻意弄错的NetBIOS名(*SMBSERV<00...>做了一次NBT Session Request。而445/TCP不需要NBT层的会话。

由于刻意弄错的NetBIOS名,139/TCP很难竞争过445/TCP。服务端返回Negative NBT Session Response,并且执行了close()操作。这使得必须重新建立到139/TCP的连接(传输层的TCP连接)。

可以看出,那个刻意弄错的NetBIOS名仅仅是为了给445/TCP制造抢先的机会。遗憾的是,445/TCP不争气,这个端口上的任务繁重、负载较高,即使在这种不公平竞争的情况下,139/TCP仍有可能重新抢在445/TCP之前建立NBT会话(注意,不是TCP连接)。于是445口会回送RST,后续SMB会话建立在139/TCP连接之上。

微软自己的操作系统不认"*SMBSERV<00...>",但是Samba Server 2.2.5认,居然返回Positive Session Response。这成为精确识别Samba Server的方法之一。

微软在<>中不会提这些的,只是说139/TCP、445/TCP公平竞争,优先使用最早返回的响应报文。不要相信它的鬼话。

话说回来,如非需求所致,完全不必关心这种差别。有需求的时候,这种差别是致命的。

5. 最明显的就是空会话可以很方便地连接到其他的域,枚举用户、机器等。这也就是扫描软件进行探测的原理。

XP、2003缺省禁止在空会话上进行PolicyAccountDomainInformation查询,可以看到LsarOpenPolicy2(44)失败,权限否定。如果事先指定有效帐号、口令建立SMB会话,而非空会话,LsarOpenPolicy2(44)将成功返回。

更多讨论,欢迎去瑞星社区 。
(http://community.rising.com.cn/Forum/msg_read.asp?FmID=33&SubjectID=2896966&page=1)


B30层 发表时间: 05-10-24 10:04

回复: amao3273 [amao3273]   论坛用户   登录
好!!收下了!!

B31层 发表时间: 06-01-06 09:47

回复: hejl902 [hejl902]   论坛用户   登录
打开组策略编辑器,依次选择“计算机配置→Windows设置→安全设置→本地策略→安全选项”,双击“网络访问:本地账号的共享和安全模式”策略,将默认设置“仅来宾―本地用户以来宾身份验证”,更改为“经典:本地用户以自己的身份验证”。
����现在,当其他用户通过网络访问使用Windows XP的计算机时,就可以用自己的“身份”进行登录了(前提是Windows XP中已有这个账号并且口令是正确的)。
����当该策略改变后,文件的共享方式也有所变化,在启用“经典:本地用户以自己的身份验证”方式后,我们可以对同时访问共享文件的用户数量进行限制,并能针对不同用户设置不同的访问权限。
����不过我们可能还会遇到另外一个问题,当用户的口令为空时,访问还是会被拒绝。原来在“安全选项”中有一个“账户:使用空白密码的本地账户只允许进行控制台登录”策略默认是启用的,根据Windows XP安全策略中拒绝优先的原则,密码为空的用户通过网络访问使用Windows XP的计算机时便会被禁止。我们只要将这个策略停用即可解决问题。


B32层 发表时间: 06-01-13 15:15

回复: ManFree [zzjb]      登录
谢谢,以前遇到过这种问题,收藏了.

B33层 发表时间: 06-02-16 11:26

论坛: 系统集成

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号