找回密码
 注册
搜索
热搜: 回贴
微赢网络技术论坛 门户 安全攻防 查看内容

系统帐户权限设置详解

2009-12-14 01:08| 发布者: admin| 查看: 31| 评论: 0|原作者: 云忆

随着动网论坛的广泛应用和动网上传漏洞的被发现以及SQL注入式攻击越来越多的被使用,WEBSHELL让防火墙形同虚设,一台即使打了所有微软补丁、只让80端口对外开放的WEB服务器也逃不过被黑的命运。难道我们真的无能为力了吗?其实,只要你弄明白了NTFS系统下的权限设置问题,我们可以对crackers们说:NO!
  要打造一台安全的WEB服务器,那么这台服务器就一定要使用NTFS和Windows NT/2000/2003。众所周知,Windows是一个支持多用户、多任务的操作系统,这是权限设置的基础,一切权限设置都是基于用户和进程而言的,不同的用户在访问这台计算机时,将会有不同的权限。
  DOS跟WinNT的权限的分别
  DOS是个单任务、单用户的操作系统。但是我们能说DOS没有权限吗?不能!当我们打开一台装有DOS操作系统的计算机的时候,我们就拥有了这个操作系统的管理员权限,而且,这个权限无处不在。所以,我们只能说DOS不支持权限的设置,不能说它没有权限。随着人们安全意识的提高,权限设置随着NTFS的发布诞生了。
  Windows NT里,用户被分成许多组,组和组之间都有不同的权限,当然,一个组的用户和用户之间也可以有不同的权限。下面我们来谈谈NT中常见的用户组。
  Administrators,管理员组,默认情况下,Administrators中的用户对计算机/域有不受限制的完全访问权。分配给该组的默认权限允许对整个系统进行完全控制。所以,只有受信任的人员才可成为该组的成员。
  Power Users,高级用户组,Power Users 可以执行除了为 Administrators 组保留的任务外的其他任何操作系统任务。分配给 Power Users 组的默认权限允许 Power Users 组的成员修改整个计算机的设置。但Power Users 不具有将自己添加到 Administrators 组的权限。在权限设置中,这个组的权限是仅次于Administrators的。
  Users:普通用户组,这个组的用户无法进行有意或无意的改动。因此,用户可以运行经过验证的应用程序,但不可以运行大多数旧版应用程序。Users 组是最安全的组,因为分配给该组的默认权限不允许成员修改操作系统的设置或用户资料。Users 组提供了一个最安全的程序运行环境。在经过 NTFS 格式化的卷上,默认安全设置旨在禁止该组的成员危及操作系统和已安装程序的完整性。用户不能修改系统注册表设置、操作系统文件或程序文件。Users 可以关闭工作站,但不能关闭服务器。Users 可以创建本地组,但只能修改自己创建的本地组。
  Guests:来宾组,按默认值,来宾跟普通Users的成员有同等访问权,但来宾帐户的限制更多。
  Everyone:顾名思义,所有的用户,这个计算机上的所有用户都属于这个组。
  其实还有一个组也很常见,它拥有和Administrators一样、甚至比其还高的权限,但是这个组不允许任何用户的加入,在察看用户组的时候,它也不会被显示出来,它就是SYSTEM组。系统和系统级的服务正常运行所需要的权限都是靠它赋予的。由于该组只有这一个用户SYSTEM,也许把该组归为用户的行列更为贴切。



