跳到内容
当前位置:首页>考研真题>专项复习操作系统安全保护(结束篇)

专项复习操作系统安全保护(结束篇)

  • 2026-10-25 10:24:29
专项复习操作系统安全保护(结束篇)

哈喽各位考友,我是你们的备考搭子。

今天这篇是进阶篇,干的全是"硬货":把教材里展开但不常背到的Windows/UNIX-Linux/国产操作系统三大体系,逐层钻进去——架构 → 安全机制 → 系统安全分析 → 增强技术与方法流程 → 增强实例/配置参考,每一层都帮你标出"这行字在试卷上会以什么姿势出现"。

🚨 划重点: 基础篇教你"背概念",进阶篇教你"用概念做题"。2026 年考试最明显的变化趋势是:题目越来越"细"、越来越"实"——问你具体文件(/etc/shadow)、具体进程(lsass.exe)、具体数值(权限位、端口、SID 的 RID)、具体命令(setfacl/auditctl),并且国产操作系统 / 信创 / 等保联动的分量明显加重。这一篇,就是冲这些"细颗粒"去的。

一、本章"内容版图":一张图看清全部细颗粒考点

第19章的正文逻辑其实是"由通用到专用、由国外到国产"。先用一张表把你要补的内容点全部钉死,每个点都标好"2026 出镜概率":

板块
细颗粒考点内容
预测热度
① 通用基石
安全机制(身份鉴别/访问控制/最小权限/可信路径/客体重用/审计/存储保护)、安全技术(进程隔离、内存保护、运行域与特权环、缓冲区溢出防护)
★★★
 辨析选择题大户
② Windows
系统架构(ring 0/3、HAL/内核/Executive/SRM)、安全机制(SID/令牌/SAM/LSASS/DACL·SACL/完整性级别/UAC)、系统安全分析(攻击面)、增强技术方法流程与实例(secpol、组策略、基线)
★★★
 概念+流程题
③ UNIX / Linux
安全机制(shadow/PAM/权限/特殊位/ACL/Capabilities/SELinux/审计)、系统安全分析、增强方法流程、可直接抄的加固配置参考、安全模型在 Linux 中的落地
★★★
 命令+数值题,最吃细
④ 国产操作系统
主流发行版生态(麒麟/UOS/openEuler 等)、与国产 CPU 匹配、安全增强设计(三权分立/国密/可信计算)、安全分析与防护考点
★★★ 上升最快
 2026 预测高频新增

💡 命题规律(先记住): 本章题目 80% 落在"三个一"——一个文件、一个进程、一个数字。 Linux 爱考"改哪个文件、加哪个参数、权限是几";Windows 爱考"哪个组件负责登录/审计/账号库、DACL 还是 SACL、拒绝还是允许";国产 OS 爱考"哪家做哪个系统、三个管理员各管啥、用了哪类国密算法"。后面所有内容都围绕"三个一"展开。

· · ·

二、通用基石:安全机制 + 安全技术(先 10 分钟夯实,后面全靠它)

2.1 安全机制:七个关键词逐个过"易错细节"

机制
一句话原理
进阶易错点(就爱考这些)
🔑 身份鉴别
确认主体身份的三类凭证:所知(口令)、所有(令牌/U 盾/SIM)、所是(指纹/人脸/虹膜)
三种取两种以上叫多因素/双因子;口令属于"静态鉴别",可被重放;票据/证书属于"动态鉴别"更抗重放
🎛️ 访问控制
DAC(属主定)/ MAC(标签定)/ RBAC(角色定)
访问控制三要素=主体、客体、访问策略;访问控制与"身份鉴别"是两回事:鉴别管"你是谁",访问控制管"你能碰啥"
📉 最小权限
只授予完成本职所需的最小权力,用完即收
典型落地:普通用户不挂 root/Administrator、特权进程用完后 drop 权限、sudo 按命令白名单授权
🧾 审计
记录"谁在何时对哪个客体做了什么"
可审计性=可问责的前提;审计日志自身要防篡改、防删除、防伪造,最好写入只读介质/异地集中
🚪 客体重用保护
资源(内存/磁盘/打印机)释放或再分配前,残留数据必须清除
典型考题:删除文件只是删了目录项/链接,数据块未清→被恢复工具捡走;对策=安全删除(覆写/加密/SSD 需考虑磨损均衡)
🛤️ 可信路径
用户在不受中间人/木马干扰的前提下与系统安全机制交互的专用通道
Windows 落地=Ctrl+Alt+Del 安全注意序列(SAS)→保证你输口令时屏幕是真登录界面;它保护的是"登录那一刻",不是普通通信
🏠 存储保护/隔离
进程的内存空间互不可越界访问
硬隔离=MMU 页表/段机制;界地址寄存器=基址+限长寄存器兜底;辅以保护键、虚实地址转换

💡 客体重用 1 分钟必懂: 你把硬盘上文件"删了",但在分配该扇区给下一个文件之前,老数据还在。所以教材规定:客体在被重新分配使用前,其存储内容必须被清除/改写,防止"捡垃圾式"窃密。

2.2 安全技术:进程隔离 + 内存保护 + 运行域(新增高频区)

① 进程隔离四法(基础篇已背,这里补"谁对应考题")

隔离方法
本质
考试对应点
物理隔离
进程独占互不重叠的物理区域
最简单也最浪费,早期分时/实时场景
时间隔离
共享资源分时轮流使用,用后清理残留
配合"客体重用保护"一起考
逻辑隔离
靠地址空间/分页分段限制可访问范围
对应 MMU、页表、分段/段保护——主流方案
密码隔离
数据加密存储,他人拿到也读不懂
对应 EFS/BitLocker/加密文件系统;"隔离失败兜底靠加密"

② 运行域与特权环(Windows/Linux 都绕不开的底层考点)

处理器提供 ring 0 ~ ring 3 四个特权级。操作系统只用了两极:

ring 0(内核态/核心态)→ 操作系统内核代码,可执行特权指令,直接访问硬件 ring 3(用户态) → 应用程序,受 CPU 保护,想碰硬件必须先"系统调用"进内核  保护手段:CPL(当前特权级) / DPL(描述符特权级) / IOPL;MMU 做地址隔离

💡 为什么讲这个? 缓冲区溢出、提权攻击的"终点"大多是想把代码送进 ring 0。而"内核态/用户态切换""系统调用"正是引用监视器不可绕过特性的硬件前提——每一层都被 CPU 硬性拦截。

③ 内存保护与缓冲区溢出防护(2026 常与案例题捆绑)

技术
作用
别名/实现
栈保护
函数返回前检查"金丝雀"值是否被改写
Canary、/GS、StackGuard
数据执行保护
禁止把数据区当代码执行
DEP、NX、W^X(不可写且不可执行)
地址空间随机化
每次加载把基址/布局打乱,猜不到地址
ASLR、PIE;Linux 由 kernel.randomize_va_space 控制(0/1/2)
控制流保护
校验跳转目标合法性,防"改写返回/跳转表"劫持
CFG(Windows)、IBT(硬件)、Shadow Stack
SEH 保护/SEHOP
防覆盖异常处理链
Windows 专用

· · ·

三、Windows 操作系统安全分析与防护(分值最密,逐层剥)

3.1 Windows 系统架构:先把"地图"背下来

Windows 采用分层 + 双态架构,试卷最爱让你把"某个组件放进对的层"。背这张图:

用户模式(ring 3) 

├── 系统支持进程: 会话管理器 smss.exe、登录 winlogon.exe、服务控制 services.exe(宿主 svchost.exe) 

├── 本地安全认证: lsass.exe(内含 LSA、SAM 数据库访问、Netlogon 域认证) 

├── 环境子系统: csrss.exe(Win32 客户端/服务端运行时,管理控制台窗口/线程) 

├── 服务进程与用户应用、子系统 DLL(ntdll.dll / kernel32.dll 等) 

内核模式(ring 0) 

