目前,Windows 系统已经占据了绝大部分的桌面市场,同时在服务器市场也占有较大比重。长期以来,由于病毒攻击、黑客入侵等原因,给人们留下了易受攻击的不好印象。本文将以 Windows 系统安全方面展开分享一些 Windows 系统安全防护措施。
命令 | 功能 |
---|---|
ver | 查看系统版本 |
hostname | 查看主机名 |
ipconfig /all | 查看网络配置 |
net user | 查看用户 |
netstat -ano | 查看开放端口号 |
regedit | 打开注册表 |
eventvwr.msc | 打开事件查看器 |
services.msc | 打开系统服务 |
gpedit.msc | 打开组策略编辑器 |
secpol.msc | 打开本地安全策略 |
lusrmgr.msc | 打开本地用户和组 |
命令:net user
net user aaa
net user aaa /add [del]
net user aaa 123 /add [del]
net localgroup administrators aaa /add [del]
net user aaa /active:yes [no]
net localgroup admin1 /add [del]
命令:whoami
查看当前有效用户名的命令
whoami
whoami /user
whoami /all
禁用默认账户
操作步骤:
使用 WIN+R
按键,输入 lusrmgr.msc
打开 本地用户和组 > 用户 中,双击 Guest 帐户,在属性中选中 帐户已禁用,单击 确定。
排查隐藏账户
在建立账户时,如果在用户名后面加上 $ 符号,就可以建立一个简单的隐藏账户,如:test$
在字符界面下执行 net user
命令,就无法查看到这个账户,但是在图形界面的“本地用户和组”中仍然可以看到。
黑客入侵一台主机后,一般都想办法给自己留后门,而给自己加一个管理员组的账户是常用手法。由于带 $ 的账户容易被发现,黑客能耐会建立一个类似系统管理员的账户名迷惑管理员,如:admin、sysadmin、Billgates、root 等。
另外还可能通过提升普通用户的权限到管理组中,例如把 test$ 账户加入管理组。所以,我们除了要检查可疑管理员账户外,还要对可疑的普通账户进行排查。
想了解如何实现账户隐藏的,可以查看我之前写的一篇文章:Windows 系统账户隐藏
按照用户分配账户
按照用户分配帐户。根据业务要求,设定不同的用户和用户组。例如,管理员用户,数据库用户,审计用户,来宾用户等。
操作步骤:
使用 WIN+R
按键,输入 lusrmgr.msc
打开 本地用户和组 中,根据业务要求设定不同的用户和用户组,包括管理员用户、数据库用户、审计用户、来宾用户等。
定期检查并删除与无关帐户
定期删除或锁定与设备运行、维护等与工作无关的帐户。
操作步骤:
使用 WIN+R
按键,输入 lusrmgr.msc
打开 本地用户和组 中,删除或锁定与设备运行、维护等与工作无关的帐户。
隐藏最后的用户名
配置登录登出后,不显示用户名称。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 安全选项 中,双击 交互式登录:不显示最后的用户名,选择 已启用 并单击 确定。
远程关机
在本地安全设置中,从远端系统强制关机权限只分配给Administrators组。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 用户权限分配 中,配置 从远端系统强制关机 权限只分配给Administrators组。
本地关机
在本地安全设置中关闭系统权限只分配给Administrators组。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 用户权限分配 中,配置 关闭系统 权限只分配给Administrators组。
用户权限指派
在本地安全设置中,取得文件或其它对象的所有权权限只分配给Administrators组。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 用户权限分配 中,配置 取得文件或其它对象的所有权 权限只分配给Administrators组。
授权帐户登录
在本地安全设置中,配置指定授权用户允许本地登录此计算机。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 用户权限分配 中,配置 允许本地登录 权限给指定授权用户。
授权帐户从网络访问
在本地安全设置中,只允许授权帐号从网络访问(包括网络共享等,但不包括终端服务)此计算机。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 用户权限分配 中,配置 从网络访问此计算机 权限给指定授权用户。
image
密码复杂度
密码复杂度要求必须满足以下策略:
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
本地安全策略,在 帐户策略 > 密码策略 中,确认 密码必须符合复杂性要求 策略已启用。
密码最长留存期
对于采用静态口令认证技术的设备,帐户口令的留存期不应长于90天。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
本地安全策略,在 帐户策略 > 密码策略 中,配置 密码最长使用期限 不大于90天。
帐户锁定策略
对于采用静态口令认证技术的设备,应配置当用户连续认证失败次数超过10次后,锁定该用户使用的帐户。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
本地安全策略,在 帐户策略 > 帐户锁定策略 中,配置 帐户锁定阈值 不大于10次。
弱口令检查
利用一些暴力破解工具对 Windows 系统的密码以及相关服务应用的密码来检查口令是否安全。
在线方式:
利用 hydra 暴力破解内网 Windows 登录密码,以及其他应用服务密码服务,例如:FTP、SMB、SSH等等
none
hydra -l whoami -P /root/pass.txt smb://192.168.1.100
离线方式:
Pwdump7 可以在 CMD 下提取出系统中的用户的密码 hash (包括 LM 和NTLM),当然必须要有系统权限.提取出密码的 HASH 值
none
pwdump7.exe (Dump system passwords)
pwdump7.exe -s (Dump passwords from files)
pwdump7.exe -d [destionation] (Copy filename to destionation)
pwdump7.exe -h (Show this help)
-s 是从一个sam文件中提取hash,这个文件在%systemroot%configsam,这里.
-d 是把一个文件复制到另一个位置,D:>PwDump7.exe -d c:pagefile.sys pagefile.dmp
pwdump7 地址:https://www.openwall.com/passwords/windows-pwdump
解决报错问题:拷贝libeay32.dll到windows/system32下即可
再用 Ophcrack 破解 Pwdump7 提取出的 HASH 值
Ophcrack 地址:https://www.onlinedown.net/soft/44356.htm
使用 WIN+R
按键,输入 services.msc
打开系统服务管理界面
image
使用命令行开启和关闭服务
none
net stat 查看已开启的服务
net stop servername 停止服务
建议将停止不必要的服务,并将启动方式修改为手动
image
使用 WIN+R
按键,输入 regedit
打开注册表,在 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Service
底下每一服务项子项都有一个 start 数值,这个数值的内容依照每一服务项目的状况而又有不同。start 数值内容所记录的就是服务项目驱动程式该在何时启动
基本的系统进程
none
smss.exe Session Manager
csrss.exe 子系统服务进程
winlogon.exe 管理用户登录
services.exe 包含很多系统服务
lsass.exe 管理 IP 安全策略以及启动 ISAKMP/Oakley (IKE) 和安全驱动程序 (系统服务)
svchost.exe 包含很多系统服务
spoolsv.exe 将文件加载到内存中以便此后打印 (系统服务)
explorer.exe 资源管理器
internat.exe 输入法
端口与进程
使用 netstat -ano
查看进程,找到对应端口的 PID 值
image
然后在系统任务管理器的服务选项中,根据 PID 值查找该端口的服务,点击右键可以停止该服务
image
日志位置
%systemroot%\system32\config
%systemroot%\system32\config\SecEvent.EVT
%systemroot%\system32\config\SysEvent.EVT
%systemroot%\system32\config\AppEvent.EVT
%systemroot%\system32\LogFiles\
事件查看器
使用 WIN+R
按键,输入 eventvwr.msc
打开事件查看器
image
审核登录
设备应配置日志功能,对用户登录进行记录。记录内容包括用户登录使用的帐户、登录是否成功、登录时间、以及远程登录时、及用户使用的IP地址。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 审核策略 中,设置 审核登录事件。
审核策略
启用本地安全策略中对Windows系统的审核策略更改,成功和失败操作都需要审核。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 审核策略 中,设置 审核策略更改。
审核对象访问
启用本地安全策略中对Windows系统的审核对象访问,成功和失败操作都需要审核。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 审核策略 中,设置 审核对象访问。
审核事件目录服务访问
启用本地安全策略中对Windows系统的审核目录服务访问,仅需要审核失败操作。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 审核策略 中,设置 审核目录服务器访问。
审核特权使用
启用本地安全策略中对Windows系统的审核特权使用,成功和失败操作都需要审核。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 审核策略 中,设置 审核特权使用。
审核系统事件
启用本地安全策略中对Windows系统的审核系统事件,成功和失败操作都需要审核。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 审核策略 中,设置 审核系统事件。
审核帐户管理
启用本地安全策略中对Windows系统的审核帐户管理,成功和失败操作都要审核。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 审核策略 中,设置 审核帐户管理。
审核过程追踪
启用本地安全策略中对Windows系统的审核进程追踪,仅失败操作需要审核。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 审核策略 中,设置 审核进程追踪。
前提条件
NTFS 分区:
分区转换:
convert D:/fs:ntfs
文件权限细分
ACL(access control list)访问控制列表
image
文件权限特性
权限的优先顺序:
移动、复制对权限继承性的影响:
关闭默认文件共享
非域环境中,关闭Windows硬盘默认共享,例如C , D ,D ,D。
操作步骤:
使用 WIN+R
按键,输入 regedit
打开 注册表编辑器,根据推荐值修改注册表键值。
注意: Windows Server 2012版本已默认关闭Windows硬盘默认共享,且没有该注册表键值。
共享文件夹授权访问
每个共享文件夹的共享权限,只允许授权的帐户拥有共享此文件夹的权限。
操作步骤:
每个共享文件夹的共享权限仅限于业务需要,不要设置成为 Everyone。打开 控制面板 > 管理工具 > 计算机管理,在 共享文件夹 中,查看每个共享文件夹的共享权限。
启用安全选项
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 安全选项 中,进行如下设置:
image
禁用未登录前关机
服务器默认是禁止在未登录系统前关机的。如果启用此设置,服务器安全性将会大大降低,给远程连接的黑客造成可乘之机,强烈建议禁用未登录前关机功能。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 安全选项 中,禁用 关机: 允许系统在未登录前关机 策略。
防病毒管理
Windows系统需要安装防病毒软件。
操作步骤:
安装企业级防病毒软件,并开启病毒库更新及实时防御功能。
设置屏幕保护密码和开启时间
设置从屏幕保护恢复时需要输入密码,并将屏幕保护自动开启时间设定为五分钟。
操作步骤:
启用屏幕保护程序,设置等待时间为 5分钟,并启用 在恢复时使用密码保护。
限制远程登录空闲断开时间
对于远程登录的帐户,设置不活动超过时间15分钟自动断开连接。
操作步骤:
使用 WIN+R
按键,输入 secpol.msc
打开 本地安全策略,在 本地策略 > 安全选项 中,设置 Microsoft网络服务器:暂停会话前所需的空闲时间数量 属性为15分钟。
操作系统补丁管理
安装最新的操作系统Hotfix补丁。安装补丁时,应先对服务器系统进行兼容性测试。
操作步骤:
安装最新的操作系统Hotfix补丁。安装补丁时,应先对服务器系统进行兼容性测试。
注意:对于实际业务环境服务器,建议使用通知并自动下载更新,但由管理员选择是否安装更新,而不是使用自动安装更新,防止自动更新补丁对实际业务环境产生影响。
系统启动
系统资源
网络流量异常
发现途径
查看遗留痕迹
IE 临时文件
访问地址记录
使用文件记录
cookie 记录
计划任务
at
命令查看回收站
注册表
检查交换文件
分析入侵状况
日志审核首要条件:
系统日志:
应用程序日志:
安全性日志:
WEB 日志:
%systemroot%\system32\logfiles
下的相应子目录中复查确认后门清理完毕:Pslist lceSword
判断系统存在漏洞
修复系统存在漏洞,并加固系统
启动所有应用,测试是否正常运行
Autoruns
使用 Autoruns 可列举常见的启动条目,在启动条目中,因为大部分恶意程序自身不会含有过多的描述信息,因此通过检查 Publisher 和 Description 两条项目可排除一些较简单的后门程序或恶意代码
image
在后门程序运行的过程中,后门程序除正常的访问一些敏感文件、注册表行等行为外,还可能会出现创建模块等异常行为,而这些额外创建出来的文件会辅助恶意程序的主进程工作,放置主进程被用户或杀毒软件中断,因此,可通过监控工具来查看恶意程序的行为
Filemon
image
Filemon 会以进程为线索、列举该进程已何种方式(即,界面中的“请求”)对什么文件(即,界面中的“路径”)进行什么样的访问(请求方式分为 OPEN、READ、QUERY、CLOSE 等),以及访问是否成功(即,界面中的“结果”)
image
如果需要对特定的进程进行监视或过滤,可点击快捷菜单上的漏洞图标,填写指定的进程名来进行结果过滤
Regmon
Regmon 与 Filemon 使用方法相同,不过 Regmon 是用于监控进程对注册表的操作行为
image
lceSword–冰刃
lceSword 是一款集合了较多实用功能的安全检测工具,利用 lceSword 的进程功能,可查看系统中是否存在隐藏进程,若存在,则该进程会被自动标注为红色
image
类似的,在 SSDT 中也会查找到隐藏的驱动
image
账号的审计信息
若系统配置了审计,则会在事件查看器的安全性日志中查看到某些非管理员账号的登录、文件访问等行为
image
用户目录
若用户账号仅是通过net命令或用户管理员程序删除的,那么,系统中仍然会残留有该用户的目录,目录中的一些人家会记录用户的某些特定行为,便于追查,这些文件如下:
(以系统安装在C盘、恶意用户为 cracker 为例)
Windows 安全日志
使用 WIN+R
按键,输入 eventvwr.msc
吗,选中 Windows 日志进行分析
image
IIS 日志分析
image
IIS 日志分析 - 攻击者的目录扫描行为
image
IIS 日志分析 - 攻击者的 SQL 注入行为
image
Settings\cracker\Recent
Windows 安全日志
使用 WIN+R
按键,输入 eventvwr.msc
吗,选中 Windows 日志进行分析
[外链图片转存中…(img-sJyNQ6Hx-1649754581651)]
image
IIS 日志分析
[外链图片转存中…(img-zVPyKTeP-1649754581651)]
image
IIS 日志分析 - 攻击者的目录扫描行为
[外链图片转存中…(img-i0wRIfqR-1649754581652)]
image
IIS 日志分析 - 攻击者的 SQL 注入行为
[外链图片转存中…(img-bl7AdhyR-1649754581652)]
image