随着动网论坛的广泛应用和动网上传漏洞的被发现以及SQL注入式攻击越来越多的被使用,WEBSHELL让防火墙形同虚设,一台即使打了所有微软补丁、只让80端口对外开放的WEB服务器也逃不过被黑的命运。难道我们真的无能为力了吗?其实,只要你弄明白了NTFS系统下的权限设置问题,我们可以对crackers们说:NO!
  要打造一台安全的WEB服务器,那么这台服务器就一定要使用NTFS和Windows NT/2000/2003。众所周知,Windows是一个支持多用户、多任务的操作系统,这是权限设置的基础,一切权限设置都是基于用户和进程而言的,不同的用户在访问这台计算机时,将会有不同的权限。
  DOS跟WinNT的权限的分别
  DOS是个单任务、单用户的操作系统。但是我们能说DOS没有权限吗?不能!当我们打开一台装有DOS操作系统的计算机的时候,我们就拥有了这个操作系统的管理员权限,而且,这个权限无处不在。所以,我们只能说DOS不支持权限的设置,不能说它没有权限。随着人们安全意识的提高,权限设置随着NTFS的发布诞生了。
  Windows NT里,用户被分成许多组,组和组之间都有不同的权限,当然,一个组的用户和用户之间也可以有不同的权限。下面我们来谈谈NT中常见的用户组。
  Administrators,管理员组,默认情况下,Administrators中的用户对计算机/域有不受限制的完全访问权。分配给该组的默认权限允许对整个系统进行完全控制。所以,只有受信任的人员才可成为该组的成员。
  Power Users,高级用户组,Power Users 可以执行除了为 Administrators 组保留的任务外的其他任何操作系统任务。分配给 Power Users 组的默认权限允许 Power Users 组的成员修改整个计算机的设置。但Power Users 不具有将自己添加到 Administrators 组的权限。在权限设置中,这个组的权限是仅次于Administrators的。
  Users:普通用户组,这个组的用户无法进行有意或无意的改动。因此,用户可以运行经过验证的应用程序,但不可以运行大多数旧版应用程序。Users 组是最安全的组,因为分配给该组的默认权限不允许成员修改操作系统的设置或用户资料。Users 组提供了一个最安全的程序运行环境。在经过 NTFS 格式化的卷上,默认安全设置旨在禁止该组的成员危及操作系统和已安装程序的完整性。用户不能修改系统注册表设置、操作系统文件或程序文件。Users 可以关闭工作站,但不能关闭服务器。Users 可以创建本地组,但只能修改自己创建的本地组。
  Guests:来宾组,按默认值,来宾跟普通Users的成员有同等访问权,但来宾帐户的限制更多。
  Everyone:顾名思义,所有的用户,这个计算机上的所有用户都属于这个组。
  其实还有一个组也很常见,它拥有和Administrators一样、甚至比其还高的权限,但是这个组不允许任何用户的加入,在察看用户组的时候,它也不会被显示出来,它就是SYSTEM组。系统和系统级的服务正常运行所需要的权限都是靠它赋予的。由于该组只有这一个用户SYSTEM,也许把该组归为用户的行列更为贴切。



随着动网论坛的广泛应用和动网上传漏洞的被发现以及SQL注入式攻击越来越多的被使用,WEBSHELL让防火墙形同虚设,一台即使打了所有微软补丁、只让80端口对外开放的WEB服务器也逃不过被黑的命运。难道我们真的无能为力了吗?其实,只要你弄明白了NTFS系统下的权限设置问题,我们可以对crackers们说:NO!
  要打造一台安全的WEB服务器,那么这台服务器就一定要使用NTFS和Windows NT/2000/2003。众所周知,Windows是一个支持多用户、多任务的操作系统,这是权限设置的基础,一切权限设置都是基于用户和进程而言的,不同的用户在访问这台计算机时,将会有不同的权限。
  DOS跟WinNT的权限的分别
  DOS是个单任务、单用户的操作系统。但是我们能说DOS没有权限吗?不能!当我们打开一台装有DOS操作系统的计算机的时候,我们就拥有了这个操作系统的管理员权限,而且,这个权限无处不在。所以,我们只能说DOS不支持权限的设置,不能说它没有权限。随着人们安全意识的提高,权限设置随着NTFS的发布诞生了。
  Windows NT里,用户被分成许多组,组和组之间都有不同的权限,当然,一个组的用户和用户之间也可以有不同的权限。下面我们来谈谈NT中常见的用户组。
  Administrators,管理员组,默认情况下,Administrators中的用户对计算机/域有不受限制的完全访问权。分配给该组的默认权限允许对整个系统进行完全控制。所以,只有受信任的人员才可成为该组的成员。
  Power Users,高级用户组,Power Users 可以执行除了为 Administrators 组保留的任务外的其他任何操作系统任务。分配给 Power Users 组的默认权限允许 Power Users 组的成员修改整个计算机的设置。但Power Users 不具有将自己添加到 Administrators 组的权限。在权限设置中,这个组的权限是仅次于Administrators的。
  Users:普通用户组,这个组的用户无法进行有意或无意的改动。因此,用户可以运行经过验证的应用程序,但不可以运行大多数旧版应用程序。Users 组是最安全的组,因为分配给该组的默认权限不允许成员修改操作系统的设置或用户资料。Users 组提供了一个最安全的程序运行环境。在经过 NTFS 格式化的卷上,默认安全设置旨在禁止该组的成员危及操作系统和已安装程序的完整性。用户不能修改系统注册表设置、操作系统文件或程序文件。Users 可以关闭工作站,但不能关闭服务器。Users 可以创建本地组,但只能修改自己创建的本地组。
  Guests:来宾组,按默认值,来宾跟普通Users的成员有同等访问权,但来宾帐户的限制更多。
  Everyone:顾名思义,所有的用户,这个计算机上的所有用户都属于这个组。
  其实还有一个组也很常见,它拥有和Administrators一样、甚至比其还高的权限,但是这个组不允许任何用户的加入,在察看用户组的时候,它也不会被显示出来,它就是SYSTEM组。系统和系统级的服务正常运行所需要的权限都是靠它赋予的。由于该组只有这一个用户SYSTEM,也许把该组归为用户的行列更为贴切。