├── 执行体 Executive(核心"功能部"): 

      │安全引用监视器 SRM、进程与线程管理器、内存管理器、 

      │对象管理器、I/O 管理器、缓存管理器、即插即用/电源、LPC(本地过程调用) 

├── 微内核 Kernel: 线程调度、中断/异常分发、多处理器同步 

├── 图形内核: win32k.sys(GUI 窗口/消息,与子系统的交互) 

├── 设备驱动程序(含文件系统驱动)

└── 硬件抽象层 HAL: 屏蔽硬件差异,让上层"认不出"具体主板/CPU

🚨 三个"谁管什么"必背:① winlogon.exe = 登录大门(接收 Ctrl+Alt+Del、启动登录流程);② lsass.exe(LSA) = 认证大总管(本地账号查 SAM、域账号走 Kerberos,并在登录成功时创建访问令牌);③ 执行体里的 SRM = 安全"裁判"(对象每次被访问时,用令牌 vs DACL 做访问检查、做审计裁决)。记法:"winlogon 管开门、LSA 管验证发证、SRM 管查票放行"。

3.2 Windows 安全机制:逐个组件"扣细节"

① 安全标识符 SID 与内置 RID(数值题)

概念
说明
SID
账户/组的唯一安全编号,改名 ≠ 换身份;删除重建才会生成新 SID
常见 SID
Everyone = S-1-1-0;Authenticated Users = S-1-5-11;SYSTEM = S-1-5-18;Network Service = S-1-5-20
关键 RID
500 = 内置 Administrator
、501 = Guest、512 = 域管理员组、544 = 本地管理员组(Administrators)

② 访问令牌 / 特权 / 权限(三者别混)

名词
含义
记忆点
访问令牌 Access Token
登录成功后由 LSA 创建,进程/线程随身携带的"身份+权限凭证";含用户 SID、所属组 SID、特权列表、完整性级别、默认 DACL
有主令牌和模拟令牌(服务代表客户端)
特权 Privilege
执行系统级特殊操作的权利(与具体对象无关)
如 SeDebugPrivilege(调试他人进程)、SeTakeOwnershipPrivilege(夺取所有权)、SeBackupPrivilege(备份=可绕过 ACL 读)
权限/用户权利 Right
"以某方式登录系统"等预定义权利
如"从网络访问此计算机""作为服务登录""允许通过远程桌面服务登录"
对象权限 Permission
针对某个具体对象(文件/注册表)的允许/拒绝,存于 DACL
区别于上面的 Privilege(别翻译混)

💡 最容易丢分的一对:Privilege(系统特权) vs Permission(对象权限)。前者列表在访问令牌里、与具体文件无关;后者写在每个对象的安全描述符 DACL 里。

③ 安全描述符、DACL、SACL 与 ACE(记忆陷阱重灾区)

部件
作用
一句话记忆
安全描述符 SD
每个安全对象自带:所有者 SID + 属组 SID + DACL + SACL
对象自己的"门禁档案"
DACL
放行还是拒绝访问(允许/拒绝 ACE 列表)
D = Do = 管"能不能进"
SACL
决定哪些访问生成审计日志(系统审计 ACE)
S = 留"证据/Safety"
ACE
ACL 里的一条条目
一条 ACE = 一个"谁+允许/拒绝+访问啥"
对象访问审计生效条件
对象 SACL 里配了审计 ACE + 审计策略里开了"审核对象访问"
,缺一不可
"对象加策略,两把钥匙都要有"——2026 预测变形题

④ 完整性级别、UAC 与提权(Windows 的"分层最小权限")

  • 完整性级别 Integrity Level:低 < 中 < 高 < 系统
    ——进程"不能向比自己高的完整性级别写/注入"(UIPI 隔离)。
  • UAC:
     管理员登录默认拿到筛选后的低权令牌;要执行管理操作须提权(弹出确认/输口令),得到完全令牌。防恶意程序"静默用管理员权限"。
  • 凭据保护延伸:
     Windows 10+ 有 Credential Guard(基于虚拟化 VBS 把 LSA 里存的凭据隔离进独立受保护容器)与 WDAC/Device Guard(代码完整性,只放行受信任代码)、Exploit Protection(集中开关 DEP/ASLR/CFG/SEHOP)。

⑤ 账号库与认证协议:SAM 与域认证(谁在哪看答案)

对象
存了什么 / 在哪
考点
本地账号库 SAM
本地账户口令哈希,位于注册表 HKLM\SAM(脱机文件 %SystemRoot%\system32\config\SAM)
考题爱设陷阱"口令在 C:\...\passwd"→ 错,Windows 走注册表
域账号库
域账户哈希集中存于域控的 NTDS.dit
拿下域控 = 拿到全域账号库
Kerberos
域环境默认认证协议(票据 TGT/服务票据)
域内认证首选;比 NTLM 更安全
NTLM
工作组/向后兼容认证(挑战-响应)
加固常做:禁 NTLMv1、仅用 NTLMv2;哈希传递 PTH 攻击就爱针对 NTLM/LSASS 凭据

· · ·

3.3 Windows 系统安全分析:攻击面逐个"过筛子"

教材的"系统安全分析"本质是找薄弱点。把历年案例题素材浓缩成一张表,每一个都是"请你指出问题并整改"的答案来源:

薄弱面
具体风险
典型案例 / 真实漏洞
账户口令
弱口令、默认口令、Guest 未禁、Administrator 未改名、RDP 爆破
MS 蓝屏哥口令/远程桌面被爆破勒索
SMB/网络共享
SMBv1 开启、默认共享 C$/ADMIN$/IPC$ 暴露、共享权限 Everyone 完全控制
永恒之蓝 MS17-010
(445 蠕虫)WannaCry
打印服务等常驻服务
高权限服务组件漏洞、错误授权
PrintNightmare
(打印后台处理程序任意代码执行,曾大规模打补丁)
凭据窃取
LSASS 内存含明文/哈希可被转储、哈希传递、票据传递
mimikatz 系工具(抓 LSASS/抓 SAM)
配置脆弱点
FAT32(无 ACL)、审计未开、自动登录存口令、空口令允许远程、匿名枚举 SAM、防火墙全放/全关
本地安全策略(secpol.msc)里全是可改项
补丁与版本
未及时补丁、停服老系统(如 Win7/Server2008)
新爆高危 CVE 无人补→直接沦陷
启动/自启项与内核
恶意 Autoruns 启动项、驱动/rootkit 进内核、宏病毒
Sysinternals Autoruns 排查

· · ·

3.4 Windows 系统安全增强的技术方法 + 流程(案例题答题骨架)

案例题只要你写"加固方案",按下面这套"八步法"答,踩点给分稳拿:

① 现状梳理(清点账户/服务/开放端口/补丁) → ② 定基线(对标等保/公司制度/CIS) → ③ 账户口令策略 → ④ 审计策略开启 → ⑤ 最小权限(去 Admin 化/UAC/服务账号收权) → ⑥ 收敛攻击面(关服务端口/禁 SMBv1/停默认共享) → ⑦ 纵深(防火墙/杀软 EDR/补丁/加密) → ⑧ 验证与持续(基线复核、日志集中监控、应急备份)

把"每步具体能改什么"装进口袋,答题时对应着填充即可:

