560 likes | 787 Views
Windows 系统安全管理. 祝晓光 zhuxiaoguang@nsfocus.com. 提纲. 帐号管理 文件管理 Windows 攻击介绍 安全基本配置. 帐号管理. 用户类型. Administrator( 默认的超级管理员 ) 系统帐号 (Print Operater 、 Backup Operator) Guest( 默认来宾帐号 ). 帐户 (accounts) 和组 (groups). 帐户 (user accounts) 定义了 Windows 中一个用户所必要的信息,包括口令、安全 ID(SID) 、组成员关系、登录限制, …
E N D
Windows系统安全管理 祝晓光 zhuxiaoguang@nsfocus.com
提纲 • 帐号管理 • 文件管理 • Windows攻击介绍 • 安全基本配置
用户类型 • Administrator(默认的超级管理员) • 系统帐号(Print Operater、Backup Operator) • Guest(默认来宾帐号)
帐户(accounts)和组(groups) • 帐户(user accounts) • 定义了Windows中一个用户所必要的信息,包括口令、安全ID(SID)、组成员关系、登录限制,… • 组:universal groups、global groups、local groups • Account Identifier: Security identifier(SID) • 时间和空间唯一 • S-1-N-Y1-Y2-Y3-Y4 • Some well-known SIDs • 字符串形式和二进制形式的SID
密码存放位置 • 注册表HKEY_LOCAL_MACHINE\SAM下 • Winnt/system32/config/sam
添加/删除帐户 • Win2000/XP下 • 管理工具—计算机管理—本地用户和组 • WinNT下 • (域)用户管理器 • 命令行方式 • net user 用户名 密码 /add [/delete] • 将用户加入到组 net localgroup 组名 用户名 /add [/delete]
帐户重命名 • 将Administrator重命名 • 将Guest来宾用户重命名 • 新建一Administrator用户,隶属于Guest组
强制执行密码历史记录 24个密码 密码最长期限 42天 密码最短期限 2天 密码必须符合复杂性要求 启 用 为域中所有用户使用可还原的加密来储存密码 禁 用 密码策略的推荐设置
针对远程破解的策略定制 • 密码复杂性要求 • 账户锁定策略的推荐设置
SAM数据库与AD • SAM中口令的保存采用单向函数(OWF)或散列算法实现 • 在%systemroot%\system32\config\sam中实现 • DC上,账号与密码散列保存在%systemroot%\ntds\ntds.dit中
128位随机密钥 注册表中 散 列 保存随机密钥 软磁盘 保存到SAM文件中 注册表中,同时使用额外的口令加密 SYSKEY功能 从NT4 sp3开始提供
SID与令牌 • SID唯一标示一个对象 • 使用User2sid和sid2user工具进行双向查询 • 令牌:通过SID标示账号对象以及所属的组 SID S-1-5-21-1507001333-1204550764-1011284298-500 令牌 User=S-1-21- S-1-5-21-1507001333-1204550764-1011284298-500 Group1=EveryOne S-1-1-0 Group2=Administrators S-1-5-32-544
著名的SID 解读SID 颁发机构代码,Windows 2000总为5 相对标示符RID,一般为常数 SID S-1-5-21-1507001333-1204550764-1011284298-500 修订版本编号 子颁发机构代码,共有4个;具有唯一性 • S-1-1-0 Everyone • S-1-2-0 Interactive用户 • S-1-3-0 Creator Owner • S-1-3-1 Creator Group
使用账户名称/口令进行认证 Winlogon 用户A 成功 令牌 User=S-1-21- S-1-5-21-1507001333-1204550764-1011284298-500 Group1=EveryOne S-1-1-0 Group2=Administrators S-1-5-32-544 访问 允许 File.txt Read=A S-1-5-21… … Write=administrators S-1-5-32-544… Windows 2000认证与授权访问 SRM,安全参考监视器
Windows系统的用户权利 下面列出了用户的特定权利: • Access this computer from network 可使用户通过网络访问该计算机。 • Add workstation to a domain 允许用户将工作站添加到域中。 • Backup files and directories 授权用户对计算机的文件和目录进行备份。 • Change the system time 用户可以设置计算机的系统时钟。 • Load and unload device drive 允许在网络上安装和删除设备驱动程序。 • Restore files and directories 允许用户恢复以前备份的文件和目录。 • Shutdown the system 允许用户关闭系统。
Windows系统的用户权限 • 权限适用于对特定对象如目录和文件(只适用于NTFS卷)的操作, 指定允许哪些用户可以使用这些对象,以及如何使用(如把某个目录的访问权限授予指定的用户)。权限分为目录权限和文件权限,每一个权级别都确定了一个执行特定的任务组合的能力,这些任务是: Read(R)、Execute(X)、Write(W)、Delete(D)、Set Permission(P)和 Take Ownership(O)。下表显示了这些任务是如何与各种权限级 别相关联的。
Windows系统的共享权限 • 共享只适用于文件夹(目录),如果文件夹不是共享的,那么在网 络上就不会有用户看到它,也就更不能访问。网络上的绝大多数服务器 主要用于存放可被网络用户访问的文件和目录,要使网络用户可以访问 在NT Server服务器上的文件和目录,必须首先对它建立共享。共享权 限建立了通过网络对共享目录访问的最高级别。
复制和移动文件夹 • 从一个NTFS分区到另一个NTFS分区 • 复制/移动都是继承权限(不同分区,移动=复制+删除) • 同一个NTFS分区 • 复制:继承 • 移动:保留 • 复制/移动到FAT(32)分区 • NTFS权限丢失
Windows系统服务 • 服务包括三种启动类型:自动,手动,禁用 自动 - Win 2000启动时自动加载服务 手动 - Win 2000启动时不自动加载服务,在需要的时候手动开启 禁用 - Win 2000启动的时候不自动加载服务,在需要的时候选择手 动或者自动方式开启服务,并重新启动电脑完成服务的配置 • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Service 底下每一笔 服务项目子项都有一个 Start 数值, 该 数值内容所记录的就是服务项目驱动程式该在何时被加载。 • 目 前微软对 Start 内容的定义有 0、1、2、3、4 等五种状态, 0、1、2 分别代表 Boot、 System、Auto Load 等叁种意义。而 Start 数值内容为 3 的服务项目代表让使用 者以手动的方式载入(Load on demand), 4 则是代表停用的状态, 也就是禁用。
Windows的系统进程 基本的系统进程 • smss.exe Session Manager • csrss.exe 子系统服务器进程 • winlogon.exe 管理用户登录 • services.exe 包含很多系统服务 • lsass.exe 管理 IP 安全策略以及启动 ISAKMP/Oakley (IKE) 和 IP 安全驱动程序。(系统服务) • svchost.exe 包含很多系统服务 • spoolsv.exe 将文件加载到内存中以便迟后打印。(系统服务) • explorer.exe 资源管理器 • internat.exe 输入法
Windows的系统进程 附加的系统进程(这些进程不是必要的) • mstask.exe 允许程序在指定时间运行。(系统服务) • regsvc.exe 允许远程注册表操作。(系统服务) • winmgmt.exe 提供系统管理信息(系统服务)。 • inetinfo.exe 通过 Internet 信息服务的管理单元提供 FTP 连接和管理。(系统服务) • tlntsvr.exe 允许远程用户登录到系统并且使用命令行运行控制台程序。(系统服务) • termsrv.exe 提供多会话环境允许客户端设备访问虚拟的 Windows 2000 Professional 桌面会话以及运行在服务器上的基于 Windows 的程序。(系统服务) • dns.exe 应答对域名系统(DNS)名称的查询和更新请求。(系统服务)
Windows的系统进程 • tcpsvcs.exe 提供在 PXE 可远程启动客户计算机上远程安装 Windows 2000 Professional 的能力。(系统服务) • ismserv.exe 允许在 Windows Advanced Server 站点间发送和接收消息。(系统服务) • ups.exe 管理连接到计算机的不间断电源(UPS)。(系统服务) • wins.exe 为注册和解析 NetBIOS 型名称的 TCP/IP 客户提供 NetBIOS 名称服务。(系统服务) • llssrv.exe License Logging Service(system service) • ntfrs.exe 在多个服务器间维护文件目录内容的文件同步。(系统服务) • RsSub.exe 控制用来远程储存数据的媒体。(系统服务) • locator.exe 管理 RPC 名称服务数据库。(系统服务) • lserver.exe 注册客户端许可证。(系统服务) • dfssvc.exe 管理分布于局域网或广域网的逻辑卷。(系统服务)
Windows的系统进程 • msdtc.exe 并列事务,是分布于两个以上的数据库,消息队列,文件系统,或其它事务保护资源管理器。(系统服务) • faxsvc.exe 帮助您发送和接收传真。(系统服务) • cisvc.exe Indexing Service(system service) • dmadmin.exe 磁盘管理请求的系统管理服务。(系统服务) • mnmsrvc.exe 允许有权限的用户使用 NetMeeting 远程访问 Windows 桌面。(系统服务) • netdde.exe 提供动态数据交换 (DDE) 的网络传输和安全特性。(系统服务) • smlogsvc.exe 配置性能日志和警报。(系统服务) • rsvp.exe 为依赖质量服务(QoS)的程序和控制应用程序提供网络信号和本地通信控制安装功能。(系统服务) • RsEng.exe 协调用来储存不常用数据的服务和管理工具。(系统服务) • RsFsa.exe 管理远程储存的文件的操作。(系统服务)
Windows的系统进程 • grovel.exe 扫描零备份存储(SIS)卷上的重复文件,并且将重复文件指向一个数据存储点,以节省磁盘空间。(系统服务) • SCardSvr.exe 对插入在计算机智能卡阅读器中的智能卡进行管理和访问控制。(系统服务) • snmp.exe 包含代理程序可以监视网络设备的活动并且向网络控制台工作站汇报。(系统服务) • snmptrap.exe 接收由本地或远程 SNMP 代理程序产生的陷阱消息,然后将消息传递到运行在这台计算机上 SNMP 管理程序。(系统服务) • UtilMan.exe 从一个窗口中启动和配置辅助工具。(系统服务) • msiexec.exe 依据 .MSI 文件中包含的命令来安装、修复以及删除软件。(系统服务)
Window 小工具介绍 • ntlast • psu • tlist • fport
踩点---扫描 • 主机扫描 • 网络扫描 • 端口扫描 • 共享扫描
主机扫描 • 探测主机相关信息 • 系统命令 • Ping telnet whois tracert nslookup • 扫描工具 • Ws_pingpropack、Pinger…..
TTL=1 数据 小于等于0 ICMP time exceeded 发IP包的源地址 IP包的所有内容 路由器的IP地址 Traceroute 路由跟踪原理 A B ???TTL-1>0
TTL=1 数据 小于等于0 ICMP time exceeded 发IP包的源地址 IP包的所有内容 路由器的IP地址 我知道路由器A存在于这个路径上 路由器A的IP地址 Traceroute 路由跟踪原理 A B
TTL=1 TTL=2 数据 数据 小于等于0 ???TTL-1>0 2-1=1>0 ICMP time exceeded 发IP包的源地址 IP包的所有内容 路由器的IP地址 我知道路由器A存在于这个路径上 路由器A的IP地址 路由器B的IP地址 我知道路由器B存在于这个路径上 Traceroute 路由跟踪原理 A B ???TTL-1>0
TTL=2 TTL=3 数据 数据 TTL=1 数据 ???TTL-1>0 ???TTL-1>0 2-1=1>0 3-1=2>0 ICMP port unreachable port number 是一个一般应用程序都不会用的号码(30000 以上),所以当此数据包 到达目的地后该主机会送回一个「ICMP port unreachable」的消息,而当源主机收到这个消息时,便知道目的地已经到达了。 我知道路由器A存在于这个路径上 路由器A的IP地址 我到达了目的地 Traceroute 路由跟踪原理 A B 路由器B的IP地址 我知道路由器B存在于这个路径上
Firewalking攻击 • 使用类似于路由跟踪的IP数据包分析方法来测定一个特殊的数据包能否从攻击者传送到位于数据包过滤设备后的主机 • 用于探测网关上打开(open)或允许通过(pass through)端口 • 能构测定带有各种控制信息的数据包能否通过给定的网关 • 能够探测位于数据包过滤设备后的路由器
使用ICMP的Traceroute原理 • 由于防火墙一般不进行内容检查,我们可以将探测数据包到达防火墙时端口为其接受的端口,就可以绕过防火墙到达目标主机。 • 起始端口号计算公式 • 起始端口号=(目标端口-两机间的跳数*探测数据包数)-1 • 例:防火墙允许FTP数据包通过,即开放了21号端口,两机间跳数为2 • 起始端口号=(ftp端口-两机间的跳数*默认的每轮跳数)-1 • =(21-2*3)-1 • = 15-1 • = 14
网络扫描 • 探测网络拓扑结构,存活主机列表等 • 系统命令 • tracert(traceroute) nslookup • 工具 • Nmap PingpropackXscan 流光
端口扫描 Netscan tools扫描结果 端口扫描不仅可以返回IP地址,还可以发现目标系统上活动的UDP和TCP端口
端口扫描原理 • 一个端口就是一个潜在的通信通道,即入侵通道。 • 对目标计算机进行端口扫描,得到有用的信息。 • 扫描的方法 • 手工进行扫描 熟悉各种命令。对命令执行后的输出进行分析 • 端口扫描软件许多扫描器软件都有分析数据的功能。通过端口扫描,可以得到许多有用的信息,从而发现系统的安全漏洞。
TCP/IP相关问题 • 一个TCP头包含6个标志位。它们的意义分别为: • SYN:标志位用来建立连接,让连接双方同步序列号。如果SYN=1而ACK=0,则表示该数据包为连接请求,如果SYN=1而ACK=1则表示接受连接; • FIN:表示发送端已经没有数据要求传输了,希望释放连接; • RST:用来复位一个连接。RST标志置位的数据包称为复位包。一般情况下,如果TCP收到的一个分段明显不是属于该主机上的任何一个连接,则向远端发送一个复位包; • URG:为紧急数据标志。如果它为1,表示本数据包中包含紧急数据。此时紧急数据指针有效; • ACK:为确认标志位。如果为1,表示包中的确认号时有效的。否则,包中的确认号无效; • PSH:如果置位,接收端应尽快把数据传送给应用层。
共享扫描 • 检测主机所开放的共享和帐户信息等 • 系统命令 • net use / net view • 工具 • Redbutton/ Pingpropack /流光/SSS
Windows下的攻击 • 帐号破解 • NAT / 流光/ SSS • 缓冲区溢出 • IIS unicode • Webdav • Dcom rpc
Windows下的攻击 • 安装后门 • 新建帐号、激活guest • Netbus、冰河、BO、网络神偷 • 安装sniffer工具 • 清除日志文件 • 作为跳板攻击其它机器
Windows 系统安全配置 • 采用正版光盘进行安装 • 将系统安装在NTFS分区上 • 系统、数据、应用程序应安装在不同的分区 • 只安装必需的组件、服务和协议 • 及时下载安装最新的补丁 • 制作紧急修复盘 • rdisk /s (NT) • Ntbackup(2000) • 开始-附件-系统工具-备份
本地安全策略 • 帐号安全策略 • 审核策略 • 其它安全选项