论坛: 菜鸟乐园 标题: WIN常见漏洞攻击与防范实战>第四章B 复制本贴地址    
作者: wish [wish259]    论坛用户   登录
第四章 Windows NT系统攻防实战
4.4.2 权限突破
权限突破是一种黑客们经常使用到的方法,也是最常见的黑客入侵手段。通常的情况下,当黑客们得到一个Windows NT服务器上的一个正常的普通用户名和有效地密码的时候(此密码不等同于“Administrator”级别的用户名密码),他们就会利用一些Windows NT本身的漏洞和管理员的疏忽所造成的失误性漏洞,对其掌握的账号进行权限突破,也就是所谓的将自己的普通权限账号升级为特殊权限的账号。

攻击者在得到非管理级账号后,他们首先做的就是对所掌握的目标服务器进行端口和系统信息的探查,黑客们会进行路径的试探性访问,并可以配合前面所提到的NTRK进行共享资源的探查,国内的黑客一般喜欢用网络刺客这一类的工具进行初步的探测。在摸清服务器的情况后,他们一般会选择一个名为“Sechole”的工具来进行下一步的动作,这就是权限突破。

“Sechole”具有的最神奇的功能就是通过黑客手中掌握的普通权限账号升级为“Administrators”级别的用户。“Updated”版的“Secholed”可以很轻松地把普通级别用户升级为特权用户加入“Domain Admins”用户组中。当黑客利用远程开启执行“Sechole”后,“Sechole”会修改“OpenProcess API”调用的内存中的一些指令,然后它会跨越权限,使自己正确的衔接在某个特权的进程之中,当成功的衔接上特权程序后,它会利用一种类似于“DLL Injection”(DLL注射)的方法,把一些恶意代码加入具备能够控制“Administrators”特权的用户进程中进行特权升级。

不过“Sechole”必须要在目标服务器系统上进行本地运行,而想要达到本地运行的目的,目标服务器就要符合几个特定的标准,如服务器需启动IIS(Internet Information Sener)服务等,而通常情况下,黑客很难轻易获取一个既能够读取又能够写入的IIS目录的访问权限。但当黑客们获得权限后,他们会迅速地把“Sechole”上传到几个特定的目录下,这些目录通常为:

C:Inerpubmsadc

C:InerpubNews

C:InerpubCgi-bing

C:Inerpubscripts

C:Inerpub_vti_bing

……

然后同时上传与“Sechole”关联的几个“Dll”文件和一个Windows NT命令解释器(Ntcmd.exe),然后再上传一个用于修改用户和用户组及策略的程序,一般是一个名为“Ntuser”的程序。再上传完这些程序后,黑客就可以通过一个“Web”浏览器通过输入“URL”的连接远程的启动“Sechole”程序,黑客此时就能够把他指定的账户添加到到“Administrators”用户组。一般狡猾的黑客为了隐蔽自己的行动会使用“Ntuser”在目标服务器中新添加一个用户。一下就是通过浏览器启动“Ntuser”的URL命令:

http://127.0.0.1/scripts/ntcmd.exe/C%20C:inetpubscriptsntuser.exe%20-s%20server1%20%add%20ma trix%20-password%20thematrix

上面的URL连接中的服务器名字为“Server1”,用户名为“Matrix”,密码为“Thematrix”这一长串的命令在目标服务器上会被“Ntuser”传送给一个“Shell”,命令在服务器中执行的的原意为:

ntcmd /c ntusers servername add username password password

而且黑客们还可以把指定的账号加入到“Administrators”用户组中,此命令的URL控制连接为:

http://127.0.0.1/scripts/ntcmd.exe/C%20%C:inetpubscriptsntuser.exe%20-s%20server1%20groupA%20 append%20Administrators%20matrix

在Windows NT中执行的命令为:

ntcmd /c ntuser servername LGROUP APPEND groupname username ..