权限实例攻击
  权限将是你的最后一道防线!那我们现在就来对这台没有经过任何权限设置,全部采用Windows默认权限的服务器进行一次模拟攻击,看看其是否真的固若金汤。
  假设服务器外网域名为http://www.webserver.com,用扫描软件对其进行扫描后发现开放WWW和FTP服务,并发现其服务软件使用的是IIS 5.0和Serv-u 5.1,用一些针对他们的溢出工具后发现无效,遂放弃直接远程溢出的想法。
  打开网站页面,发现使用的是动网的论坛系统,于是在其域名后面加个/upfile.asp,发现有文件上传漏洞,便抓包,把修改过的ASP木马用NC提交,提示上传成功,成功得到WEBSHELL,打开刚刚上传的ASP木马,发现有MS-SQL、Norton Antivirus和BlackICE在运行,判断是防火墙上做了限制,把SQL服务端口屏蔽了。
  通过ASP木马查看到了Norton Antivirus和BlackICE的PID,又通过ASP木马上传了一个能杀掉进程的文件,运行后杀掉了Norton Antivirus和BlackICE。再扫描,发现1433端口开放了,到此,便有很多种途径获得管理员权限了,可以查看网站目录下的conn.asp得到SQL的用户名密码,再登陆进SQL执行添加用户,提管理员权限。也可以抓SERV-U下的ServUDaemon.ini修改后上传,得到系统管理员权限。
  还可以传本地溢出SERV-U的工具直接添加用户到Administrators等等。大家可以看到,一旦黑客找到了切入点,在没有权限限制的情况下,黑客将一帆风顺的取得管理员权限。
  那我们现在就来看看Windows 2000的默认权限设置到底是怎样的。对于各个卷的根目录,默认给了Everyone组完全控制权。这意味着任何进入电脑的用户将不受限制的在这些根目录中为所欲为。
  系统卷下有三个目录比较特殊,系统默认给了他们有限制的权限,这三个目录是Documents and settings、Program files和Winnt。对于Documents and settings,默认的权限是这样分配的:Administrators拥有完全控制权;Everyone拥有读&运,列和读权限;Power users拥有读&运,列和读权限;SYSTEM同Administrators;Users拥有读&运,列和读权限。对于Program files,Administrators拥有完全控制权;Creator owner拥有特殊权限;Power users有完全控制权;SYSTEM同Administrators;Terminal server users拥有完全控制权,Users有读&运,列和读权限。
  对于Winnt,Administrators拥有完全控制权;Creator owner拥有特殊权限;Power users有完全控制权;SYSTEM同Administrators;Users有读&运,列和读权限。而非系统卷下的所有目录都将继承其父目录的权限,也就是Everyone组完全控制权!
  现在大家知道为什么我们刚刚在测试的时候能一帆风顺的取得管理员权限了吧?权限设置的太低了!一个人在访问网站的时候,将被自动赋予IUSR用户,它是隶属于Guest组的。本来权限不高,但是系统默认给的Everyone组完全控制权却让它“身价倍增”,到最后能得到Administrators了。
  那么,怎样设置权限给这台WEB服务器才算是安全的呢?大家要牢记一句话:“最少的服务 最小的权限=最大的安全”对于服务,不必要的话一定不要装,要知道服务的运行是SYSTEM级的哦,对于权限,本着够用就好的原则分配就是了。
  对于WEB服务器,就拿刚刚那台服务器来说,我是这样设置权限的,大家可以参考一下:各个卷的根目录、Documents and settings以及Program files,只给Administrator完全控制权,或者干脆直接把Program files给删除掉;给系统卷的根目录多加一个Everyone的读、写权;给e:\www目录,也就是网站目录读、写权。
  最后,还要把cmd.exe这个文件给挖出来,只给Administrator完全控制权。经过这样的设置后,再想通过我刚刚的方法入侵这台服务器就是不可能完成的任务了。可能这时候又有读者会问:“为什么要给系统卷的根目录一个Everyone的读、写权?网站中的ASP文件运行不需要运行权限吗?”问的好,有深度。是这样的,系统卷如果不给Everyone的读、写权的话,启动计算机的时候,计算机会报错,而且会提示虚拟内存不足。
  当然这也有个前提----虚拟内存是分配在系统盘的,如果把虚拟内存分配在其他卷上,那你就要给那个卷Everyone的读、写权。ASP文件的运行方式是在服务器上执行,只把执行的结果传回最终用户的浏览器,这没错,但ASP文件不是系统意义上的可执行文件,它是由WEB服务的提供者----IIS来解释执行的,所以它的执行并不需要运行的权限。