步骤
典型配置动作(背这些名词就行)
在哪做
账户口令
密码必须符合复杂性、最小长度≥8、最长使用期≤90 天、强制密码历史≥5;账户锁定阈值 5 次、锁定/复位 30 分钟
本地安全策略→账户策略(secpol.msc)
审计
审核登录事件、账户登录、账户管理=成功+失败;对象访问=失败;记录入 Security 事件日志并加大容量
本地安全策略→本地策略→审核策略(auditpol.exe)
安全选项
重命名内置 Administrator、禁用 Guest;禁止 SAM 账户与共享的匿名枚举;空口令账户仅允许控制台登录;不显示上次登录用户名;LAN Manager 认证级别=仅 NTLMv2;交互登录需 Ctrl+Alt+Del
本地安全策略→安全选项
最小权限
日常用户移出 Administrators;服务用独立低权账号;UAC 管理员审批模式保持启用;限制"从网络访问此计算机"名单
用户权限分配 + UAC
网络与文件
全盘 NTFS;删除无用共享;停用 SMBv1;关闭不必要端口;防火墙默认"阻止入站"例外放行;禁用 LM 哈希与空会话
共享管理 + 注册表 + 防火墙
纵深防御
及时补丁(WSUS/自动更新);安装杀软/EDR;开启 Windows Defender Exploit Protection(DEP/ASLR/CFG);敏感目录 EFS 文件加密;整卷 BitLocker(配 TPM)
更新 + Defender + BitLocker/EFS
远程管理
若开 RDP:仅允许 NLA、来源 IP 白名单、账户锁定生效、经堡垒机/VPN 访问;禁默认 3389 可降低被扫描面
系统属性→远程 + 防火墙
集中管理
域环境用组策略 GPO 批量下发;用安全配置模板(.inf)/secedit 导入导出统一基线;日志集中(WEF/SIEM)
gpedit.msc / 组策略管理 / secedit

🧠 一句话收束: Windows 加固的底层逻辑就是"让每个人、每个服务、每个端口都只保留最小那点权力,并且每一步都留下日志"——本质还是基础篇那句话:小、严、勤。

3.5 Windows 安全增强实例(把配置"做一遍"给你看)

很多人对 secpol.msc 只闻其名,其实它就是把上面所有策略"点开关"的地方。给你一个可落地的"增强实例"骨架:

第1步: Win+R 运行 secpol.msc → 打开"本地安全策略"第2步: 账户策略→密码策略:密码必须符合复杂性要求(已启用密码长度最小值=8最长使用期限=90天)第3步: 账户策略→账户锁定策略: 账户锁定阈值=5  锁定时间=30 分钟 第4步: 本地策略→审核策略: 审核登录事件/账户管理=成功+失败(全勾) 第5步: 本地策略→安全选项: "交互登录:不显示上次用户名"=已启用  "网络访问:不允许 SAM 账户和共享的匿名枚举"=已启用 第6步: 本地策略→用户权限分配: 收缩"从网络访问此计算机"成员(去掉Everyone/Guest) 第7步: 命令行固化与导出备份: auditpol /set /category:"登录/注销" /success:enable/failure:enablesecedit /export /cfg C:\baseline.inf   (备份基线)  secedit /configure /db 本地.sdb /cfg baseline.inf (批量下发)

💡 送分细节: Windows 的对象访问审计是"双开关"——光在审核策略里开"审核对象访问"不够,还得在那个文件/文件夹的"安全→高级→审核"里针对指定用户/访问类型加一条审计 ACE。2026 很有可能拿它出"以下哪项配置后仍然没有生成相应审计日志"的变形题。

· · ·

四、UNIX / Linux 操作系统安全分析与防护(命令+数值,最吃细)

Linux 考点几乎都是"可执行、可查验"的:文件、命令、配置、数字。逐层拆。

4.1 UNIX/Linux 安全机制:九个要点抠细节

① 身份与口令存储(谁管密码,存哪,什么格式)

文件/项
说明
考点细节
/etc/passwd
账号基本信息(UID/GID/家目录/Shell),口令字段早已是 x
任何人可读 → 所以不能存哈希
/etc/shadow
口令哈希+策略(600、仅 root 可读写)
哈希格式:$1$=MD5、$5$=SHA-256、$6$=SHA-512、$y$=yescrypt(新);第 2 字段为 ! 或 !! 表示已锁定/无密码
/etc/login.defs
全局口令老化默认值
PASS_MAX_DAYS/PASS_MIN_DAYS/PASS_WARN_AGE
chage
给单个用户设老化
chage -l 查看、chage -M 90 用户 设最长天数

② PAM 可插拔认证模块(爱考"锁定/强度由哪个模块管")

需求
PAM 模块
配置位置
口令复杂度
pam_pwquality(新)/pam_cracklib(旧)
/etc/pam.d/{system-auth,password-auth}、/etc/security/pwquality.conf
登录失败锁定
pam_faillock(新)/pam_tally2(旧)
/etc/security/faillock.conf;RHEL8+ 默认用 faillock
资源限制
pam_limits
/etc/security/limits.conf(nofile/nproc)
环境与 su/sudo
pam_env、pam_unix、pam_shells
按服务目录 /etc/pam.d/ 下同名文件控制

🚨 常见陷阱: "配置口令复杂度要改 /etc/passwd"❌;正确是 PAM + /etc/login.defs 控制策略。考题会拿"哪些文件由 root 独占/全局可读"来混淆。

③ 文件权限、特殊位、umask(数值计算必拿分)

rwx 三段=属主/属组/其他:r=4  w=2  x=1  例 rwxr-xr-x = 755  特殊位(挂在前面一位):   4 = setuid  → 以文件属主身份执行(如 passwd,属主 root)  显示 s(小写,有 x)/S(大写,无 x)   2 = setgid  → 以属组身份执行;目录上=新建文件自动继承目录组   1 = sticky  → /tmp 等共享目录"只有属主/root 能删自己的文件"(权限常 1777,显示 t)  umask 决定新建文件默认权限: 文件基数 666、目录基数 777,减去 umask   例: umask 022 → 文件 644、目录 755;更严可用 027/077  查看典型 suid: find / -type f -perm -4000 2>/dev/null 查看典型 sgid: find / -type f -perm -2000 2>/dev/null

💡 符号陷阱:s 小写表示"特殊位 + 对应执行位都有";如果该段本来没有执行位,会显示大写 S。比如属主执行位没 x 却设了 setuid,显示 -rwSr-xr-x。

④ POSIX ACL:对"单用户"授权的扩展(进阶新宠)

命令
作用
setfacl -m u:alice:rw /data
给用户 alice 单独加读写,无需它属于某个组
getfacl /data
查看 ACL
setfacl -x u:alice /data
移除某条 ACL
mask
ACL 的"有效权限上限",会被 chmod 的属组位联动修改

💡 一句话: 传统 rwx 只能按"属主/组/其他"三个桶分;ACL 能精确到某个人。加了 ACL 的文件 ls 权限位末尾会多一个 +(如 -rw-rw----+)。

⑤ Linux Capabilities:细粒度特权(把 setuid 的"大水漫灌"改成"定点滴灌")

命令/概念
说明
cap_net_bind_service
允许绑定低端口(如 80)而不必给 root;常用 cap 还有 cap_net_admin、cap_sys_admin、cap_dac_override
getcap -r / 2>/dev/null
递归查看文件能力位(排查"能力后门")
setcap cap_net_bind_service=+ep /usr/bin/app
给某二进制附加能力(+e=有效 +p=允许)
进程能力
读 /proc/<pid>/status 的 CapEff/CapPrm 看进程有效/允许能力;容器安全大量依赖"丢弃能力"

💡 出题方向: 传统 setuid 是"一把梭"(整个 root),Capabilities 是"按最小权限授予单项能力"——把两者放一起考"谁更符合最小权限原则",答 Capabilities。

⑥ 强制访问控制:SELinux 与 AppArmor(把基础篇的 MAC 落地成命令)

项
SELinux
AppArmor
默认发行版
RHEL/CentOS/Fedora、openEuler、银河麒麟等
Ubuntu/Debian
工作方式
给进程/文件打"安全上下文 user:role:type:level",按类型强制 TE 策略裁决
按程序路径写 profile(能碰哪些文件/网络)
三种模式
enforcing(强制)/ permissive(只记不拦)/ disabled(关闭)
enforce / complain(只记不拦)
关键命令
getenforce、sestatus、setenforce 0/1;semanage fcontext、restorecon、setsebool、chcon、ls -Z/ps -Z
aa-status、aa-enforce、aa-complain
排错日志
/var/log/audit/audit.log 里的 avc: denied → 用 audit2allow 生成规则
/var/log/audit/audit.log(内核审计)、dmesg
策略类型
targeted(默认,只约束受限进程)/ mls(多级安全,对应 BLP)/ minimum
无