瞧,黑客们就通过把这么几个指令输入到他的浏览器上就可以让自己成为Administrators级别的用户了,他可以想做任何他想做的事情了。

4.4.3 攻破SAM

当一个黑客获取你的Administrator 权限后他会罢手吗,我们希望他会,但是一般来说他们不会仅仅满足一个管理员身份的,他们渴望知道你的秘密,所有的秘密。而想要掌握更多的秘密,Windows NT的SAM就成为了他们抢先下手的首选目标。因为SAM中包含有本地系统及所控制域的所有用户信息和用户名及密码,它类似于UNIX中的Password文件。当然SAM文件是经过加密后的一个文档,但是由于微软考虑到Windows的兼容性致使SAM的加密算法沿用了LanManager的散列单项加密算法,结果直接导致了黑客们很轻松地就可以逆向破解这种算法加密的SAM。其中破解SAM最为常用的工具就是L0phtcrack,如果有一台PII450,黑客们便可以利用L0phtcrack在24小时内破解出所有可能的数字与字母组合。

L0phtcrack破解工具实际上是一个功能强大的猜解器,它会按照入侵者制定的字典中的词汇和字符串组合进行加密计算,然后跟黑客得到的SAM散列加密信息进行对比,由于此过程不用直接连接到目标服务器上,所以管理员很难察觉,也就减少了账号封锁的问题。而且黑客可以在任何他喜欢的时间里进行破解并中断破解或者在以后的日子里继续破解。这一过程只是一个CPU消耗和字典大小的问题。而对于现在的技术而言,这些都不是什么困难的问题。

如果想要破解一个SAM文件我们必须先要获取它,而Windows NT是把它存放在“%systemroot%sys tem32***fig”目录中的,而且在服务器的Windows NT系统运行过程中SAM是被锁死的,甚至Administrator用户也无权限更改,不过我们使用一点诡计就可以打开它的大门,对它的注册表内记录的键值进行调度。

获取SAM文件的方法大致有四种:

1.启动引导另一个操作系统

顾名思义,如果我们不直接启动Windows NT系统,而用另一个系统引导服务器的话,SAM文件的保护显然也就失去了作用。黑客们通常会使用System Internals公司的NTFSDOS的系统驱动来获得对NTFS硬盘格式访问的权限,然后将SAM文件提取出来。

2.获取备份的SAM

NT中的修复磁盘工具会备份系统中的关键信息,其中当然也包括了SAM文件,Rdisk会在“%system root%repair”目录中将SAM备份为一个名为SAM._的拷贝压缩。而多数管理员将这些信息拷贝后一般都忘记了删除这些文件,这就给黑客们留下了利用它的可能。黑客一般会选择L0phtcrack进行导入完成获取备份的工作。

3.从SAM中导出散列加密值

前面我们提到了如何获得Administrator访问权限,有了管理员权限后黑客就能够很轻松的获取到Windows NT在注册表中储存的SAM密码散列。用我们前面提到的L0phcrack或者是Pwdump这两个工具都可以轻易的获取到这些加密值。但是经过打补丁后的Windows NT加密性能要坚强一些。

4.4.4 监听NT密码验证交换过程

在这里我们又不得不提到L0phtcrack,可以说L0phcrack最强大的功能就是具备可以直接从本地网络上嗅探出SMB服务器信息块的密码散列加密值了。而且对于不习惯使用命令行控制版本的用户,我们还可以选择图形界面的L0phcrack,当然,这个版本的需要付一些使用费。下面我们就讲一下黑客如何使用L0phcrack破解SAM文件。

