ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

中职网络安全赛题解析:A模块加固与B模块取证实战

中职网络安全赛题解析:A模块加固与B模块取证实战 简介这份文档面向备战全国职业院校技能大赛中职组网络安全赛项的选手与指导教师聚焦2022年赛题A、B两个模块的解析答案帮助读者理解基础设施加固与安全事件响应的标准解题思路。压缩包内为1个docx文件约2.74MB内容按模块A、B组织涵盖登录安全加固、数据库安全策略、流量完整性、事件监控、防火墙策略、IP协议安全配置以及主机发现与信息收集等任务的操作要点与答案说明。文档结合Windows与Linux双环境给出密码策略、用户权限、端口封禁、SYN洪水防护等具体配置参考便于对照赛题复盘与查漏补缺。目前已有3936人学习下载适合需要系统梳理赛题解法、提升实操能力的中职网络安全竞赛选手使用。1. 从一份中职赛题拆起AB 模块到底考什么、能拿来练什么如果你正在准备全国职业院校技能大赛中职组网络安全赛项或者带学生打这个比赛手里大概率已经攒了一堆「历年真题」压缩包但真正打开逐题做过的没几套。这套 2022 年的 AB 模块解析答案就是那种「看着眼熟、动手就卡」的典型资料A 模块考基础设施加固B 模块考事件响应与数字取证两块加起来 60 分是整场比赛的基本盘。它不玩花活考的全是 Windows 组策略、Linux PAM、MySQL 账户权限、iptables 规则、Nmap 扫描参数、Wireshark 流量回溯这些一线运维和安全岗天天碰的东西。适合两类人一是备赛的中职选手和指导老师需要一份能对着环境复现的标准操作路径二是刚转网络安全、想用真实赛题练手感的入门者拿它当靶场任务清单比刷纯理论题有用得多。下面我按 A、B 两个模块把关键任务拆开把参数、命令和容易翻车的地方讲透。2. A 模块基础设施加固从 PAM 锁定到 SYN 洪水阈值A 模块 20 分六个任务覆盖登录安全、数据库、流量完整性、事件监控、防火墙和 IP 协议安全。分值不高但任务碎每个小项都要求截图加文字说明最后导出 PDF 提交。很多人丢分不是因为不会做而是漏了截图或者参数写错一位。这一章把每个任务的操作路径和参数含义讲清楚。2.1 登录安全加固PAM tally2 与 Windows 密码策略Linux 侧的登录失败锁定靠 PAM 的pam_tally2模块实现。赛题要求「一分钟内仅允许 4 次登录失败超过锁定 1 分钟」实际操作中答案给的是 deny5、unlock_time60这里有个细节deny 值设 5 意味着第 5 次失败才触发锁定和「超过 4 次锁定」在计数口径上差一次比赛时以答题卡为准但理解这个差异能帮你在遇到变体题时不慌。# 编辑 PAM 登录配置文件 vim /etc/pam.d/login # 在 auth 段加入 tally2 控制行 auth required pam_tally2.so deny5 unlock_time60 # 查看某用户的失败计数 pam_tally2 --useruser1 # 手动解锁用户清零计数 pam_tally2 --useruser1 --resetdeny5是失败次数阈值unlock_time60是锁定时长秒。注意pam_tally2在 CentOS 7 上默认就有但如果系统用的是pam_faillockCentOS 8 以后配置方式完全不同赛题环境是 CentOS 7 所以用 tally2。改完 PAM 后不要直接退出当前会话另开一个终端测试否则可能把自己锁在外面——这是血泪经验。Windows 侧的最短密码长度 15 位普通本地账户确实最多 14 位但赛题正文里提到「安装 domain 后即可设置 15、16 位」这其实是在提示你如果环境里有域控走域策略没有域控就用net user或本地安全策略尽量往 14 位靠截图时把设置界面截全。用户登录时间限制用net user user1 /time:M-F,9:00-18:00设置查看用net user user1。# 设置 user1 仅周一至周五 9:00-18:00 可登录 net user user1 /time:M-F,9:00-18:00 # 查看当前登录时间限制 net user user1关键目录权限收紧system32、hosts、Program Files、Perflogs的操作路径是右键属性 → 安全 → 高级 → 更改所有者 → 取消继承 → 删除继承权限 → 只添加 Administrators 组并给读取和运行。hosts 文件在C:\Windows\System32\drivers\etc下改完记得验证普通用户是否真的无法写入。2.2 数据库与流量完整性MySQL 降权和 HTTP 强制跳转MySQL 安全策略有四个小项以 mysql 普通账户运行服务、删除 test 库、改管理员用户名为 SuperRoot、用 MD5 加密 user1 密码。第一项在/etc/my.cnf的[mysqld]段加usermysql这个默认配置里通常已有但赛题要求你确认并截图。# 编辑 MySQL 主配置 vim /etc/my.cnf # 在 [mysqld] 段确认或添加 [mysqld] usermysql # 登录 MySQL 后执行 DROP DATABASE test; UPDATE mysql.user SET userSuperRoot WHERE userroot; UPDATE mysql.user SET passwordMD5(Pssw0rd1!) WHERE useruser1; FLUSH PRIVILEGES;MD5()是 MySQL 内置函数直接返回 32 位哈希串。改完用户名后要用FLUSH PRIVILEGES刷新权限表否则不生效。注意改 root 用户名有风险改完记得用新名字登录验证别把自己关在门外。HTTP 重定向 HTTPS 在 Windows 上一般用 IIS 的 URL 重写模块或绑定 HTTPS 证书实现。赛题要求证书颁发给 test.com 并通过https://www.test.com访问操作路径是IIS 管理器 → 绑定 → 添加 https 绑定 → 选择证书 → 再用 URL 重写规则把 http 请求 301 到 https。截图时要把证书信息和重写规则都截到。2.3 防火墙与 IP 协议安全iptables 规则和 SYN 攻击注册表Windows 禁用 445 和 23 端口走高级安全防火墙的入站规则新建端口规则 → 特定端口 → 阻止连接 → 命名完成。Linux 侧用 iptables# 禁用 23 端口telnet iptables -A INPUT -p tcp --dport 23 -j DROP # 禁止 ICMP ping iptables -A INPUT -p icmp --icmp-type 8 -j DROP # 保存规则CentOS 7 service iptables save # 或 iptables-save /etc/sysconfig/iptables--icmp-type 8是 Echo Request 类型DROP 后别人 ping 不通但本机还能 ping 出去。注意 iptables 规则重启后会丢失必须保存。很多人配完不保存重启后规则没了比赛时如果裁判重启环境就翻车。SYN 洪水防护在 Windows 注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters下新建三个 DWORD 值SynAttackProtect2、TcpMaxPortsExhausted5、TcpMaxHalfOpen500、TcpMaxHalfOpenRetried400。这几个参数分别控制 SYN 攻击保护开关、触发保护的端口耗尽阈值、半开连接数上限和重传半开连接数上限。改完注册表需要重启或至少重启 TCP/IP 服务才生效截图时把注册表路径和值都截全。3. B 模块事件响应与取证Nmap 参数与 Wireshark 流量回溯B 模块 40 分是整场比赛分值最高的部分考的是主机发现、信息收集、数据包分析和数字取证。题目形式是给一个场景和若干 Flag 问题你通过工具操作找到答案。这一章把 Nmap 扫描参数和 Wireshark 分析路径拆开讲。3.1 Nmap 扫描参数从 TCP 同步扫描到 RPC 探测B-1 任务全是 Nmap 参数题考的是你对扫描类型的理解。TCP 同步扫描用-sS不 ping 主机用-P0或-PnUDP 扫描用-sU滑动窗口扫描用-sWRPC 扫描用-sR。这些参数在 Nmap 官方文档里都有但比赛时要求你从扫描结果里数行取 Flag所以不仅要会扫还要会看输出。# TCP SYN 扫描半开扫描速度快不留完整连接 nmap -sS 172.16.1.100 # 跳过主机发现直接扫描目标禁 ping 时用 nmap -P0 172.16.1.100 # UDP 扫描指定端口 nmap -sU -p 53,111 172.16.1.100 # 滑动窗口扫描 nmap -sW 172.16.1.100 # RPC 扫描 nmap -sR 172.16.1.100-sS是默认的 SYN 扫描需要 root 权限-P0在旧版 Nmap 里用新版用-Pn-sU扫描 UDP 端口速度慢但能发现 DNS、SNMP 等服务-sW是滑动窗口扫描通过 TCP 窗口大小判断端口状态-sR是 RPC 扫描专门探测 RPC 服务。比赛时题目会问「从下往上数第 4 行的服务器信息」这要求你熟悉 Nmap 输出的行结构建议平时多扫几遍把输出格式记熟。3.2 Wireshark 流量分析从 pcapng 里挖出攻击链B-2 任务给一个attack.pcapng文件要求分析恶意 IP、扫描端口、获得的用户名密码、一句话木马密码、下载的文件名。这是典型的流量回溯题核心思路是按协议过滤、按对话追踪、按关键字搜索。# 用 tshark 命令行快速提取Wireshark 自带 # 查看所有 HTTP 请求 tshark -r attack.pcapng -Y http.request -T fields -e http.host -e http.request.uri # 过滤特定 IP 的流量 tshark -r attack.pcapng -Y ip.addr172.16.1.102 # 提取 FTP 登录信息 tshark -r attack.pcapng -Y ftp -T fields -e ftp.request.command -e ftp.request.arg # 导出 HTTP 对象在 Wireshark GUI 里文件 → 导出对象 → HTTP在 Wireshark GUI 里常用操作是统计 → 对话 → 按 IP 排序找流量最大的可疑 IP过滤tcp.port5007看木马通信追踪 TCP 流看明文传输的用户名密码搜索flag或password关键字。恶意 IP 通常是扫描行为最密集的那个端口列表从扫描包的目标端口去重排序得到用户名密码在 FTP 或 HTTP POST 里找一句话木马密码在 POST 请求体里找下载文件名在 HTTP 响应或 FTP 传输里找。提示pcapng 文件可能很大先用capinfos看包数量和时长再用显示过滤器缩小范围不要一上来就翻几千个包。4. 避坑与排查赛题环境里最容易翻车的五个点这一章单独列五个踩坑记录每条按现象、原因、解决写。这些都是我在复现这套题时真实遇到过的不是理论推演。现象一改完 PAM 后当前终端还能用新开终端登录失败。原因pam_tally2的计数是全局的你之前输错的密码已经被计入达到 deny 阈值后所有新会话都被锁。 解决用pam_tally2 --userroot --reset清零计数或者等 unlock_time 到期。改 PAM 前先确保有一个 root 会话保持连接。现象二iptables 规则配完当时生效重启后全没了。原因CentOS 7 默认用 firewalldiptables 规则没有持久化。 解决service iptables save或iptables-save /etc/sysconfig/iptables并确认iptables-services已安装并开机自启。如果环境用的是 firewalld要用firewall-cmd --permanent加规则再 reload。现象三MySQL 改 root 用户名后无法登录。原因UPDATE mysql.user改完没FLUSH PRIVILEGES或者改完忘了新用户名。 解决改之前先SELECT user,host FROM mysql.user;确认当前账户改完立即FLUSH PRIVILEGES用新用户名登录验证。如果已经锁死用--skip-grant-tables模式启动 MySQL 重置。现象四Nmap 扫描结果和题目要求的行数对不上。原因Nmap 版本不同输出格式有差异或者扫描参数少了-n不解析 DNS导致多出几行。 解决比赛时先跑一遍完整命令把输出复制到文本编辑器里数行从下往上数比从上往下数更稳定因为底部通常是开放的端口列表。不确定时加-v看详细输出。现象五Wireshark 过滤后找不到 Flag但题目说一定有。原因过滤条件太窄或者 Flag 在 TCP 流的分段里单包看不到。 解决先用ip.addr可疑IP看全部流量再追踪 TCP 流看完整会话。一句话木马密码通常在 POST 请求体的最后几个参数里用http.request.methodPOST过滤后逐个看。下载文件名在http.response的 Content-Disposition 头或 FTP 的 RETR 命令里。5. 进阶用法把赛题变成可复用的训练靶场这套题的价值不止于「做一遍对答案」。我一般会把它拆成三个层次的训练第一层是按题面复现操作确保每个命令都能跑通、每个截图都符合要求第二层是改参数做变体比如把 PAM 的 deny 改成 3、unlock_time 改成 120把 Nmap 扫描目标换成自己的虚拟机网段把 pcapng 里的恶意 IP 换成另一个第三层是脱离答案自己出题比如给定一个加固后的环境让你找出还有哪些没配到位的点。具体做法是搭一个本地靶场用 VMware 或 VirtualBox 开三台虚拟机一台 CentOS 7 做 A 模块加固目标一台 Windows Server 2008 做 Windows 侧任务一台 Kali 做 B 模块的渗透机。网络设成 Host-Only避免影响真实网络。然后按赛题任务清单逐项配置每配完一项就用另一台机器验证效果。训练层次操作内容验证方式复现按题面命令逐条执行截图与答案比对变体修改参数、IP、端口重新扫描/分析确认结果变化出题自己设计加固方案和取证场景同学或同事交叉测试进阶技巧方面Nmap 可以结合--script做漏洞探测比如nmap --scriptvuln 目标IPWireshark 可以用tshark做批量分析把多个 pcapng 的 HTTP 请求导出成 CSV 再筛选iptables 可以写脚本批量下发规则用iptables-restore一次性加载。这些在比赛里用不到但实际工作中是常用手段。从那以后我每次带学生练这套题都强制走一遍「配完即验证」的流程PAM 改完新开终端试登录iptables 配完重启服务再测MySQL 改完用新账户登一次Nmap 扫完把输出存文件再数行。这套习惯比记住某个参数值更重要。希望帮到你。本文还有配套的精品资源点击获取
返回列表