1、,Windows 系统原理及加固,成都天融信公司,陈立果:13880052644,系统原理,安全配置,Windows安全原理篇,Windows系统的安全架构,Windows NT系统内置支持用户认证,访问控制,管理,审核,加密,Windows系统的安全主体,Windows安全子系统的组件,安全标识符(Security Identifiers):就是我们经常说的SID,每次当我们创建一个用户或一个组的时候,系统会分配给改用户或组一个唯一SID,当你重新安装系统后,也会得到一个唯一的SID。例: S-1-5-21-1763234323-3212657521-1234321321-500访问令牌(A
2、ccess tokens):用户通过验证后,登陆进程会给用户一个访问令牌,该令牌相当于用户访问系统资源的票证,当用户试图访问系统资源时,将访问令牌提供给Windows 系统,然后Windows NT检查用户试图访问对象上的访问控制列表。如果用户被允许访问该对象,系统将会分配给用户适当的访问权限。,Windows安全子系统的组件,安全描述符(Security descriptors):Windows 系统中的任何对象的属性都有安全描述符这部分。它保存对象的安全配置。 访问控制列表(Access control lists):访问控制列表有两种:任意访问控制列表(Discretionary ACL
3、)、系统访问控制列表(System ACL)。任意访问控制列表包含了用户和组的列表,以及相应的权限,允许或拒绝。每一个用户或组在任意访问控制列表中都有特殊的权限。而系统访问控制列表是为审核服务的,包含了对象被访问的时间。 访问控制项(Access control entries):访问控制项(ACE)包含了用户或组的SID以及对象的权限。访问控制项有两种:允许访问和拒绝访问。拒绝访问的级别高于允许访问。,Windows安全子系统,Windows 安全子系统,Windows安全子系统,Windows安全子系统,Windows安全子系统,Windows安全子系统,Windows安全子系统,Wind
4、ows系统的用户权利,Windows系统的用户权限,Windows系统的用户权限目录权限,如果对目录有Execute(X)权限,表示可以穿越目录,进入其子目录。,Windows系统的用户权限文件权限,Windows的密码系统,安全帐号管理器(security account manager): 安全帐号管理器对帐号的管理是通过安全标识进行的 安全标识在帐号创建时就同时创建 帐号被删除,安全标识也同时被删除 安全标识是唯一的,即使是相同的用户名,在每次创建时获得的安全标识都时完全不同的 因此某个帐号被删除,它的安全标识就不再存在了,即使用相同的用户名重建帐号,也会被赋予不同的权限。,Window
5、s的密码系统,Windows的密码系统,Windows的系统服务,命令行中输入services.msc打开服务列表。,Windows的系统服务,在HKEY_LOCAL_MACHINESYSTEMCurrentControlSetService 底下每一笔 服务项目子项都有一个 Start 数值 这个数值的内容依照每一个服务项目的状 况而又有不同。Start 数值内容所记录的就是服务项目驱动程式该在何时被加载。 目 前微软对 Start 内容的定义有 0、1、2、3、4 等五种状态, 0、1、2 分别代表 Boot、 System、Auto Load 等叁种意义 而 Start 数值内容为 3
6、的服务项目代表让使用 者以手动的方式载入(Load on demand), 4 则是代表停用的状态, 也就是禁用。,Windows的系统进程,Windows的系统进程,Windows的 Log系统,Windows的 Log系统,日志在系统的位置是: %SYSTEMROOT%system32configSysEvent.Evt %SYSTEMROOT%system32configSecEvent.Evt %SYSTEMROOT%system32configAppEvent.EvtLOG文件在注册表的位置是: HKEY_LOCAL_MACHINESystemCurrent Control SetS
7、ervicesEventlog,Windows的应用系统日志,Internet信息服务FTP日志默认位置: %systemroot%system32logfilesmsftpsvc1,默认每天一个日志 Internet信息服务WWW日志默认位置:%systemroot%system32logfilesw3svc1,默认每天一个日志 FTP日志和WWW日志文件名通常为ex(年份)(月份)(日期),例如ex001023,就是2000年10月23日产生的日志,用记事本就可直接打开Scheduler服务日志默认位置:%systemroot%schedlgu.txt,HTTP的日志分析,HTTP日志分析
8、: #Software: Microsoft Internet Information Services 5.0 #Version: 1.0 #Date: 20001023 03:09:31 #Fields: date time cip csusername sip sport csmethod csuristem csuriquery scstatus cs(UserAgent) 20001023 03:09:31 192.168.1.26 192.168.1.37 80 GET /iisstart.asp 200 Mozilla/4.0+(compatible;+MSIE+5.0;+Win
9、dows+98;+DigExt) 20001023 03:09:34 192.168.1.26 192.168.1.37 80 GET /pagerror.gif 200 Mozilla/4.0+(compatible;+MSIE+5.0;+Windows+98;+DigExt) 通过分析第六行,可以看出2000年10月23日,IP地址为192.168.1.26的用户通过访问IP地址为192.168.1.37机器的80端口,查看了一个页面iisstart.asp,这位用户的浏览器为compatible;+MSIE+5.0;+Windows+98+DigExt,有经验的管理员就可通过安全日志、F
10、TP日志和WWW日志来确定入侵者的IP地址以及入侵时间,系统原理,安全配置,Windows安全配置,安装,安装,帐户安全策略,管理员权限配置,网络服务安全配置,限制对外开放的端口:系统可以使用ipsec的端口限制功能,或者是第三方的防火墙;,网络服务安全配置,文件系统安全,EFS-加密文件系统 EFS全称是-Encrypting File System加密文件系统,是Windows 2000及以上Windows版本中,磁盘格式化为NTFS的文件加密功能。 EFS对用户是透明的 EFS加密速度很快 启用后记得备份证书,否则重装系统后原加密文件无法读取,文件系统安全,目录和文件权限: 细致的设置目
11、录和文件的访问权限可以大幅提高系统的安全性。在默认的情况下,大多数的文件夹(包括所有的根目录)对所有用户(Everyone这个组)是完全敞开的(Full Control),需要根据应用的需要进行权限重设。在进行权限控制时,请记住以下几个原则 权限是累计的:如果一个用户同时属于两个组,那么他就有了这两个组所允许的所有权限 拒绝的权限要比允许的权限高(拒绝策略会先执行)如果一个用户属于一个被拒绝访问某个资源的组,那么不管其他的权限设置给他开放了多少权限,他也一定不能访问这个资源。所以请非常小心地使用拒绝,任何一个不当的拒绝都有可能造成系统无法正常运行 文件权限比文件夹权限高 仅给用户真正需要的权限
12、,权限的最小化原则是安全的重要保障,重要的系统命令安全,其他的安全设置,关闭自动打开的管理共享 HKEY_LOCAL_MACHINE SystemCurrentControlSetServicesLanmanServerParameters 键值 AutoShareServer 类型 REG_DWORD 数据 0 不显示最后登录用户姓名 HKEY_LOCAL_MACHINESOFTWARE MicrosoftWindows NTCurrentVersionWinlogon 增添键值 DontDisplayLastUserName 类型 REG_SZ 数值 1,SYSKEY机制在NT里,口令字密
13、文保存在SAM文件里。NT4SP3以后,微软又对保存在SAM文件里口令字密文增加了一层加密保护机制,这就是SYSKEY机制。可以在开始-运行键入“SYSKEY”命令,得到如下窗口,手动激活SYSKEY机制:,其他的安全设置,IIS服务安全配置,禁用或删除所有的示例应用程序 示例只是示例;在默认情况下,并不安装它们,且从不在生产服务器上安装。请注意一些示例安装,它们只可从 http:/localhost 或 127.0.0.1 访问;但是,它们仍应被删除。 下面 列出一些示例的默认位置。 示例 虚拟目录 位置IIS 示例 IISSamples c :inetpubiissamples IIS 文
14、档 IISHelp c:winnthelpiishelp 数据访问 MSADC c:program filescommon filessystemmsadc,IIS服务安全配置,删除无用的脚本映射 IIS 被预先配置为支持常用的文件名扩展如 .asp 和 .shtm 文件。IIS 接收到这些类型的文件请求时,该调用由 DLL 处理。如果您不使用其中的某些扩展或功能,则应删除该映射,步骤如下: 打开 Internet 服务管理器。 右键单击 Web 服务器,然后从上下文菜单中选择“属性”。 主属性 选择 WWW 服务 | 编辑 | 主目录 | 配置,IIS服务安全配置,禁用父路径 “父路径”选项
15、允许在对诸如 MapPath 函数调用中使用“”。在默认情况下,该选项处于启用状态,应该禁用它。禁用该选项的步骤如下: 右键单击该 Web 站点的根,然后从上下文菜单中选择“属性”。 单击“主目录”选项卡。 单击“配置”。 单击“应用程序选项”选项卡。 取消选择“启用父路径”复选框。 禁用-内容位置中的 IP 地址 “内容-位置”标头可暴露通常在网络地址转换 (NAT) 防火墙或代理服务器后面隐藏或屏蔽的内部 IP 地址。,IIS服务安全配置,设置适当的 IIS 日志文件 ACL 请确保 IIS 产生的日志文件 (%systemroot%system32LogFiles) 上的 ACL 是 A
16、dministrators(完全控制) System(完全控制) Everyone (RX) 这有助于防止恶意用户为隐藏他们的踪迹而删除文件。设置适当的 虚拟目录的权限 请确保 IIS 的虚拟目录如scripts等权限设置是否最小化,删除不需要的目录。将iis目录重新定向不要使用系统默认的路径,自定义WEB主目录路径并作相应的权限设置。使用专门的安全工具 微软的IIS安全设置工具:IIS Lock Tool;是针对IIS的漏洞设计的,可以有效设置IIS安全属性。,安全日志,Windows的默认安装是不开安全审核本地安全策略-审核策略中打开相应的审核推荐的审核是: 账户管理 成功 失败 登录事件 成功 失败 对象访问 失败 策略更改 成功 失败 特权使用 失败 系统事件 成功 失败 目录服务访问 失败 账户登录事件 成功 失败,长期的系统维护,安全任重道远,谢谢!,