我们首先打开L0phcrack,然后根据它的选项提示填入SAM指定的位置,然后我们在寻找一个足够大的字典,选择L0phcrack的File选项中的“Open Wordlist File”指定到字典文件的位置。然后选择“Tool”下的“Options”进行破解的设置,我们可以在这里看到它提供了“Brute Force Attack”(野蛮破解)与“Hybrid Attack”(混合破解),如果你认为你的计算机CPU速度足够快,那么你可以选择野蛮破解,它是利用你给出的字典和一些计算机随机生成的字符串进行猜解的。而混合破解则是懒惰管理员的克星,因为它会利用像“Passwword12345”这样的简单组合来测试SAM的密码,很多中小企业的网站就是设置的这种简单的密码,显然,这是很脆弱的。此外L0phcrack还提供暂停破解记录等强大的功能。

说完L0phcrack之后我们不得不提一下John这个历来被黑客们誉为最爱的工具。John主要是用来对UNIX的“Password”进行破解的一个强大的工具,但是它同样的具有破解“Windows NT LanManager”散列加密值的功能。不过John的操作要复杂一些,而且它对于大小写的辨别不是很敏感,不过唯一的优点就是它是自由的。

另外一个优秀的破解SAM文件的工具是Crack5。它的基本性能与John很像,也具有破解Windows NT LanManager散列加密值的性能,它的优点在于它能够自己组合多达200多种的密码变换组合。唯一的缺陷是要掌握它你必须对UNIX相当的熟练。

4.5 NT攻防大全

Windows NT所采用的存储数据库和加密过程导致了一系列安全漏洞值得探讨。特别地,Windows NT把用户信息和加密口令保存于“Windows NT Registry”中的SAM文件中,即安全账户管理(Security Accounts Management)数据库。加密口令分两个步骤完成。首先,采用“Rsa Md4”系统对口令进行加密。第二步则是令人迷惑的缺乏复杂度的过程,不添加任何“调料”,比如加密口令时考虑时间的因素。结果,Windows NT口令非常脆弱,更容易受到一本简单字典的攻击。

这里描述的某攻击是很严重的。在最坏的情况下,一个黑客可以利用这些漏洞来破译一个或多个“Domain Administrator”账户的口令,并且对Windows NT域中所有主机进行破坏活动。

以下是NT漏洞的攻击与防御方法 :

1.安全账户管理(SAM)数据库可以由以下用户被复制:“Administrator”账户,“Administrator”组中的所有成员,备份操作员,服务器操作员,以及所有具有备份特权的人员。

攻击 :SAM数据库的一个备份拷贝能够被某些工具所利用,来破解口令。Windows NT在对用户进行身份验证时,只能达到加密RSA的水平。在这种情况下,甚至没有必要使用工具来猜测那些明文口令。能解码SAM数据库并能破解口令的工具有:PWDump和NTCrack。实际上,PWDump的作者还有另一个软件包,PWAudit,它可以跟踪由PWDump获取到的任何东西的内容。

防御 :严格限制Administrator组和备份组账户的成员资格。加强对这些账户的跟踪,尤其是Administrator账户的登录(Logon)失败和注销(Logoff)失败。对SAM进行的任何权限改变和对其本身的修改进行审计,并且设置发送一个警告给Administrator,告知有事件发生。切记要改变缺省权限设置来预防这个漏洞。

改变Administrator账户的名字,显然可以防止黑客对缺省命名的账户进行攻击。这个措施可以解决一系列的安全漏洞。为系统管理员和备份操作员创建特殊账户。系统管理员在进行特殊任务时必须用这个特殊账户注册,然后注销。所有具有Administrator和备份特权的账户绝对不能浏览Web。所有的账户只能具有User或者Power User组的权限。

采用口令过滤器来检测和减少易猜测的口令,例如,Passprop(Windows NTResource Kit提供),ScanNT(一个商业口令检测工具软件包)。使用加强的口令不易被猜测。Service Pack 3可以加强NT口令,一个加强的口令必须包含大小写字母,数字,以及特殊字符。使用二级身份验证机制,比如令牌卡(Token Card),可提供更强壮的安全解决方案,它比较昂贵。


2.每次紧急修复盘(Emergency Repair Disk - ERD)在更新时,整个SAM数据库被复制到%system%repair sam._。