深入了解权限背后的意义
  经过上面的讲解以后,你一定对权限有了一个初步了了解了吧?想更深入的了解权限,那么权限的一些特性你就不能不知道了,权限是具有继承性、累加性 、优先性、交叉性的。
  继承性是说下级的目录在没有经过重新设置之前,是拥有上一级目录权限设置的。这里还有一种情况要说明一下,在分区内复制目录或文件的时候,复制过去的目录和文件将拥有它现在所处位置的上一级目录权限设置。但在分区内移动目录或文件的时候,移动过去的目录和文件将拥有它原先的权限设置。
  累加是说如一个组GROUP1中有两个用户USER1、USER2,他们同时对某文件或目录的访问权限分别为“读取”和“写入”,那么组GROUP1对该文件或目录的访问权限就为USER1和USER2的访问权限之和,实际上是取其最大的那个,即“读取” “写入”=“写入”。 又如一个用户USER1同属于组GROUP1和GROUP2,而GROUP1对某一文件或目录的访问权限为“只读”型的,而GROUP2对这一文件或文件夹的访问权限为“完全控制”型的,则用户USER1对该文件或文件夹的访问权限为两个组权限累加所得,即:“只读” “完全控制”=“完全控制”。
  优先性,权限的这一特性又包含两种子特性,其一是文件的访问权限优先目录的权限,也就是说文件权限可以越过目录的权限,不顾上一级文件夹的设置。另一特性就是“拒绝”权限优先其它权限,也就是说“拒绝”权限可以越过其它所有其它权限,一旦选择了“拒绝”权限,则其它权限也就不能取任何作用,相当于没有设置。
  交叉性是指当同一文件夹在为某一用户设置了共享权限的同时又为用户设置了该文件夹的访问权限,且所设权限不一致时,它的取舍原则是取两个权限的交集,也即最严格、最小的那种权限。如目录A为用户USER1设置的共享权限为“只读”,同时目录A为用户USER1设置的访问权限为“完全控制”,那用户USER1的最终访问权限为“只读”。
  权限设置的问题我就说到这了,在最后我还想给各位读者提醒一下,权限的设置必须在NTFS分区中才能实现的,FAT32是不支持权限设置的。同时还想给各位管理员们一些建议:
  1.养成良好的习惯,给服务器硬盘分区的时候分类明确些,在不使用服务器的时候将服务器锁定,经常更新各种补丁和升级杀毒软件。
  2.设置足够强度的密码,这是老生常谈了,但总有管理员设置弱密码甚至空密码。
  3.尽量不要把各种软件安装在默认的路径下
  4.在英文水平不是问题的情况下,尽量安装英文版操作系统。
  5.切忌在服务器上乱装软件或不必要的服务。
  6.牢记:没有永远安全的系统,经常更新你的知识。

最新评论

QQ|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )

GMT+8, 2024-9-30 09:32 , Processed in 0.091243 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

返回顶部