🧠 与基础篇安全模型联动(4.5 还会再讲): SELinux = 基础篇那个 MAC 的 Linux 肉身;它的 mls 策略类型就是 BLP(机密性:不准低读高、高写低) 的多级落地。这一题把"进阶架构"和"基础模型"串起来,2026 出现概率很高。

⑦ sudo:把 root 权限"切成小块"借出去

配置文件: /etc/sudoers  → 必须用 visudo 编辑(语法校验) 授权行语法:  用户名 主机名=(可切换身份) 命令   例1: dev   ALL=(ALL)      /usr/bin/systemctl   

# 仅允许执行 systemctl   例2: %wheel ALL=(ALL)  ALL                  

# wheel 组成员可用全部命令(仍需输口令)   

风险写法: op ALL=(ALL) NOPASSWD: ALL        

# 免密+全命令 = 把 root 白送 安全建议: 少用 NOPASSWD;命令尽量白名单;保留口令;日志在 /var/log/secure(auth 日志)可查

⑧ 审计与完整性(把"做过什么"和"有没有被改"钉死)

审计服务 auditd:  启动 systemctl enable --now auditd 

实时规则: auditctl -w /etc/passwd -p wa -k passwd_change  (-w 监控路径 -p 权限(r读w写x a属性) -k 关键字标签) 

规则持久化:写 /etc/audit/rules.d/audit.rules(及主文件 /etc/audit/audit.rules) 查询:   ausearch -k passwd_change    aureport -au(认证报告) 

文件完整性: AIDE / Tripwire: 先对关键目录建哈希基线,再定期校验差异 

另一招: rpm -Va  校验已装 rpm 包文件是否被改(红帽系)

4.2 UNIX/Linux 系统安全分析:从"会被怎么打"反推加固点

攻击/弱点
原理
你该背的对应加固
本地提权(内核/服务漏洞)
利用内核 bug 拿到 root,如 Dirty COW、sudo Baron Samedit 等
及时打内核与关键软件补丁;最小权限;内核模块加载限制
SUID/SGID/Capabilities 滥用
黑客放下 suid 后门、或借助已有 suid 提权
find 排查 4000/2000;getcap -r 排查;能删则删/用 capabilities 或 sudo 替代
sudo 配置不当
NOPASSWD+ALL、可 sudo 的脚本可被改写、可提权命令(su/vim/awk 可借 sudo 逃逸)
命令白名单、去除 NOPASSWD、防止对"可执行 shell 的工具"放行 sudo
环境变量劫持
PATH 指向恶意同名命令、LD_PRELOAD 注入恶意 .so(对 setuid 程序无效但可用于普通进程/服务)
脚本内用绝对路径;校验 /etc/ld.so.preload;环境干净
可写目录/文件与符号链接
/tmp 可写 + 特权程序写文件 → 符号链接/TOCTOU 竞态篡改;cron 脚本或 .ssh 目录可写
关键目录去写权限、/tmp 独立挂载 nodev,nosuid,noexec(视业务);收敛 cron/authorized_keys 属主权限
弱口令/远程爆破
SSH/MySQL/Redis 弱口令、Redis 未授权
强口令+失败锁定;SSH 改密钥登录禁口令;未授权访问修复
配置与暴露面
多余服务端口、监听 0.0.0.0、危险端口 22/3306/6379/445 裸奔、老版本组件
最小化安装与服务;防火墙只放业务端口;及时升级组件
后门/rootkit
内核模块 LKM rootkit、新加 UID 0 账号、植入计划任务与 authorized_keys
rkhunter/chkrootkit 扫描;查 UID 0 账号(awk -F: '$3==0' /etc/passwd);审计登录/历史;完整性 AIDE

· · ·

4.3 UNIX/Linux 系统安全增强方法 + 流程(案例题模板)

① 最小化安装 → ② 补丁升级 → ③ 账户口令策略(PAM/老化/锁定) → ④ 权限收敛(特殊位/ACL/capabilities/sudo 白名单) → ⑤ 服务与端口最小化 → ⑥ 网络层收口(防火墙/禁用转发与重定向) → ⑦ 内核参数与文件系统加固 → ⑧ 开启 SELinux/AppArmor → ⑨ 审计与日志集中 → ⑩ 完整性校验与基线复核

案例题若问"请写出 Linux 加固要点",把 4.3 的 10 步 + 4.4 的可执行配置写进去即可。下面把配置直接给你抄。

4.4 Linux 安全增强配置参考(可直接抄的"配置块",背几个就够)

① SSH 远程加固(/etc/ssh/sshd_config)

# 禁止 root 直接远程登录(平时用普通账号+sudo) PermitRootLogin no 

# 只允许密钥登录(若内部强制则改为 yes 需配合强口令+锁定) PasswordAuthentication no PubkeyAuthentication yes 

# 收窄可登录用户、限制失败尝试 AllowUsers alice bob MaxAuthTries 3 

# 会话加固 Protocol 2 X11Forwarding no UsePAM yes 

# 改完必须验证语法并重启: sshd -t  &&  systemctl restart sshd

② 口令策略与失败锁定

# /etc/login.defs(全局默认) PASS_MAX_DAYS   90      

# 最长使用 90 天 PASS_MIN_DAYS   1       

# 最短 1 天 PASS_WARN_AGE   7       

# 提前 7 天提醒  # PAM 失败锁定(RHEL8+ faillock): 

# /etc/security/faillock.conf deny = 5                 

# 连续 5 次失败锁定 unlock_time = 1800       

# 30 分钟后解锁 

# 并在 /etc/pam.d/system-auth 与 password-auth 的 auth 段首尾挂上 pam_faillock.so  

# 对单个用户立即生效:  chage -M 90 alice ;  passwd -l alice(锁定) 

# 排查空口令/可登录账号: awk -F: '($2==""){print $1}' /etc/shadow

③ 内核参数加固(/etc/sysctl.conf,改后 sysctl -p 生效)

# 网络层基础加固 net.ipv4.ip_forward = 0              

# 关闭 IP 转发(非路由器) net.ipv4.conf.all.accept_redirects = 0 net.ipv4.conf.all.send_redirects = 0 

# 防 ICMP 重定向欺骗 net.ipv4.conf.all.rp_filter = 1      

# 反向路径过滤,防 IP 欺骗 net.ipv4.tcp_syncookies = 1          

# SYN Cookies 防 SYN Flood net.ipv4.conf.default.accept_source_route = 0  # 禁源路由  

# 系统层 kernel.randomize_va_space = 2        

# 开启完整 ASLR(地址空间随机化) kernel.core_uses_pid = 1 fs.suid_dumpable = 0                 

# 禁止对 suid 程序产生核心转储

④ 文件系统挂载加固(/etc/fstab)与 SUID 排查

# 独立分区挂载时加安全选项(以 /tmp 为例,视业务决定是否 noexec) tmpfs  /dev/shm  tmpfs  defaults,nodev,nosuid,noexec  0 0 

# /tmp 建议独立分区并挂为:  defaults,nodev,nosuid,noexec(若允许执行脚本则去掉 noexec) 

# /home,/var 至少 nodev,nosuid  

# 排查 setuid/setgid 后门文件 find / -type f -perm -4000 -ls 2>/dev/null find / -type f -perm -2000 -ls 2>/dev/null  

# 检查监听端口与多余服务 ss -tulnp systemctl list-unit-files --type=service | grep enabled

⑤ 防火墙(firewalld)示例

# 默认拒绝/收口思路:默认区 drop,再按需放行 firewall-cmd --set-default-zone=drop firewall-cmd --permanent --zone=drop --add-service=ssh firewall-cmd --permanent --zone=drop --add-service=http firewall-cmd --reload 

# 老式 iptables 亦可: iptables -P INPUT DROP 等(需注意默认策略别把自己关外面)

⑥ 审计与完整性(auditd + AIDE)