攻击 :在缺省的权限设置下,每个人对该文件都有“读”(Read)的访问权,Administrator和系统本身具有“完全控制”(Full Control)的权利,Power User有“改变”(Change)的权利。SAM数据库的一个备份拷贝能够被某些工具所利用,来破解口令。NT在对用户进行身份验证时,只能达到加密RSA的水平。在这种情况下,甚至没有必要使用工具来猜测那些明文口令。能解码SAM数据库并能破解口令的工具有:PWDump和NTCrack。

防御 :确保%system%repairsam._在每次ERD更新后,对所有人不可读。严格控制对该文件的读权利。不应该有任何用户或者组对该文件有任何访问权。最好的实践方针是,不要给Administrator访问该文件的权利,如果需要更新该文件,Administrator暂时改变一下权利,当更新操作完成后,Administrator立即把权限设置成不可访问。


3.SAM数据库和其它NT服务器文件可能被NT的SMB所读取,SMB是指服务器消息块(Server Message Block),一种Microsoft早期LAN产品的继承协议。

攻击 :SMB有很多尚未公开的“后门”,能不用授权就可以存取SAM和NT服务器上的其它文件。SMB协议允许远程访问共享目录,Registry数据库,以及其它一些系统服务。通过SMB协议可访问的服务的准确数目尚未有任何记载。另外,如何控制访问这些服务的方法也尚未有任何记载。

利用这些弱点而写的程序在Internet上随处可见。执行这些程序不需要Administrator访问权或者交互式访问权。另一个漏洞是,SMB在验证用户身份时,使用一种简易加密的方法,发送申请包。因此,它的文件传输授权机制很容易被击溃。

SAM数据库的一个备份拷贝能够被某些工具所利用,来破解口令。NT在对用户进行身份验证时,只能达到加密RSA的水平。在这种情况下,甚至没有必要使用工具来猜测那些明文口令。能解码SAM数据库并能破解口令的工具有:PWDump和NTCrack。当前,对于使用SMB进行NT组网,还没有任何其它可选的方法。

防御 :在防火墙上,截止从端口135到142的所有TCP和UDP连接,这样可以有利于控制,其中包括对基于RPC工作于端口135的安全漏洞的控制。最安全的方法是利用代理(Proxy)来限制或者完全拒绝网络上基于SMB的连接。然而,限制SMB连接可能导致系统功能的局限性。在内部路由器上设置ACL,在各个独立子网之间,截止端口135到142。


4.特洛伊木马(Trojan Horses)和病毒,可能依靠缺省权利作SAM的备份,获取访问SAM中的口令信息,或者通过访问紧急修复盘ERD的更新盘。

攻击 :特洛伊木马(Trojan Horses)和病毒,可以由以下各组中的任何成员在用缺省权限作备份时执行(缺省地,它们包括:Administrator管理员,Administrator组成员,备份操作员,服务器操作员,以及具有备份特权的任何人),或者在访问ERD更新盘时执行(缺省地,包括任何人)。例如:如果一个用户是Administrator组的成员,当他在系统上工作时,特洛伊木马可能做出任何事情。

防御 :所有具有Administrator和备份特权的账户绝对不能浏览Web。所有的账户只能具有User或者Power User组的权限。


5.重新安装Widnows NT软件,可以获得Administrator级别的访问权。

攻击 :重新安装整个的操作系统,覆盖原来的系统,就可以获得Administrator特权。

防御:改善保安措施。


6.Widnows NT域中缺省的Guest账户。

攻击 :如果Guest账户是开放的,当用户登录失败的次数达到设置时,他可以获得NT工作站的Guest访问权,从而进入NT域。

防御 :据说NT第4版已经解决了这个问题,升级到第4版吧。关闭Guest账户,并且给它一个难记的口令


地主 发表时间: 04-07-06 01:03

论坛: 菜鸟乐园

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

粤ICP备05087286号