渗透基础篇 · Windows
Windows
windows server介绍🎶
主要版本及特点
- Windows Server 2012:引入了全新的用户界面,增强了虚拟化、存储和网络功能。
- Windows Server 2016:基于 Windows 10 1607 开发,新增了 Nano Server 安装选项,支持 Windows 容器和 Hyper-V 容器,强化了安全特性。
- Windows Server 2019:基于 Windows 10 1809 开发,集成了 Windows Admin Center,增强了安全功能和存储能力
- Windows Server 2022:作为最新的长期服务版本(LTSC),进一步提升了安全性、混合云功能和应用平台支持。
主流版本
截至目前,以下版本仍在广泛使用:
- Windows Server 2019:发布于2018年11月13日,主流支持已结束,延伸支持将持续至2029年1月9日。
- Windows Server 2022:发布于2021年8月18日,主流支持预计持续至2026年10月13日,延伸支持至2031年10月14日。
常用DOS命令🍿🍿
这些命令主要用于 Windows 操作系统中的网络管理和系统操作。每个命令的作用和常见用法如下:
1. net user
- 作用:用于管理本地用户账户(创建、删除、修改密码等)。
- 常见用法:
- 查看本地用户列表:
net user
- 创建用户:
net user username password /add
- 删除用户:
net user username /delete
- 修改用户密码:
net user username newpassword
- 查看本地用户列表:
2. netstat
- 作用:显示网络连接、路由表、接口状态等网络相关信息。
- 常见用法:
- 查看当前活动的网络连接:
netstat
- 显示所有网络连接及端口状态:
netstat -a
- 显示所有网络连接及其 PID(进程 ID):
netstat -ano
- 查看当前活动的网络连接:
3. ping
- 作用:用于测试网络连接性,判断目标主机是否可达。
- 常见用法:
- 测试到某个地址的连通性:
ping www.google.com
- 设置特定的发送次数:
ping www.google.com -n 5
- 测试到某个地址的连通性:
4. tracert
- 作用:跟踪数据包到达目标主机的路径。
- 常见用法:
- 跟踪到某个网站的路径:
tracert www.google.com
- 跟踪到某个网站的路径:
5. telnet
- 作用:远程访问其他计算机的命令行接口,通常用于测试某端口是否开放。
- 常见用法:
- 连接到某个主机的特定端口:
telnet 192.168.1.1 80
- 如果没有安装
telnet
,可以在“控制面板”中启用该功能。
- 连接到某个主机的特定端口:
6. ipconfig
- 作用:显示和管理计算机的 IP 配置,主要用于查看当前网络连接的信息(如 IP 地址、子网掩码、默认网关等)。
- 常见用法:
- 查看当前网络配置:
ipconfig
- 显示所有接口的详细信息:
ipconfig /all
- 刷新 DNS 缓存:
ipconfig /flushdns
- 查看当前网络配置:
7. cd
- 作用:用于更改当前的工作目录。
- 常见用法:
- 进入指定目录:
cd C:\Users\Username\Documents
- 返回上一级目录:
cd ..
- 进入根目录:
cd \
- 进入指定目录:
8. dir
- 作用:列出当前目录中的文件和文件夹。
- 常见用法:
- 查看当前目录的文件列表:
dir
- 查看某个指定目录的文件列表:
dir C:\Users\Username\Documents
- 查看当前目录的文件列表:
本地用户/组及ACL🙌
Windows 内置本地账户和用户组用于管理权限和访问控制(ACL,Access Control List),决定了谁能访问系统的哪些资源。
📌 Windows 内置本地账户
Windows 预设了一些本地账户(Local Accounts),这些账户可以分为两类:
- 管理员账户(Administrators)
- 标准账户(Users、Guests 等)
1️⃣ Administrators(管理员组)
- 描述:最高权限用户组,成员拥有系统的完全控制权。
- 默认成员:
Administrator
(Windows 7 及以前默认启用,Windows 10/11 默认禁用)- 第一个创建的本地用户账户(如果是管理员权限)
- 权限:
- 安装软件
- 修改系统设置
- 访问所有文件(包括其他用户的文件)
- 控制其他账户
- 远程管理(如果启用)
- 风险:
- 由于权限极高,被攻击者获取后可能直接导致系统失陷。
- 推荐使用标准账户日常操作,只在需要时使用管理员权限(UAC 提示)。
2️⃣ Users(标准用户组)
- 描述:普通用户组,权限较低,适用于日常使用。
- 权限:
- 运行大部分应用程序(非管理员权限的应用)
- 只能修改自己的用户文件(如
C:\Users\用户名\Documents
) - 无法安装系统级软件(需要管理员权限)
- 默认成员:
- 任何新创建的本地账户默认属于
Users
组(除非赋予更高权限)
- 任何新创建的本地账户默认属于
3️⃣ Guests(访客用户组)
- 描述:用于临时访问计算机的账户,权限极低。
- 默认成员:
Guest
账户(默认禁用)
- 权限:
- 只能使用有限的系统功能
- 不能安装软件
- 不能访问其他用户的文件
- 使用场景:
- 允许临时访客使用计算机(如公司公共电脑)
4️⃣ Remote Desktop Users(远程桌面用户组)
- 描述:允许组内成员通过远程桌面协议(RDP)访问计算机
- 默认成员:
- 无(需要手动添加用户)
- 权限:
- 允许远程登录,但权限取决于用户本身的角色(普通用户还是管理员)
- 使用方式:
- 启用远程桌面(RDP):
Win + R
→ 输入sysdm.cpl
→ 选择 远程 选项卡 → 勾选 允许远程连接到此计算机
- 添加用户到 Remote Desktop Users 组:
net localgroup "Remote Desktop Users" 用户名 /add
- 远程连接命令:
mstsc /v:192.168.x.x
- 启用远程桌面(RDP):
📌 访问控制(ACL:Access Control List)
ACL 负责定义用户和组对文件、文件夹、注册表等资源的访问权限。Windows 主要使用 NTFS 权限 进行访问控制。
1️⃣ 基本 NTFS 权限
每个文件/文件夹都有一组访问控制权限,包括:
权限名称 | 说明 |
---|---|
完全控制(F) | 允许读取、写入、修改、删除、改变权限等 |
修改(M) | 允许读取、写入、修改、删除 |
读取和执行(RX) | 允许读取内容,并执行可执行文件 |
读取(R) | 仅允许查看文件内容 |
写入(W) | 允许创建和修改文件,但不能删除 |
特殊权限 | 允许更细粒度的权限管理 |
查看文件的 NTFS 权限
icacls C:\path\to\file
示例输出:
C:\test\file.txt NT AUTHORITY\SYSTEM:(I)(F)
BUILTIN\Administrators:(I)(F)
DESKTOP-9ET4RTD\Xiaoming:(I)(M)
(I)
表示继承权限(F)
表示完全控制(M)
表示修改权限
2️⃣ 访问控制条目(ACE:Access Control Entries)
每个 NTFS 权限记录称为 ACE(访问控制条目),由以下部分组成:
- 受影响的用户/组(如
Administrators
、Users
) - 访问权限(如
Read
、Write
、Full Control
) - 是否继承(权限是否继承自上级文件夹)
- 是否拒绝访问(显式
Deny
权限优先级最高)
3️⃣ 访问控制管理(命令行)
(1)查看 ACL
icacls C:\test
(2)赋予用户完全控制权限
icacls C:\test /grant Xiaoming:F
(3)撤销用户的写入权限
icacls C:\test /deny Xiaoming:W
(4)重置权限
icacls C:\test /reset
🔍 总结
账户/组 | 作用 | 适用场景 |
---|---|---|
Administrators | 管理员权限,完全控制 | 电脑拥有者,系统管理 |
Users | 普通用户,受限权限 | 日常使用 |
Guests | 临时访客,最低权限 | 公共电脑访客 |
Remote Desktop Users | 远程访问权限 | RDP 远程管理 |
访问控制(ACL) 决定了每个账户/组能访问哪些文件、文件夹或资源。
可以通过 icacls
和 net localgroup
结合使用来精细控制用户权限。
本地安全策略
Windows 本地安全策略(secpol.msc)中的 账户策略 和 本地策略 是管理系统安全的重要部分。
一、账户策略(Account Policies)
账户策略主要用于管理 密码安全 和 账户锁定,防止密码被暴力破解。
1. 密码策略(Password Policy)
作用:设置密码的复杂度、有效期等规则,以提高账户安全性。
常见策略:
策略名称 | 作用 | 推荐值 |
---|---|---|
强制密码历史 | 记录以前使用过的密码,防止用户重复使用旧密码 | 5-10 个历史密码 |
最大密码使用期限 | 设定密码过期时间,定期强制更换密码 | 30-90 天 |
最小密码使用期限 | 限制用户在一定时间内不能修改密码 | 1-3 天 |
最小密码长度 | 设定密码最少包含的字符数 | 至少 8-12 个字符 |
密码必须符合复杂性要求 | 需要包含大小写字母、数字、特殊字符 | 启用 |
用可还原加密来存储密码 | 如果启用,密码会以可还原方式存储,降低安全性 | 禁用 |
配置路径:
本地安全策略 (secpol.msc) → 账户策略 → 密码策略
2. 账户锁定策略(Account Lockout Policy)
作用:防止暴力破解,当密码输错多次后锁定账户。
常见策略:
策略名称 | 作用 | 推荐值 |
---|---|---|
账户锁定阈值 | 设定连续输入错误密码多少次后锁定账户 | 3-5 次 |
账户锁定时间 | 账户被锁定后多久自动解锁(0 表示管理员手动解锁) | 15-30 分钟 |
重置账户锁定计数器时间 | 在多长时间内连续输错才会触发锁定(如 5 分钟内输错 3 次) | 15 分钟 |
配置路径:
本地安全策略 (secpol.msc) → 账户策略 → 账户锁定策略
二、本地策略(Local Policies)
本地策略主要用于控制用户权限、系统日志、系统安全选项等。
1. 审核策略(Audit Policy)
作用:记录系统安全事件(如登录、文件访问等),便于安全分析和入侵检测。
常见策略:
策略名称 | 作用 | 推荐设置 |
---|---|---|
审核账户登录事件 | 记录本地用户登录/失败情况 | 成功 & 失败 |
审核登录事件 | 记录远程和本地登录尝试 | 成功 & 失败 |
审核对象访问 | 记录对文件、文件夹、注册表等访问情况 | 视需求 |
审核策略更改 | 记录系统安全策略的更改 | 成功 & 失败 |
审核特权使用 | 记录用户使用高权限命令(如修改系统设置) | 视需求 |
配置路径:
本地安全策略 (secpol.msc) → 本地策略 → 审核策略
2. 用户权限分配(User Rights Assignment)
作用:管理不同用户或用户组对系统的权限,防止非授权用户执行高权限操作。
常见策略:
策略名称 | 作用 | 推荐配置 |
---|---|---|
拒绝本地登录 | 阻止指定用户登录本机 | 限制 Guest 账户 |
本地登录 | 允许用户登录计算机 | 仅限管理员、受信任用户 |
拒绝通过远程桌面登录 | 阻止某些用户使用 RDP 远程桌面 | 限制 Guest、普通用户 |
作为服务登录 | 允许某些用户运行系统服务 | 仅指定服务账号 |
作为批处理作业登录 | 允许用户运行任务计划 | 仅限特定用户 |
调整内存配额 | 允许用户管理系统内存 | 仅限管理员 |
配置路径:
本地安全策略 (secpol.msc) → 本地策略 → 用户权限分配
3. 安全选项(Security Options)
作用:调整系统核心安全行为,如 UAC、登录要求、账户控制等。
常见策略:
策略名称 | 作用 | 推荐配置 |
---|---|---|
账户:管理员账户状态 | 控制管理员账户是否启用 | 启用 |
账户:来宾账户状态 | 控制 Guest 账户是否启用 | 禁用 |
交互式登录:不显示上次登录用户名 | 保护登录信息,防止社工攻击 | 启用 |
交互式登录:登录前显示法律声明 | 提示用户合法使用系统 | 视需求 |
UAC:管理员批准模式 | 增强 UAC 安全性 | 启用 |
UAC:标准用户的提升权限行为 | 限制普通用户提升权限 | 提示凭据 |
配置路径:
本地安全策略 (secpol.msc) → 本地策略 → 安全选项
总结
- 账户策略:管理密码复杂度、密码有效期、账户锁定等。
- 本地策略
- 审核策略:记录用户登录、文件访问等日志。
- 用户权限分配:控制不同用户的权限。
- 安全选项:调整账户和系统安全设置,如 UAC、登录策略等。
Windows常见端口和服务
一、常见端口及对应服务
端口号 | 协议 | 服务 | 作用 & 安全性分析 |
---|---|---|---|
21 | TCP | FTP | 文件传输协议(默认不加密,建议使用 SFTP/FTPS 代替) |
22 | TCP | SSH | 远程安全登录(Windows 需要安装 OpenSSH,建议替代 Telnet) |
23 | TCP | Telnet | 远程终端(明文传输,极不安全,默认应禁用) |
25 | TCP | SMTP | 电子邮件发送协议(易被滥用发送垃圾邮件) |
53 | UDP/TCP | DNS | 域名解析(UDP 为主,TCP 适用于大数据包) |
67/68 | UDP | DHCP | 动态主机配置协议(67 服务器,68 客户端) |
80 | TCP | HTTP | 非加密网站访问(建议使用 HTTPS) |
88 | TCP/UDP | Kerberos | 身份验证协议(Windows 域环境使用) |
110 | TCP | POP3 | 邮件接收(明文协议,建议使用 SSL 加密的 POP3S 995) |
135 | TCP | RPC | 远程过程调用(容易被远程代码执行漏洞利用) |
139 | UDP/TCP | NetBIOS | 局域网文件共享(老旧协议,易被 SMB 攻击,建议禁用) |
143 | TCP | IMAP | 邮件接收(支持多设备同步,建议使用 SSL 版本 993) |
443 | TCP | HTTPS | 加密网站访问(SSL/TLS 加密,建议强制启用) |
445 | TCP | SMB | 文件共享服务(易被勒索病毒攻击,建议关闭外网访问) |
3306 | TCP | MySQL | 数据库服务(默认端口,建议更改或限制访问 IP) |
3389 | TCP | RDP | 远程桌面协议(默认开放,极易被暴力破解,建议更改端口+MFA 认证) |
文件系统NTFS
NTFS vs. FAT32
- NTFS:安全、支持大文件(>4GB)、权限管理,适合 Windows 系统和服务器。
- FAT32:兼容性好,但不支持大文件,适合 U 盘、存储卡。
NTFS 权限
- 完全控制:能改、能删、能管理
- 修改:能改、能删,不能改权限
- 读取:能看,不能改
- 写入:能加内容,不能删
常用命令
📌 转换 FAT32 → NTFS:
convert C: /FS:NTFS
📌 查看文件权限:
icacls C:\path\to\file
工作组与域
工作组 vs. 域
对比项 | 工作组(Workgroup) | 域(Domain) |
---|---|---|
适用场景 | 小型网络(家庭/小公司) | 大型网络(企业/学校) |
管理方式 | 每台电脑独立管理 | 由域控制器(DC)集中管理 |
用户账户 | 账号存储在本机,每台电脑单独登录 | 账号存储在域控制器,可在任意域内设备登录 |
权限管理 | 本地管理员设置权限 | 统一管理用户权限和策略 |
安全性 | 低,每台设备自行管理 | 高,可集中设置安全策略、组策略 |
登录方式 | 只能登录本机 | 任何域内电脑都能使用域账号登录 |
典型协议 | SMB、NetBIOS | Kerberos、LDAP、Active Directory |
简单理解
- 工作组:适合小团队,设备互不影响,每台电脑自己管理自己。
- 域:适合公司/学校,统一管理账号、权限、设备,集中控制安全策略。
补充:Windows 域 需要 Active Directory(AD),通常由 Windows Server 搭建。
Windows 域安全策略、组策略及注册表管理😶🌫️😶🌫️
Windows 安全策略 涉及多个层面,包括 域安全策略(AD 统一管理)、组策略(GPO 控制策略)、注册表(底层配置),掌握这些工具可以提升系统的安全性和管理效率。
1️⃣ 域安全策略(AD Security Policy)
📌 作用:
- 适用于整个 AD 域,由域控制器(DC) 统一管理用户、计算机和权限
- 主要用于 账号安全、访问控制、审计日志 等
📌 配置方法:
👉 进入域安全策略
gpmc.msc # 组策略管理控制台(域环境)
secpol.msc # 本地安全策略(单机)
📌 常见域安全策略
策略 | 作用 |
---|---|
账户策略 | 设置密码复杂度、过期时间、账户锁定规则 |
审核策略 | 记录登录、账户变更、权限使用等日志 |
用户权限 | 限制普通用户权限,防止越权操作 |
网络访问 | 禁用 SMBv1,限制共享文件访问 |
远程访问 | 限制 RDP 远程桌面访问,启用多重认证 |
📌 示例:设置密码策略
路径:
计算机配置
→ Windows 设置
→ 安全设置
→ 账户策略
→ 密码策略
- 密码最小长度:≥8
- 密码复杂性:启用
- 密码最长使用期限:90 天
2️⃣ 组策略(GPO - Group Policy Object)
📌 作用:
- 控制 用户权限、系统行为、安全策略
- 可以针对 单台电脑、本地用户、整个 AD 域
📌 常见 GPO 配置
策略 | 路径 | 作用 |
---|---|---|
禁用 USB 设备 | 计算机配置 → 系统 → 可移动存储访问 |
防止数据泄露 |
限制软件运行 | 计算机配置 → Windows 设置 → 软件限制策略 |
阻止病毒软件 |
禁止 cmd、PowerShell | 用户配置 → 管理模板 → 系统 |
防止恶意脚本 |
远程桌面权限 | 计算机配置 → Windows 组件 → 远程桌面 |
限制 RDP 访问 |
📌 应用 GPO 策略
gpupdate /force # 强制刷新组策略
gpresult /r # 查看应用的策略
3️⃣ 注册表(Registry)
📌 作用:
- Windows 核心配置数据库,存储系统、软件、用户设置
- 修改 注册表(Regedit) 可以实现高级系统优化 & 限制
📌 打开注册表
regedit
📌 常见注册表配置
注册表路径 | 作用 |
---|---|
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa |
限制匿名访问 |
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System |
禁用 cmd / PowerShell |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR |
禁用 USB 设备(值改为 4 ) |
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System |
禁用远程桌面 |
📌 示例:禁用 USB
路径:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR
- 值
Start
修改为4
(禁用 USB) - 值
Start
修改为3
(启用 USB)
总结
✅ 域安全策略(secpol.msc
):账号安全、密码策略、日志审计
✅ 组策略(GPO)(gpmc.msc
):统一管理系统设置、安全策略
✅ 注册表(Regedit):底层安全控制,如禁用 USB、限制 PowerShell
Windows Server 日志管理
📌 打开事件查看器
eventvwr.msc
路径:开始菜单 → 运行 → 输入 eventvwr.msc
→ 回车
日志分类
类型 | 作用 |
---|---|
应用程序 | 记录软件运行情况 |
安全 | 记录用户登录、权限变更等 |
系统 | 记录 Windows 运行状态、错误 |
Setup | 记录系统安装、更新相关事件 |
转发事件(ForwardedEvents) | 记录从其他计算机转发的日志 |
常见日志事件
事件 ID | 描述 |
---|---|
4624 | 用户成功登录 |
4625 | 登录失败(可能是暴力破解) |
4672 | 管理员权限登录 |
6005 | 计算机启动 |
6008 | 非正常关机 |
41 | 电源故障 |
1001 | 系统崩溃(蓝屏) |
总结
✅ eventvwr.msc 查看日志
✅ 4624(成功登录),4625(失败登录),6008(异常关机)
✅ 筛选 & 命令行查询日志
✅ 开启监控,自动告警
操作系统安全
1️⃣ 身份鉴别**
身份鉴别是验证用户或设备是否为其声称的身份。常见的身份鉴别方式包括:
- 用户名和密码:最常见的验证方式,但易受到暴力破解攻击。
- 多因素认证(MFA):通过结合密码、短信验证码、指纹等多种方式,提升安全性。
- 生物识别:例如指纹识别、面部识别等。
2️⃣ 访问控制
访问控制是限制对资源的访问权限。主要方式包括:
- 基于角色的访问控制(RBAC):根据用户角色分配权限,简化管理。
- 基于属性的访问控制(ABAC):根据用户属性、资源属性等进行访问控制。
- 强制访问控制(MAC):系统严格控制访问权限,用户无法自行修改。
3️⃣ 安全审计
安全审计是对系统和用户活动进行监控和记录,以便追溯和分析。常见的安全审计项目:
- 登录/注销记录:监控用户的登录、注销行为。
- 权限变更记录:记录用户权限的增减、变动等操作。
- 文件访问记录:监控文件或资源的访问行为,检查异常操作。
4️⃣ 资源控制
资源控制是对计算机系统中的硬件和软件资源进行有效管理,确保资源得到合理利用且不会被滥用。常见技术包括:
- 磁盘配额:限制用户或组的磁盘使用量。
- 进程优先级:为不同任务分配不同的CPU资源,避免资源冲突。
- 内存控制:防止某个程序占用过多内存,影响系统稳定性。
5️⃣ 剩余信息报告
剩余信息报告是指清除系统中的不必要信息,防止泄露敏感数据。它包括:
- 删除临时文件:定期清理系统生成的临时文件,避免泄露隐私信息。
- 清理浏览器缓存:避免浏览历史、自动填充等信息被非法访问。
- 删除日志文件:过期日志文件可能包含敏感数据,定期清理以防止泄漏。
6️⃣ 入侵防范
入侵防范是指通过多种技术手段防止黑客入侵。常见手段包括:
- 防火墙:过滤进出网络的数据包,阻止未经授权的访问。
- 入侵检测系统(IDS):监控系统和网络,检测异常活动。
- 入侵防御系统(IPS):不仅检测入侵,还能主动防止入侵行为。
7️⃣ 恶意代码防范
恶意代码防范是通过技术手段防止恶意软件的传播和危害。常见方法有:
- 防病毒软件:实时监控系统,阻止病毒、木马、间谍软件等的入侵。
- 定期更新操作系统和软件:及时修复漏洞,避免恶意软件利用已知漏洞。
- 沙盒技术:通过虚拟化技术隔离恶意程序,防止其对主系统造成危害。
总结
✅ 身份鉴别:通过密码、多因素认证、生物识别等确认身份。
✅ 访问控制:通过RBAC、ABAC、MAC控制用户对资源的访问。
✅ 安全审计:监控和记录系统活动,发现异常行为。
✅ 资源控制:合理管理计算机系统资源,防止滥用。
✅ 剩余信息报告:清理系统中可能泄露的敏感信息。
✅ 入侵防范:使用防火墙、IDS/IPS等技术阻止黑客入侵。
✅ 恶意代码防范:通过防病毒软件、漏洞修复等手段防止恶意软件入侵。