# auditd 实时监控口令/用户文件 auditctl -w /etc/passwd      -p wa -k etc_passwd auditctl -w /etc/shadow      -p wa -k etc_shadow auditctl -w /etc/sudoers     -p wa -k etc_sudoers 

# 持久化: 写入 /etc/audit/rules.d/audit.rules, 重启仍生效 

# 查询:   ausearch -k etc_passwd   |   aureport -au  

# AIDE 文件完整性基线 aide --init              

# 首次生成基线(输出到 /var/lib/aide/aide.db.new.gz) 

# 更名基线后定期: aide --check   → 有差异即告警(防篡改/防 rootkit 藏文件)

💡 关于 noexec:/tmp 若挂 noexec,能挡掉"上传二进制到 /tmp 再执行"的一类攻击,但会误伤把 /tmp 当脚本/程序工作目录的正常业务,要按业务取舍——这正是案例题"配置与可用性平衡"的经典考点。

· · ·

4.5 安全模型参考:把基础篇的模型"翻译"到 Linux 身上(跨章串讲)

这里做一张"理论模型 → Linux 落地"对照表,2026 若考"以下哪个机制实现了强制访问控制/对应哪类安全模型",照抄即可:

安全模型/概念
Linux 中的落地
常被混淆的"假朋友"
DAC(自主)
传统 rwx 属主可 chmod、POSIX ACL(setfacl)——属主说了算
SELinux 是 MAC 不是 DAC,别归错队
MAC(强制)
SELinux(context 标签)、AppArmor;用户改不了标签,要管理员 semanage/restorecon
普通 chmod 改不了 SELinux 的 type
RBAC(角色)
sudoers 里按"用户组/角色"批量授权;SELinux 角色(user:role)
不是"多用户",是"按角色批量给权"
BLP(机密性)
SELinux mls 策略类型:低密级不能读高、高密级不能写低(上读禁?/下写禁)即"保密多级"
默认 targeted 不体现完整 MLS
最小权限
最小化安装、普通用户、sudo 白名单、Capabilities 单项授权、去 SUID
"root 只给一个人用"≠ 最小权限
审计
auditd + /var/log/{secure,messages};日志只读/异地
开日志≠审计(需有策略+防篡改+可追责)

🧠 串讲价值: 这正好呼应基础篇的"BLP 禁上读禁下写 / Biba 禁下读禁上写"。出题人最爱的招数是给一段 Linux 描述(如"SELinux mls 下,高安全级别进程无法向低级别对象写"),问你"这符合哪个模型的哪条规则"→ 答 BLP 星特性(禁止下写)。

· · ·

五、国产操作系统安全分析与防护(2026 最可能的新增考点区)

教材成书较早,国产化内容着墨有限;但近年"信创 + 等保 + 商密"在案例题里几乎必带一笔。备考冲刺期,这一块你必须"知道生态、记住术语、会答三问"。

5.1 先把"生态地图"记牢(选择题最爱考"谁是谁")

发行版
主要出品方
技术底座/要点
常配国产 CPU
银河麒麟(Kylin OS)
麒麟软件(中国电子系)
桌面/服务器双线;服务器版 V10 与 openEuler 同源,兼容 CentOS 生态,带迁移工具;有银河麒麟安全增强框架
飞腾、鲲鹏、龙芯、申威、海光、兆芯等广泛适配
统信 UOS
统信软件
基于 Deepin(Debian 系);桌面专业版/服务器版;生态在政务办公普及
x86 主力 + 各国产 ARM 平台适配
openEuler(欧拉)
开放原子开源基金会(华为捐出)
开源服务器底座;麒麟服务器版等基于其构建;鲲鹏生态强,面向云/边缘
鲲鹏最强(ARM),也适配 x86
龙蜥 Anolis
阿里等发起
开源服务器系统,兼容 CentOS 生态
x86 + 主流国产平台
中科方德 / 麒麟信安 / 红旗 / Deepin 等
各厂商
特定行业(如方德聚焦党政办公)
随项目匹配

🚨 3 个易混点: ① 银河麒麟(麒麟软件)≠ 中标麒麟(历史品牌),现在官方旗舰基本是"银河麒麟 V10";② UOS(统信)≠ 麒麟,一个 Debian/Deepin 底、一个与 openEuler 同源;③ openEuler 是开源社区底座,银河麒麟服务器版等是商业发行版——不是同一层的东西。

5.2 国产 OS 的安全增强设计(把"它比普通 Linux 多做了啥"答出来)

安全设计
内容
考试怎么问
三权分立/三员分立
把管理员拆成:系统管理员(日常运维)、安全保密管理员/安全管理员(账号授权、安全策略)、安全审计员(监督前两者)——互相制约,防止"超级 root 一人独大",呼应等保"最小权限+职责分离"
问"三个管理员各自职责/为了防什么"——答"职责分离、互相制衡、防超级管理员滥用"
强制访问控制/多级安全
内置安全增强内核(如麒麟的 KYSEC、各系统可选开启 SELinux/类似机制),可做到文件分级、进程标签化(对应 BLP 思路)
问"国产 OS 如何实现更细粒度访问控制"
国密算法支持
商密 SM2(公钥/签名)、SM3(哈希)、SM4(对称加密)内建进密码模块/SSH、磁盘加密、签名验签
问"哪些属于国密算法/用于什么"→ SM2 签名、SM3 摘要、SM4 加密,别和 SM1/SM9 混(少见)
可信计算落地
对接国产 TCM/TPCM(可信密码模块/可信平台控制模块),开机"先度量后执行"、可信启动信任链,呼应等保 2.0 的"可信验证"
问"可信验证的硬件底座"
双因素认证
口令 + U 盾/Key、指纹、动态令牌等组合登录
问"符合等保哪条"——身份鉴别
安全中心/集中管控
一键加固、漏洞修复、病毒防护、外设管控;服务器版支持域控/集中账号、审计上报
案例题"运维如何批量管控"

5.3 国产 OS 安全分析与防护(站在"信创+等保"角度答)

  • 定位风险:
     软件供应链(组件来源国产化程度)、生态依赖(驱动/中间件迁移兼容性)、停服老版本、高危漏洞响应(依赖国产漏洞库 CNNVD 与厂商公告)。
  • 防护主线:
     等保2.0"安全计算环境"对操作系统的要求,在国产 OS 上一一落实——身份鉴别(双因素/锁定)、访问控制(权限/三权分立)、安全审计(开启并留存)、入侵防范(关闭危险服务/最小化/补丁)、恶意代码防范(内置防护)、可信验证(度量启动)。
  • 迁移与加固场景(案例题素材):
     CentOS 停更 → 迁移国产/欧拉系 → 同步做基线加固 → 应用兼容性验证 → 双轨运行回退预案。答"迁移注意"可写:先盘点软硬件兼容、备份、小范围试点、安全基线同步、应急预案。

🧠 一句话应试: 国产 OS 的安全答题= "底子是加固过的 Linux,外壳多了一层国产化安全设计(三权分立+国密+可信+双因素)"。凡是"自主可控、供应链安全、等保合规、商密合规"的大帽子题,都能往这上面靠。

· · ·

六、2026 软考信安 · 本章细颗粒考点预测总清单

6.2 按题型预测(选择题 vs 案例题)

题型
最可能命中的方向
出现概率
选择/判断
Windows 组件职责辨析(登录=winlogon、认证=LSA、SAM=注册表、审计控制=DACL/SACL/双开关)
★★★★★
Linux 文件/数值/命令(shadow 哈希、特殊位数字、umask 结果、PAM 模块、SELinux 状态命令)
★★★★★
国产 OS 常识 + 三权分立职责 + 国密算法用途 + 发行版与厂商/CPU 匹配
★★★★
(2026 上升最快)
案例分析
给一个 Windows/Linux 服务器,指出安全弱点并给加固整改方案(8 步法直接套)
★★★★
结合信创/等保场景:国产 OS 迁移加固、安全计算环境符合性(身份鉴别/审计/可信验证…)
★★★★

