热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Windows操作系统账户权限设置详解

随着动网论坛的广泛应用和动网上传漏洞的被发现以及SQL注入式攻击越来越多的被使用,WEBSHELL让防火墙形同虚设,一台即使打了所有微软补?⒅蝗?0端口对外开放的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服务,并发现其服务软件使用的是IIS5.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来解释执行的,所以它的执行并不需要运行的权限。




推荐阅读
  • 服务器部署中的安全策略实践与优化
    服务器部署中的安全策略实践与优化 ... [详细]
  • 字节跳动深圳研发中心安全业务团队正在火热招募人才! ... [详细]
  • WinMain 函数详解及示例
    本文详细介绍了 WinMain 函数的参数及其用途,并提供了一个具体的示例代码来解析 WinMain 函数的实现。 ... [详细]
  • 在CentOS 7环境中安装配置Redis及使用Redis Desktop Manager连接时的注意事项与技巧
    在 CentOS 7 环境中安装和配置 Redis 时,需要注意一些关键步骤和最佳实践。本文详细介绍了从安装 Redis 到配置其基本参数的全过程,并提供了使用 Redis Desktop Manager 连接 Redis 服务器的技巧和注意事项。此外,还探讨了如何优化性能和确保数据安全,帮助用户在生产环境中高效地管理和使用 Redis。 ... [详细]
  • 性能测试中的关键监控指标与深入分析
    在软件性能测试中,关键监控指标的选取至关重要。主要目的包括:1. 评估系统的当前性能,确保其符合预期的性能标准;2. 发现软件性能瓶颈,定位潜在问题;3. 优化系统性能,提高用户体验。通过综合分析这些指标,可以全面了解系统的运行状态,为后续的性能改进提供科学依据。 ... [详细]
  • 在 Axublog 1.1.0 版本的 `c_login.php` 文件中发现了一个严重的 SQL 注入漏洞。该漏洞允许攻击者通过操纵登录请求中的参数,注入恶意 SQL 代码,从而可能获取敏感信息或对数据库进行未授权操作。建议用户尽快更新到最新版本并采取相应的安全措施以防止潜在的风险。 ... [详细]
  • 2021年Java开发实战:当前时间戳转换方法详解与实用网址推荐
    在当前的就业市场中,金九银十过后,金三银四也即将到来。本文将分享一些实用的面试技巧和题目,特别是针对正在寻找新工作机会的Java开发者。作者在准备字节跳动的面试过程中积累了丰富的经验,并成功获得了Offer。文中详细介绍了如何将当前时间戳进行转换的方法,并推荐了一些实用的在线资源,帮助读者更好地应对技术面试。 ... [详细]
  • 如何有效防御网站中的SQL注入攻击
    本期文章将深入探讨网站如何有效防御SQL注入攻击。我们将从技术层面详细解析防范措施,并结合实际案例进行阐述,旨在帮助读者全面了解并掌握有效的防护策略。希望本文能为您的网络安全提供有益参考。 ... [详细]
  • 如何在Linux系统中实现Windows风格的桌面环境:将Ubuntu 18.04定制为Windows主题界面
    如果您是从Windows转到Linux系统的用户,可能会觉得默认的Ubuntu主题和桌面环境缺乏吸引力和可定制性。尤其是对于习惯了Windows风格的任务栏和主题的用户,Ubuntu 18.04的橙色主题可能显得过于简洁。为了提升用户体验,可以通过安装特定的桌面环境和主题来实现类似Windows的界面效果。本文将详细介绍如何在Ubuntu 18.04中配置和定制桌面环境,使其具备Windows风格的外观和功能。 ... [详细]
  • CTF竞赛中文件上传技巧与安全绕过方法深入解析
    CTF竞赛中文件上传技巧与安全绕过方法深入解析 ... [详细]
  • 本文详细探讨了在ASP.NET环境中通过加密数据库连接字符串来提升数据安全性的方法。加密技术不仅能够有效防止敏感信息泄露,还能增强应用程序的整体安全性。文中介绍了多种加密手段及其实施步骤,帮助开发者在日常开发过程中更好地保护数据库连接信息,确保数据传输的安全可靠。 ... [详细]
  • 本文详细介绍了如何安全地手动卸载Exchange Server 2003,以确保系统的稳定性和数据的完整性。根据微软官方支持文档(https://support.microsoft.com/kb833396/zh-cn),在进行卸载操作前,需要特别注意备份重要数据,并遵循一系列严格的步骤,以避免对现有网络环境造成不利影响。此外,文章还提供了详细的故障排除指南,帮助管理员在遇到问题时能够迅速解决,确保整个卸载过程顺利进行。 ... [详细]
  • 通过以下步骤可以确定SharePoint网站集对应的W3WP进程及其运行状态:首先,打开命令提示符(CMD),然后输入 `iisapp` 命令,该命令将列出当前IIS中所有Web应用程序及其对应的w3wp.exe进程。此外,还可以使用任务管理器或PowerShell脚本来进一步检查这些进程的详细信息和运行状态,以确保网站集的正常运行。 ... [详细]
  • 为了向用户提供虚拟应用程序,通常会在基础架构中部署StoreFront或Web Interface。为了确保安全的远程访问,通常需要在DMZ中配置Secure Gateway或Access Gateway。本文详细对比了这两种界面工具的功能特性,包括用户管理、安全性、性能优化等方面,为企业选择合适的解决方案提供了全面的参考。 ... [详细]
  • 本文详细介绍了数据库并发控制的基本概念、重要性和具体实现方法。并发控制是确保多个事务在同时操作数据库时保持数据一致性的关键机制。文章涵盖了锁机制、多版本并发控制(MVCC)、乐观并发控制和悲观并发控制等内容。 ... [详细]
author-avatar
sprite_77
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有