| colaboy写的书《网络安全攻防进阶》里的节选. 没事的可以看看. 3.4.2 Windows NT/2000漏洞扫描 1. 简介 Windows早已经成为公众普遍使用的操作系统了,无论是作为桌面系统的Windows95/98,还是作为服务器系统的WindowsNT/2000各个版本,微软这个庞然大物所缔造出来的企图无所不包的Windows操作系统,都有着巨大的优势,虽然Linux作为一个强劲的后起之秀,其前景谓为可观,但就目前来看,它跟无处不在的Windows还是没法比的。 但是,也许树大招风,也许根本就是优点越明显缺点就越突出,Windows操作系统从最初的1.0发展到现在的XP,越来越好用,可问题似乎也越来越多。XP的状况暂还不敢说,单单一个Windows2000的问题真就是罄竹难书。现如今好像已经形成了惯例,天天发现新漏洞,天天都要忙不迭的出patch打补丁。不过,事情往往都是这样,考虑了易用性,安全性就总要出问题,就象自由和法律总显得很矛盾那样,网络以及软件应用也是如此。 多的暂且不说,毕竟瑕不掩瑜,对微软的控诉自有一班所谓IT界精英的“侠义人士”来运作,这里,我们先只关心如何利用微软提供给我们的“便利”,来得到黑客精神和技术所赋予我们的“自由”。 Windows操作系统是吸收众多杂家技术精炼而成的,在众多吸收提取的精华当中,有一个就是NetBIOS(Network Basic Input Output System)。最初,NetBIOS是IBM提出的一种应用程序编程接口,由连接在网络上的一组PC机使用,它支持会话连接和数据报无连接服务,支持广播和组播,连接在网络中的每一台主机都有一个名字,那就是NetBIOS名。 微软早先在自己的Windows操作系统中采用的联网协议,是被称作NetBIOS增强型用户接口(NetBIOS Enhanced User Interface,NetBEUI)的轻型快速的协议,它为NetBIOS这个软件接口提供了一个下层的网络传输载体,但它仅仅是一个局域网协议,不支持路由,NetBEUI应用只能依靠广播方式来定位主机和服务,这就限制了NetBEUI的使用范围。 后来,微软对NetBIOS的载体范围进行了扩充,如今,除了可以采用NetBEUI作为NetBIOS的承载协议,IPX/SPX协议,以及更广泛使用的TCP/IP协议,都可以和NetBIOS有效组合。当NetBIOS运行在TCP/IP上时,被称作NetBT,或者就简称NBT(而NetBIOS/NetBEUI时常被称作NBF—NetBIOS帧,NetBIOS/NetBEUI则是NetBEUI的后续版本)。 NetBIOS和被称作服务器消息块(Server Message Block,SMB)的资源共享协议是紧密结合的,它是一个客户/服务器结构的应用层协议,一般被包装在NetBIOS中,提供对共享资源的支持,包括共享文件、打印机、命名管道(named pipe)、邮槽(mail slot)等等。 利用NetBIOS接口进行网络会话的计算机(无论底层由哪个协议作为承载体),必须拥有一个叫NetBIOS名的识别标识,而对网络资源的定位,则使用统一命名约定(Uniform Naming Convention,UNC),UNC能标识共享的网络资源,比如共享目录、共享文件、打印机等,其表示方法如下: \\ServerName\ShareName\SubDir\FileName 例如,我们要取得一台名叫“colababy”机器上共享目录“loveyou”的访问权,我们可以利用net命令: net use x: \\colababy\loveyou 当然,这里的ServerName可以是NetBIOS名(在局域网内),也可以是一般的全标定域名(FQDN)或IP地址(如果采用的是NBT协议)。 一般的,SMB客户/服务器交互过程,是在通过NBF或NBT建立了NetBIOS级连接之后进行的,我们平常在Windows中使用诸如Windows Explorer、网络邻居、网络查询等应用的时候,就是通过SMB来实现的。 在WindowsNT/2000启动之后,缺省会打开几个端口:UDP137和138,以及TCP139端口,这些端口就是供NBT使用的。在Windows2000中,开始支持直接主机设定(direct hosting),也就是说,直接在TCP/IP上承载SMB(而不是通过NetBIOS),它对网络资源的定位,采用的是DNS域名解析而不是NetBIOS名字查询,所以,除了上述几个端口外,还有一个TCP445端口供SMB使用。在Windows2000的默认设置中,允许同时采用NetBIOS和直接主机设定,建立网络连接时,两种机制都会尝试,但仅使用最先成功的,其大致过程是,建立连接时,客户端会同时向服务器的139和445端口发送连接请求,对于最先建立成功的连接,则继续使用,并发送RST复位另一连接。 这里,UDP137端口是用作NetBIOS名字解析用的,当客户端要得到一个远程主机(以NetBIOS主机名表示)对应的IP地址,它会在本子网内部发送目的端口为UDP137的WINS名称解析请求广播包,本子网中拥有该NetBIOS名的主机会返回一个正确应答。 UDP138端口对应的是NetBIOS数据报服务(如果NetBIOS被设置为禁用,数据报服务就不可用了),NetBIOS数据报服务对发送短消息非常有用,它不考虑可靠性,网络开销很小,net命令的send子命令项就是用来发送这种短消息的(要求目标机上必须启动Messenger服务),例如,我们给“zhangsan”这台主机发送一条消息: C:\>net send zhangsan “I love you forever!” 我们也可以给指定域中的某个主机发送短消息,比如域“lisi”中的主机“wangwu”: C:\>net send /lisi:wangwu “I hate you very much!” TCP139和445端口自然对应的是有连接的SMB会话服务了。 通常,一个NBT的会话建立过程是这样的: (1)远程服务器的NetBIOS名称进行解析,得到其IP地址(具体解析过程可参见第二章的“基础知识”一段); (2)与远程服务器上的139端口建立一个TCP连接。 (3)客户端在建立的TCP连接上发送NetBIOS会话请求,服务器端返回NetBIOS会话应答,于是,一个NetBIOS会话就建立起来了。 (4)此后,在该NetBIOS会话过程中,就可以进行各种SMB操作了。 在运行NetBIOS的网络中,网络资源都被分配一个16字符长的NetBIOS名,其中第16个字符用来表示NetBIOS名所代表的资源类型,比如可以是一台计算机,或者是一个组,也可以是域,甚至是一个特定的服务进程。NetBIOS是一个采用广播方式的协议,在网络中,每当计算机启动时,都会通过广播来注册自己的NetBIOS信息,其中就包括NetBIOS名,另外,当一个特定的服务进程启动时,或者用户登录到网络时,相关的资源信息也会通过广播传送出去。 NetBIOS名字的前15个字符可以由管理员进行配置,在“控制面板”中选择“系统”,在“系统属性”中选择“网络标识”,选择“属性”按钮,我们就可以设置自己的计算机名(NetBIOS名)了。另外,在WindowsNT中还有一个可以设置的名字,那是在TCP/IP协议属性中,设置本地的域名,这是FQDN全域名的一部分,不同于计算机名。 NetBIOS名字的第16个字符表示资源的类型,具体内容见表3.6中所列。 表3.6 NetBIOS名称中的资源类型 后缀 类型 简单说明 00 U 工作站服务(Workstation Service) 01 G 主浏览器(Master Browser) 03 U 邮件服务(Messenger Service) 06 U 远程访问服务器服务(RAS Server Service) 1F U NetDDE服务(NetDDE Service) 20 U 服务器服务(Server Service) 21 U RAS客户服务(RAS Client Service) 22 U Exchange Interchange 23 U Exchange Store 24 U Exchange Directory 30 U 调制解调器共享服务器服务(Modem Sharing Server Service) 31 U 调制解调器共享客户服务(Modem Sharing Client Service) 43 U SMS客户机远程控制(SMS Client Remote Control) 44 U SMS管理远程控制工具(SMS Admin Remote Control Tool) 45 U SMS客户机远程聊天(SMS Client Remote Chat) 46 U SMS客户机远程传输(SMS Client Remote Transfer) 4C U DEC Pathworks TCP/IP服务(DEC Pathworks TCPIP Service) 52 U DEC Pathworks TCP/IP服务(DEC Pathworks TCPIP Service) 87 U Exchange MTA 6A U Exchange IMC BE U 网络监控代理(Network Monitor Agent) BF U 网络监控应用(Network Monitor Apps) 00 G 域名(Domain Name) 1B U 域主浏览器(Domain Master Browser) 1C G 域控制器(Domain Controller) 1D U 主浏览器(Master Browser) 1E G 域浏览器选举(Domain Browser Election) 1C G Internet信息服务器(Internet Information Server) 00 U Internet信息服务器(Internet Information Server) 一个NetBIOS名可以归属于一个大的类型中,包括: Unique (U): - 表示该名字可能只对应一个分配给它的IP地址 Group (G): - 表示一个正常的工作组,一个名字可以包含很多个IP地址 Multihomed (M): - 该名字是唯一的,在一个主机多个网卡的情况下注册 Internet Group (I): - 这是用来管理NT域名的组名字的特殊配置 Domain Name (D): - NT域名 因为Windows通过NetBIOS可以对外提供众多的资源信息,所以,对Windows进行NetBIOS信息探测就成为黑客们亘久不变的一个演练步骤。借助一些简单而方便的工具,黑客可以很容易得到包括系统注册用户、共享资源、服务进程等大量有用的信息,分析并利用这些信息,就为黑客实施正式而有效的攻击打下了良好的基础。 尤其重要的是,缺省配置下的Windows NT/2000系统,有大量可被利用的漏洞,许多都是与NetBIOS相关的。 在下面章节中,我们会看到,怎样利用工具对Windows操作系统进行信息探测。 2. 命令行运行方式的工具 l Net Net是Windows平台提供的一个独特而功能强劲的网络工具,通过Net,我们可以实现几乎大部分NetBIOS资源探访。 Net的子命令很多,在Windows2000的终端控制台,只需要键入“net help”命令,就可以得到所有它支持的子命令(Windows98中的net支持项略有不同)。 C:\>net help 此命令的语法是: NET HELP command -或- NET command /HELP 可用的命令包括: NET ACCOUNTS NET HELP NET SHARE NET COMPUTER NET HELPMSG NET START NET CONFIG NET LOCALGROUP NET STATISTICS NET CONFIG SERVER NET NAME NET STOP NET CONFIG WORKSTATION NET PAUSE NET TIME NET CONTINUE NET PRINT NET USE NET FILE NET SEND NET USER NET GROUP NET SESSION NET VIEW NET HELP SERVICES 列出用户可以启动的网络服务。 NET HELP SYNTAX 解释如何阅读 NET HELP 语法行。 NET HELP command | MORE 用于逐屏显示帮助。 详细的命令使用方法可以直接用“net help command”命令来查询,这里,只介绍几个与NetBIOS信息探测有关的命令子项。 应该说,最直接最简单的探测方法就是使用“net view”这个命令了,它可以列出网络中与本机同属一个Windows域(或工作组)的所有主机。 C:\>net view 服务器名称 注释 ------------------------------------ \\ANTIHACKER \\BAIHH \\FLYING \\LIWENQI \\LUSIE \\MMM \\PANFENG \\SMART \\SMILE 可以使用“net view /domain”来查询网络中所有的域,这里的域,指的是WindowsNT特有的域。 C:\>net view /domain Domain ---------------------------- COUNT HFZJZ WORKGROUP 如果要查看某个域内所有主机,可以使用“net view /domain:domainname”命令。 C:\>net view /domain:count 服务器名称 注释 ----------------------------------- \\DBSERVER \\OYMG \\TADPOLE 查看某个主机中都开放了哪些网络资源,可以使用命令“net view \\computername”命令,当然,如果是WindowsNT/2000系统,对其共享资源访问是需要先认证的,如果没有认证,这样的命令只能导致失败。 C:\>net view \\smile 系统发生 5 错误。 拒绝访问。 但是,NT/2000有个“问题”,缺省安装时,会允许匿名用户不提供任何信任凭证就连接到系统上并查看特定的网络资源,这就是著名的“空会话连接”漏洞(NULL session connection,或Anonymous Logon),其实,这项“功能”本来是NT专为某些应用程序(比如explorer.exe)提供用来列举网上共享资源的,而且,也并非真的无任何凭证,只不过当客户端进行空会话连接时,NT给空会话操作分配了一个everyone内建组的访问许可(如果目标主机上的共享资源不设密码或者赋予everyone组访问权限的话,一个空会话用户就可以随意访问其共享资源了)。 我们只需要先用“net use”命令建立空会话,继而就可以查看目标主机上特定的资源了。 C:\>net use \\smile\ipc$ "" /user: 命令成功完成。 C:\>net view \\smile 在 \\smile 的共享资源 资源共享名 类型 用途 注释 ------------------------------------------- My Documents Disk tools Disk tmp Disk Printer Print Acrobat PDFWriter 命令成功完成。 在建立空会话连接的命令当中,第一个双引号中间什么都没有,表示一个空口令,而“/user:”后面也是空的(或者是一对空的双引号””),表示一个空会话用户。IPC$(进程间通信)共享是NT主机上一个标准的隐藏共享,主要用于服务器到服务器的通信,NT主机用来互相连接并通过这个共享来获得各种必要的信息。 虽然利用空会话连接可以取得一些资源信息,但这是很有限的,因为空会话用户一般不具有任何实质性的资源访问权限,所以,正常情况下,如果我们要访问目标主机上的共享资源(比如一个共享目录),客户端必须提供目标主机上的有效用户凭证。 比如,目标主机smile上一个用户,叫test,其口令是testbytest,我们就可以通过该用户凭证来访问smile上的共享目录了。 C:\>net use \\smile\ipc$ /user:test testbytest 命令成功完成。 C:\>net use z: \\smile\tools 命令成功完成。 继而,如果我们拥有了目标主机上一个administrators组成员账号,那我们就可以连接访问目标主机上缺省的所有隐藏共享目录了,也可以使用别的命令来完全操纵目标主机,这就是为什么黑客热心于得到一个目标主机上的用户账号甚至是管理员账号的原因了。 l Netstat Netstat命令用于显示协议统计信息和当前的TCP/IP网络连接状况。其命令语法如下: netstat [-a] [-e] [-n] [-s] [-p protocol] [-r] [interval] -a 显示所有连接和监听端口。 -e 显示以太网统计信息,可以于-s选项结合使用。 -n 显示地址和端口号。 -s 显示每个协议的统计,如果与-p结合,可以用来指定子集(tcp,udp,icmp,ip)。 -p protocol 显示指定协议子集的连接。 -r 显示路由表的内容。 interval 间隔两秒钟,重复显示统计信息,按Ctrl+C停止;如果省略interval,netstat只显 示一次信息。 例如,要显示本地所有的连接: C:\>netstat -an Active Connections Proto Local Address Foreign Address State TCP 0.0.0.0:53 0.0.0.0:0 LISTENING TCP 0.0.0.0:135 0.0.0.0:0 LISTENING TCP 0.0.0.0:445 0.0.0.0:0 LISTENING TCP 0.0.0.0:1027 0.0.0.0:0 LISTENING TCP 0.0.0.0:1029 0.0.0.0:0 LISTENING TCP 192.168.0.164:139 0.0.0.0:0 LISTENING TCP 192.168.0.164:139 192.168.0.189:1132 TIME_WAIT TCP 192.168.0.164:139 192.168.0.189:1133 TIME_WAIT UDP 0.0.0.0:135 *:* UDP 0.0.0.0:445 *:* UDP 0.0.0.0:1026 *:* UDP 0.0.0.0:1028 *:* UDP 127.0.0.1:53 *:* UDP 127.0.0.1:1025 *:* UDP 127.0.0.1:1033 *:* UDP 127.0.0.1:1059 *:* UDP 192.168.0.164:53 *:* UDP 192.168.0.164:137 *:* UDP 192.168.0.164:138 *:* 要显示本地的路由表: C:\>netstat -r Route Table ================================================================== Interface List 0x1 ........................... MS TCP Loopback interface 0x1000003 ...00 10 d7 0b 4d 4e ...... NDIS 5.0 driver ================================================================== ================================================================== Active Routes: Network Destination Netmask Gateway Interface Metric 0.0.0.0 0.0.0.0 192.168.0.254 192.168.0.164 1 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 192.168.0.0 255.255.255.0 192.168.0.164 192.168.0.164 1 192.168.0.164 255.255.255.255 127.0.0.1 127.0.0.1 1 192.168.0.255 255.255.255.255 192.168.0.164 192.168.0.164 1 224.0.0.0 224.0.0.0 192.168.0164 192.168.0.164 1 255.255.255.255 255.255.255.255 192.168.0.164 192.168.0.164 1 Default Gateway: 192.168.0.254 ================================================================== Persistent Routes: None l Nbtstat Nbtstat可以显示TCP/IP统计信息以及安装TCP/IP协议后,当前TCP/IP上的NetBIOS连接。这个工具在进行安全检查时非常有用。 Nbtstat的命令用法如下: nbtstat [-a RemoteName] [-A IPAddress] [-c] [-n] [-R] [-RR] [-r] [-S] [-s] [interval] -a 查看给出主机名的远程计算机上的资源名字表。 -A 查看给出IP地址的远程计算机上的名字表。 -c 显示本地主机上NetBIOS名字缓存内容和IP地址。 -n 显示本地NetBIOS名字。 -r 列出通过广播和WINS注册及解析的名字。 -R 清除NetBIOS名字缓存,并从LMHOSTS文件重新加载。 -RR 强制刷新名字,并向WINS服务器发送释放名字报文。 -S 列出所有的服务器和客户会话,远程系统用IP列出。 -s 列出所有的服务器和客户会话,将IP地址转换成主机名。 interval 间隔两秒钟,重复显示统计信息,按Ctrl+C停止;如果省略interval,nbtstat只显示一次 信息。 在Nbtstat显示的信息中,其“state”具有很多含义: Accepting: - 连接正在进行。 Associated: - 连接的端点已经建立,计算机已经与IP地址联系起来。 Connected: - 已经连接到远程资源上。 Connecting: - 试图解析目的地资源的名字到IP地址的映射。 Disconnected: - 请求断开,并等待远程计算机作出反应。 Disconnecting: - 连接正在结束。 Idle: - 远程计算机在当前会话中已经打开,但现在没有接受连接。 Inbound: - 入站会话试着连接。 Listening: - 远程计算机可用。 Outbound: - 正在建立TCP连接。 Reconnecting: - 连接失败后试着重新连接。 命令举例: C:\>nbtstat -A 192.168.0.65 本地连接: Node IpAddress: [192.168.0.164] Scope Id: [] NetBIOS Remote Machine Name Table Name Type Status --------------------------------------------- FANCYBOY <00> UNIQUE Registered FANCYBOY <20> UNIQUE Registered WORKGROUP <00> GROUP Registered FANCYBOY <03> UNIQUE Registered WORKGROUP <1E> GROUP Registered YJM <03> UNIQUE Registered MAC Address = 00-E0-4C-53-0B-16 我们可以看到,有两个<03>类型的名字,一般情况下,第一个<03>类型的名字是机器的NetBIOS名字,而第二个<03>类型的名字就是在该机器上登录用户的名字。在上面例子中,目标主机主机名是“fancyboy”,属于“workgroup”组,且上面有一个登录用户“yjm”。 l Nbtdump Nbtdump是Cerberus Information Security出品的安全工具之一,其实,它就是从CIS安全漏洞扫描器众多模块中剥离出来后独立制作的一个命令行方式运行的小工具,它可以从Windows NT/2000以及运行Samba服务的Unix服务器中挖掘出众多NetBIOS信息,包括共享资源、用户账号、口令设置策略等等。下载地址为: http://www.cerberus-infosec.co.uk/toolsn.shtml。 Nbtdump的用法很简单,只需要执行“nbtdump RemoteName”即可,它将扫描结果生成为一个html文件,比如我们扫描一台目标主机: E:\tools>nbtdump 192.168.0.67 Results are written to 192.168.0.67.html. Connecting to \\192.168.0.67...Connected. Retrieving share information... Retrieving account list... Checking passwords on accounts... 在生成的结果报告192.168.0.67.html文件中我们可以看到: Share Information Share Name :IPC$ Share Type :Default Pipe Share Comment : WARNING - Null session can be established to \\192.168.0.67\IPC$ Share Name :D$ Share Type :Default Disk Share Comment : Share Name :ADMIN$ Share Type :Default Disk Share Comment : Share Name :C$ Share Type :Default Disk Share Comment : Account Information Account Name :Administrator The Administrator account is an ADMINISTRATOR, and the password was changed 33 days ago. This account has been used 71 times to logon. The default Administrator account has not been renamed. Consider renaming this account and removing most of its rights. Use a differnet account as the admin account. Comment :User Comment : Full name : Account Name :Guest The Guest account is a GUEST, and the password was changed 0 days ago. This account has been used 0 times to logon. Comment :User Comment : Full name : Account Name :lilijin The lilijin account is a GUEST, and the password was changed 1 days ago. This account has been used 2 times to logon. Comment : User Comment : Full name : Account Name :wyk The wyk account is a GUEST, and the password was changed 22 days ago. This account has been used 0 times to logon. Comment : User Comment : Full name : WARNING wyk's password is wyk 从扫描结果来看,目标主机上有缺省的隐含共享目录,也有几个用户账户,严重的是,其中“wyk”这个用户的口令居然跟用户名是相同的,这次简单的扫描看来是很有收获了。 l Netviewx Netviewx是一个列出某个域或工作组中服务器的小工具,类似于“net view /domain”命令,但它允许列出开放某个特定服务的所有主机,而且,它的结果报告很规范,可以很方便的被其它工具或脚本程序利用来做统计分析。其下载地址为: http://www.ibt.ku.dk/jesper/NTtools/。 其用法也很简单,如果不提供选项,就列出本域(或工作组)中所有主机,也可以使用“-D domainname”选项来列出指定域的所有主机,可以用“-t type”来指定匹配所有指定服务类型的主机。它显示的内容包括:主机名、主版本号、次版本号、平台ID标识、服务器/服务类型、用双引号括起来的简单解释。 E:\tools>netviewx ANTI,5,0,500,nt%workstation%server_nt%server%backup_browser%2000000,"" BAIHH,5,0,500,nt%workstation%server%potential_browser,"" FLYING,5,1,500,nt%workstation%server%potential_browser,"" PANFENG,5,0,500,nt%workstation%server_nt%server,"" SMILE,5,0,500,nt%workstation%server%potential_browser,"" l Sid2user/User2sid 这是由Evgenii Borisovich Rudnyi开发的两个小工具,其中,sid2user用来从Windows NT的SAM库中查找给定SID的账户名称,而user2sid则相反,用来从SAM中查找给定账户名称的SID。下载地址是 http://www.chem.msu.su:8081/~rudnyi/NT/。 我们知道,系统中每建立一个用户账号,总会给其赋一个标识号,就好比Unix系统中,每个用户账号都有一个UID一样,在Windows NT/2000系统里,用户的唯一标识号就是SID(安全标识号)。之后,该用户对系统资源进行访问时,就是通过其SID进行权限检查的。 一个SID是由一长串数字组成的,其中包括两个部分,前一部分用来唯一标识一个域(如果是独立的工作站,唯一标识的就是工作站主机),后一部分唯一标识域(或主机)中的某个账号。属于同一个域(或主机)的用户账号,其SID的前一部分都是相同的,不同的只是后面一部分,这部分的数字就被称作RID,即相对标识号。Windows NT/2000在分配SID时,RID的取值是遵循一定模式的,比如说,对于系统账号(系统安装后自动建立的),其RID取值总是从500开始的,超级管理员的RID就总是500,而Guest用户的UID总是501;而在系统安装之后建立的账号(无论是管理员人为建立的,还是类似IIS软件自行建立的),其RID总是从1000开始的(1000,1001,1002,……)。知道了这个规律,我们只需要先得到目标系统SID的前半部分,然后再根据构造的SID(前半部分加上后面的RID),就可以反过来查找到目标系统真正的用户名了。 具体操作时,先通过net命令建立到目标主机的空会话连接(就算目标主机已经设置了RestrictAnonymous注册表项);然后用user2sid查找某个系统账号的SID(例如Guest);得到SID中唯一标识目标主机(或域)的前半部分数字后,再用sid2user得到指定SID的用户账号名字。 E:\tools>net use \\192.168.0.1\ipc$ "" /user: 命令成功完成。 E:\tools>user2sid \\192.168.0.1 guest S-1-5-21-1123561945-1580818891-1957994488-501 Number of subauthorities is 5 Domain is ANTIHACKER Length of SID in memory is 28 bytes Type of SID is SidTypeUser E:\tools>sid2user \\192.168.0.1 5 21 1123561945 1580818891 1957994488 500 Name is zhangyaojiang Domain is ANTIHACKER Type of SID is SidTypeUser E:\tools>sid2user \\192.168.0.1 5 21 1123561945 1580818891 1957994488 1001 Name is IUSR_ANTIHACKER Domain is ANTIHACKER Type of SID is SidTypeUser E:\tools>sid2user \\192.168.0.1 5 21 1123561945 1580818891 1957994488 1002 Name is IWAM_ANTIHACKER Domain is ANTIHACKER Type of SID is SidTypeUser E:\tools>sid2user \\192.168.0.1 5 21 1123561945 1580818891 1957994488 1003 Name is colababy Domain is ANTIHACKER Type of SID is SidTypeUser 从上面的“挖掘”结果看,就算系统的超级管理员账号被改了名字(不再是缺省的administrator),通过sid2user一样可以得到其真正的名字。不过,需要注意的是,因为SID对用户账号来说总是唯一的,就算该账号已经被删除了,其SID也不会被重新分配给别的新建账号,所以,我们有时就会看到,用sid2user进行“挖掘”时,RID并不总是连续的,可能1003和1005都有用户账号与之对应,但1004就没有了,因为其账号已经被删除了
|