6.3 2026 大概率新增/变形的几个"新面孔"

  1. Windows 审计"双开关"陷阱题
    (对象 SACL 加了审计 ACE 但全局"审核对象访问"没开 → 还是没有日志)。
  2. Capabilities vs setuid
     的"最小权限"比较题;或给出 getcap -r 结果让找风险。
  3. 国产 OS 三权分立 / 国密 / 可信
     与等保 2.0 要求"连线"的组合题。
  4. 加固"平衡题"
    (如 /tmp noexec 会否影响业务、RDP 关闭是否影响远程运维)——考"安全与可用性权衡"。
  5. 日志/事件与威胁对应
    :给一段 security 日志/audit.log 片段判断发生了什么(登录失败爆破、AIDE 差异告警、avc denied)。

七、终极背诵包(口诀 + 速记卡片)

🎵 顺口溜1:Windows 架构与组件(新)

🎵 顺口溜2:Linux 文件与加固(新)

🎵 顺口溜3:国产 OS 与 2026 展望(新)

九、备考小贴士(进阶篇专属)

    · · ·

    😂 每日一笑

    下午卷的案例分析题,操作系统安全这一章常年以"给一个带病环境 → 让你找问题、写加固、看日志判断事件"的形式出现。今天按 2026 命题趋势给你组2 套仿真案例题,难度贴近真题、答案全带采分点——先自己做,再点开对照,练的就是"踩点得分"的手感。

    阅读以下说明,回答问题 1 至问题 4,将解答填入答题纸的对应栏内。

    【说明】

    某政务云租户将一台部署了公民业务数据的服务器迁移到国产操作系统(银河麒麟,基于 Linux 内核)上运行,该服务器需通过等保三级测评并曾发生过一次安全事件。等保测评与应急复盘后整理出如下现象:① 账户口令策略缺失:/etc/shadow 权限被误改成 644;允许 root 通过 SSH 远程口令登录;口令无老化、登录失败不锁定。② 事件复盘发现:系统被植入过一个 setuid 后门,/etc/passwd 中一度出现第二个 UID=0 的账号 backup,计划任务目录中被添加了可疑脚本。③ 用户要求整改后不仅要"修好",还要满足等保三级对"安全计算环境"的要求,并体现国产操作系统的安全增强特性。

    【问题 1】(5 分)

    请针对现象①逐一指出风险,并写出对应的整改命令或配置(要求写到具体文件与参数)。

    ✨ 查看参考答案

    ① shadow 权限过宽(644 任何人可读): 口令哈希泄露后可被离线暴力破解。整改:恢复为仅 root 可读写chmod 600 /etc/shadow(或 chown root:shadow 后设 640)。

    ② 允许 root 远程口令登录: 弱口令被爆破即直接获得最高权限,且 root 口令无失败锁定兜底易被撞库。整改:编辑 /etc/ssh/sshd_config,设置PermitRootLogin no(并建议 PasswordAuthentication no 改密钥认证),保存后 sshd -t 校验并 systemctl restart sshd。

    ③ 口令无老化、失败不锁定: 长期不换 + 无限尝试,口令易泄露/被爆破。整改:在 /etc/login.defs 设全局老化(如 PASS_MAX_DAYS 90、PASS_WARN_AGE 7);通过 PAM 增加复杂度与失败锁定——/etc/security/pwquality.conf(复杂度)与 /etc/security/faillock.conf(deny=5、unlock_time=1800),并在 /etc/pam.d/system-auth 等链中挂载 pam_pwquality.so、pam_faillock.so。

    💡 采分点提示: 写"具体命令/参数"比写"加强口令管理"得分高,务必落到 shadow/sshd_config/login.defs/PAM 这些文件名上。

    【问题 2】(6 分)

    针对现象②的后门与隐藏账号,回答:(1)分别写出"查找全盘 setuid 文件""查找 UID=0 的账号""查看计划任务""查看 SSH 免密后门"的排查命令。(2)请说明攻击者为何偏爱用 setuid/UID=0 账号作为后门,并给出加固建议。

    ✨ 查看参考答案

    (1)排查命令(每条约 0.75~1 分):

    • 全盘 setuid 文件:find / -type f -perm -4000 -ls 2>/dev/null(SGID 用 -perm -2000)
    • 查找 UID=0 账号:awk -F: '$3==0{print $1}' /etc/passwd
    • 查看计划任务:crontab -l(root 与各用户)、ls -l /etc/cron.d/ /var/spool/cron/
    • SSH 免密后门:cat ~/.ssh/authorized_keys(检查是否有异常公钥)、核对 /root/.ssh/ 与各账号 .ssh 属主与内容

    (2)原因与加固(约 3 分):

    为什么爱用:
     setuid 文件执行时以属主(常为 root)身份运行,等于"免认证提权通道",且藏身于大量系统文件里不易被发现;UID=0 账号等价于 root,比改 root 口令更隐蔽,常规 root 锁定策略管不到它。
    加固建议:
     ① 定期用上述命令排查并清除可疑 SUID/SGID 文件,确需保留的 setuid 尽量收敛为 sudo 白名单或 Capabilities 单项授权;② 周期性比对 /etc/passwd 中 UID=0 账号(应只有 root);③ 配合 auditd 监控 /etc/passwd、计划任务目录的写入;④ 用 AIDE 等建立关键文件完整性基线,察觉篡改;⑤ 加强口令与锁定策略,避免被爆破后植入。

    【问题 3】(8 分)

    为满足等保三级"安全计算环境"并体现国产化安全增强特性,请回答:(1)国产操作系统普遍采用的"三权分立/三员分立"将管理权限拆分为哪三个角色?各自职责是什么?这样做的目的?(2)从"安全计算环境"的六项要求中任选三项,说明在本服务器上如何落地;(3)等保中的"可信验证"要求,与国产操作系统的哪些安全特性相呼应?

    ✨ 查看参考答案

    (1)三角色(约 3 分):

    系统管理员:
     负责日常运维管理(安装软件、配置系统服务、备份恢复等);
    安全保密管理员(安全管理员):
     负责账号授权、口令策略、安全策略与访问控制的配置管理;
    安全审计员:
     负责对前两者的操作进行审计监督,独立行使审计权限。
    目的:
     通过职责分离与相互制衡,避免单一超级管理员(root)权限过大且无人监督,贯彻最小权限与"操作与审计分离"原则。

    (2)任选三项落地示例(每项约 1.5 分):

    身份鉴别:
     口令复杂度 + 90 天老化 + 登录失败锁定(PAM/faillock),并可启用 U 盾/指纹等双因素认证;
    访问控制:
     关闭 root 远程登录、使用 sudo 按命令授权、收敛 SUID/SGID、启用系统的强制访问控制能力、普通用户去 root;
    安全审计:
     开启 auditd 对 /etc/passwd、/etc/shadow、sudoers 等关键文件实时审计,日志集中留存并防篡改;
    入侵防范:
     最小化安装与服务、关闭多余端口、防火墙按需放行、及时升级内核与组件补丁;
    恶意代码防范:
     启用系统自带安全中心/病毒防护,重要系统盘与文件采用国密算法加密(SM4 盘密 + 签名校验);
    可信验证:
     结合国产可信芯片,开机"先度量后执行",建立信任链(见(3))。

    (3)可信验证呼应(约 2 分):

    • 国产可信计算芯片 TPCM/TCM + 可信启动"先度量后执行",从可信根逐级度量 BootLoader→内核→关键应用,任何一层被篡改即拒绝/告警,形成信任链——这正是等保"可信验证"在操作系统安全保护层面的落地形态。

    【问题 4】(6 分)

    应急复盘时从 /var/log/secure(认证日志)中提取到如下片段(模拟):

    ... sshd[1123]: Failed password for root from 203.0.113.9 port 52113 ssh2 ... sshd[1123]: Failed password for root from 203.0.113.9 port 52130 ssh2 ... sshd[1131]: Accepted password for root from 203.0.113.9 port 52177 ssh2 ... useradd[1188]: new user: name=backup, UID=0, GID=0, home=/root ... crontab[1200]: (backup) REPLACE (user backup)

    请回答:(1)依据以上日志,还原攻击者的大致入侵过程(攻击链路);(2)为防范此类事件、保障"事后可溯源",在日志/审计层面应做哪些工作?

    ✨ 查看参考答案

    (1)攻击链路还原(约 3 分):

    • ① 远程爆破 root: 对 root 持续 Failed password(大量失败尝试),说明存在口令暴力破解;
    • ② 爆破成功: 某次 Accepted password for root,攻击者拿到 root 远程登录权限(暴露了"允许 root 口令登录"与"无失败锁定"两个缺陷);
    • ③ 建立持久后门: 创建 UID=0/GID=0 的隐藏账号 backup,并植入计划任务脚本(crontab REPLACE),配合现象②中发现的 setuid 后门,实现持久化控制。

    (2)日志/审计层面的保障(约 3 分):

    • ① 开启并集中: 启用 auditd 与系统认证日志,并通过 rsyslog/SIEM 将日志异地集中,防止被入侵者就地清除;
    • ② 防篡改: 日志落盘后设只读/追加写权限,关键审计使用远程只读收集,保证完整性;
    • ③ 重点监控项: 对 useradd/usermod、chage、/etc/passwd、/etc/shadow、计划任务目录等敏感操作/文件加审计规则(auditctl -w ... -k),并配置告警;
    • ④ 留存策略: 规定日志留存时长(如 ≥6 个月),与应急响应预案联动,事后可完整溯源复盘。

    · · ·

    案例题二

    (本大题建议答题 30 分钟,共约 25 分)

    阅读以下说明,回答问题 1 至问题 4,将解答填入答题纸的对应栏内。

    【说明】

    某企业对外门户部署在 DMZ 区一台 Windows Server 2016 上(远程桌面 3389 对外开放、445 端口开放),内部业务缓存部署在 Linux 服务器上。安全团队应急处置时发现:① Windows 主机的 Security 事件日志中大量"审核失败",随后出现一次成功登录,再往后一段"审核日志被清除";② Windows 主机 SMBv1 开启、存在默认共享,Guest 账户被启用,且检测到 lsass.exe 内存被读取的迹象(疑似凭据被转储);③ 内部 Linux 服务器出现异常 SSH 登录与可疑进程,怀疑被横向移动并植入后门;④ 等保测评指出 Windows 主机"对象访问审计配置不完整、远程管理未做来源限制、未做数据加密"。

    【问题 1】(6 分)

    下表列出部分 Windows 安全事件 ID,请将其与含义连线对应,并结合现象①判断攻击者的行为序列:

    事件 ID
    事件含义
    4624
    A. 用户账户被锁定(连续失败)
    4625
    B. 账户登录成功
    4740
    C. 安全审计日志被清除
    1102
    D. 账户登录失败

    ✨ 查看参考答案

    对应关系:4624—B、4625—D、4740—A、1102—C(每条 1 分,共 4 分)。

    攻击者行为序列推断(约 2 分):大量 4625(登录失败)说明正在对 RDP 进行口令爆破 → 期间账户触发锁定会出现 4740 → 爆破成功后产生 4624(登录成功) → 攻击者做破坏性操作前清除日志掩盖痕迹,出现 1102(审核日志被清除)。据此可判断:这是一次"RDP 爆破 → 登录成功 → 清理痕迹"的入侵事件,后续很可能伴随凭据窃取与横向移动。

    【问题 2】(7 分)

    结合现象②④,请写出对该 Windows 服务器的安全增强措施(至少 6 条,要求具体到策略/配置项)。

    ✨ 查看参考答案

    ① 账户口令策略:
     本地安全策略(secpol.msc)中启用密码复杂度、最小长度≥8、最长使用期≤90 天;禁用并重命名内置 Administrator、禁用 Guest、删除冗余账号;
    ② 账户锁定策略:
     账户锁定阈值设 5 次、锁定时间 30 分钟,抵御 RDP 爆破;
    ③ 审计策略:
     开启"审核登录事件、账户登录、账户管理"(成功+失败)与"审核对象访问"(失败),并保证对象 SACL 配齐审计 ACE(双开关);
    ④ 收敛网络暴露面:
     关闭 SMBv1(445 蠕虫/永恒之蓝入口)、删除/禁用默认共享 C$/ADMIN$/IPC$、关闭不必要服务与端口,防火墙默认阻止入站;
    ⑤ 远程管理收口:
     3389 禁止直接暴露公网,仅允许 NLA、限定来源 IP/经堡垒机(VPN)访问;
    ⑥ 最小权限与凭据保护:
     日常账号移出 Administrators 组,启用 UAC;部署 Credential Guard(基于虚拟化隔离 LSA,防 LSASS 被转储抓凭据)并限制可调试系统进程的权限;
    ⑦ 数据加密:
     敏感目录用 EFS 文件级加密、系统盘用 BitLocker 整卷加密(配 TPM);
    ⑧ 补丁与防护:
     及时安装系统补丁(WSUS/自动更新),启用杀软/EDR 与 Windows Defender Exploit Protection(DEP/ASLR/CFG)。

    【问题 3】(6 分)

    测评指出 Windows"对象访问审计配置不完整"。请结合 Windows 安全模型解释:(1)对一个文件配置"写入被审计",需要哪两处配合才能产生日志?若只在文件属性中添加了审计项却仍无日志,最可能缺什么?(2)说明 DACL 与 SACL 的区别,以及"拒绝"ACE 与"允许"ACE 的裁决优先级。

    ✨ 查看参考答案

    (1)对象访问审计的"双开关"(约 3 分): 

     ① 在对象本身的安全描述符 SACL 中添加审计 ACE(指定对哪个用户/组、哪类访问(如写入)、成功/失败进行审计)——即文件"安全 → 高级 → 审核"处配置;

     ② 在系统/组策略的"审核对象访问"类别开启(auditpol 或 secpol.msc 的审核策略)。

    只配 SACL 而无全局策略时仍不会产生日志——最可能缺的就是"审核对象访问"策略开关未开启;反之亦然,所以叫双开关。

    (2)DACL 与 SACL、裁决优先级(约 3 分):

    DACL 决定对对象允不允许访问(允许/拒绝 ACE),管"放行";SACL 决定哪些访问生成审计日志(系统审计 ACE),管"留痕"。

     裁决时显式"拒绝"优先于"允许"(Deny 一票否决):只要命中一条拒绝 ACE 即拒绝访问,即使同时存在允许 ACE;且继承的 ACE 排在显式 ACE 之后处理。

    【问题 4】(6 分)

    针对内部 Linux 服务器被横向移动并植入后门,结合现象③,请回答:(1)给出至少 4 条 Linux 侧加固/处置措施(要求具体命令或配置文件);(2)为什么 Windows 上被转储的凭据可能威胁到 Linux?应如何从"账号口令策略"层面切断这条横向链路?

    ✨ 查看参考答案

    (1)Linux 侧加固/处置(任写 ≥4 条,约 4 分):

    • ① 账户口令: 排查新增/异常账号(awk -F: '$3==0{print $1}' /etc/passwd),禁用 root 远程登录(/etc/ssh/sshd_config 设 PermitRootLogin no),开启口令复杂度和失败锁定(PAM);
    • ② 后门排查: 查 setuid/setgid(find / -type f -perm -4000 -ls)、计划任务(ls -l /etc/cron.d/ /var/spool/cron/)、SSH 免密(核对 authorized_keys)、可疑进程与开放端口(ps -ef、ss -tulnp);必要时用 rkhunter/chkrootkit 扫描并重装受感染服务;
    • ③ 审计与完整性: 开启 auditd 监控 /etc/passwd、sshd_config 等;用 AIDE 建立关键文件完整性基线,发现异常即告警;
    • ④ 网络与最小化: 防火墙只放业务端口、禁 IP 转发与重定向(sysctl)、关闭多余服务;
    • ⑤ 补丁: 及时升级内核与组件,修复已知提权/远程漏洞。

    (2)横向链路切断(约 2 分):

    • 原因:员工常在多系统复用同一口令,Windows 侧被转储的凭据(明文口令或可重放的哈希)一旦命中 Linux 上相同账号口令,即可横向登录。
    • 对策:跨系统强制使用不同口令/独立账号;关键系统启用双因素认证;对远程管理限源(防火墙/IP 白名单/堡垒机)并最小化授权;发现复用立即全量改密。

    · · ·

    答题要点速查卡(做完对,考前再看一眼)

    觉得有用的话,点个关注"在看"并转发给一起备考的战友吧!
    基本 文件 流程 错误 SQL 调试
    1. 请求信息 : 2026-10-25 11:09:20 HTTP/1.1 GET : http://www.sjds.net/a/526510.html
    2. 运行时间 : 0.075525s [ 吞吐率:13.24req/s ] 内存消耗:4,833.80kb 文件加载:140
    3. 缓存信息 : 0 reads,0 writes
    4. 会话信息 : SESSION_ID=9a8e03c26ef155828f8181c18de70cc6
    1. /www/wwwroot/www.sjds.net/public/index.php ( 0.79 KB )
    2. /www/wwwroot/www.sjds.net/vendor/autoload.php ( 0.17 KB )
    3. /www/wwwroot/www.sjds.net/vendor/composer/autoload_real.php ( 2.49 KB )
    4. /www/wwwroot/www.sjds.net/vendor/composer/platform_check.php ( 0.90 KB )
    5. /www/wwwroot/www.sjds.net/vendor/composer/ClassLoader.php ( 14.03 KB )
    6. /www/wwwroot/www.sjds.net/vendor/composer/autoload_static.php ( 4.90 KB )
    7. /www/wwwroot/www.sjds.net/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
    8. /www/wwwroot/www.sjds.net/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
    9. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
    10. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
    11. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
    12. /www/wwwroot/www.sjds.net/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
    13. /www/wwwroot/www.sjds.net/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
    14. /www/wwwroot/www.sjds.net/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
    15. /www/wwwroot/www.sjds.net/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
    16. /www/wwwroot/www.sjds.net/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
    17. /www/wwwroot/www.sjds.net/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
    18. /www/wwwroot/www.sjds.net/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
    19. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
    20. /www/wwwroot/www.sjds.net/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
    21. /www/wwwroot/www.sjds.net/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
    22. /www/wwwroot/www.sjds.net/app/provider.php ( 0.19 KB )
    23. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
    24. /www/wwwroot/www.sjds.net/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
    25. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
    26. /www/wwwroot/www.sjds.net/app/common.php ( 0.03 KB )
    27. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/helper.php ( 18.78 KB )
    28. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
    29. /www/wwwroot/www.sjds.net/config/app.php ( 0.95 KB )
    30. /www/wwwroot/www.sjds.net/config/cache.php ( 0.78 KB )
    31. /www/wwwroot/www.sjds.net/config/console.php ( 0.23 KB )
    32. /www/wwwroot/www.sjds.net/config/cookie.php ( 0.56 KB )
    33. /www/wwwroot/www.sjds.net/config/database.php ( 2.48 KB )
    34. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
    35. /www/wwwroot/www.sjds.net/config/filesystem.php ( 0.61 KB )
    36. /www/wwwroot/www.sjds.net/config/lang.php ( 0.91 KB )
    37. /www/wwwroot/www.sjds.net/config/log.php ( 1.35 KB )
    38. /www/wwwroot/www.sjds.net/config/middleware.php ( 0.19 KB )
    39. /www/wwwroot/www.sjds.net/config/route.php ( 1.89 KB )
    40. /www/wwwroot/www.sjds.net/config/session.php ( 0.57 KB )
    41. /www/wwwroot/www.sjds.net/config/trace.php ( 0.34 KB )
    42. /www/wwwroot/www.sjds.net/config/view.php ( 0.82 KB )
    43. /www/wwwroot/www.sjds.net/app/event.php ( 0.25 KB )
    44. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
    45. /www/wwwroot/www.sjds.net/app/service.php ( 0.13 KB )
    46. /www/wwwroot/www.sjds.net/app/AppService.php ( 0.26 KB )
    47. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
    48. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
    49. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
    50. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
    51. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
    52. /www/wwwroot/www.sjds.net/vendor/services.php ( 0.14 KB )
    53. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
    54. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
    55. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
    56. /www/wwwroot/www.sjds.net/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
    57. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
    58. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
    59. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
    60. /www/wwwroot/www.sjds.net/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
    61. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
    62. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
    63. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
    64. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
    65. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
    66. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
    67. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
    68. /www/wwwroot/www.sjds.net/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
    69. /www/wwwroot/www.sjds.net/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
    70. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
    71. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
    72. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
    73. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
    74. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
    75. /www/wwwroot/www.sjds.net/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
    76. /www/wwwroot/www.sjds.net/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
    77. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
    78. /www/wwwroot/www.sjds.net/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
    79. /www/wwwroot/www.sjds.net/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
    80. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
    81. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
    82. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
    83. /www/wwwroot/www.sjds.net/app/Request.php ( 0.09 KB )
    84. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
    85. /www/wwwroot/www.sjds.net/app/middleware.php ( 0.25 KB )
    86. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
    87. /www/wwwroot/www.sjds.net/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
    88. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
    89. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
    90. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
    91. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
    92. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
    93. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
    94. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
    95. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
    96. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
    97. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
    98. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
    99. /www/wwwroot/www.sjds.net/route/app.php ( 1.72 KB )
    100. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
    101. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
    102. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
    103. /www/wwwroot/www.sjds.net/app/controller/Index.php ( 4.81 KB )
    104. /www/wwwroot/www.sjds.net/app/BaseController.php ( 2.05 KB )
    105. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
    106. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
    107. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
    108. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
    109. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
    110. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
    111. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
    112. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
    113. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
    114. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
    115. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
    116. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
    117. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
    118. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
    119. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
    120. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
    121. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
    122. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
    123. /www/wwwroot/www.sjds.net/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
    124. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
    125. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
    126. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
    127. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
    128. /www/wwwroot/www.sjds.net/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
    129. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
    130. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
    131. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
    132. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
    133. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
    134. /www/wwwroot/www.sjds.net/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
    135. /www/wwwroot/www.sjds.net/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
    136. /www/wwwroot/www.sjds.net/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
    137. /www/wwwroot/www.sjds.net/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
    138. /www/wwwroot/www.sjds.net/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
    139. /www/wwwroot/www.sjds.net/runtime/temp/022a5b1eae5a9e3c31e54f699d8ae600.php ( 8.05 KB )
    140. /www/wwwroot/www.sjds.net/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
    1. CONNECT:[ UseTime:0.000570s ] mysql:host=172.18.0.4;port=3306;dbname=www_sjds;charset=utf8mb4
    2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000772s ]
    3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000445s ]
    4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000364s ]
    5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000513s ]
    6. SELECT * FROM `set` [ RunTime:0.000269s ]
    7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000571s ]
    8. SELECT * FROM `article` WHERE `id` = 526510 LIMIT 1 [ RunTime:0.000510s ]
    9. UPDATE `article` SET `lasttime` = 1792897760 WHERE `id` = 526510 [ RunTime:0.002770s ]
    10. SELECT * FROM `fenlei` WHERE `id` = 65 LIMIT 1 [ RunTime:0.000532s ]
    11. SELECT * FROM `article` WHERE `id` < 526510 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000429s ]
    12. SELECT * FROM `article` WHERE `id` > 526510 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000359s ]
    13. SELECT * FROM `article` WHERE `id` < 526510 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000581s ]
    14. SELECT * FROM `article` WHERE `id` < 526510 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000816s ]
    15. SELECT * FROM `article` WHERE `id` < 526510 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000700s ]
    0.087707s