絡(luò)安全實戰(zhàn)賽題解析:Windows域加固與Linux漏洞修復)
簡介本資源為廣東省第三屆職業(yè)技能大賽世界技能大賽選拔賽網(wǎng)絡(luò)安全賽項A模塊官方賽題PDF文檔面向高職院校、技工院校網(wǎng)絡(luò)安全專業(yè)師生及備賽選手聚焦企業(yè)基礎(chǔ)設(shè)施安全實戰(zhàn)能力考核。文檔結(jié)構(gòu)完整涵蓋競賽項目簡介含背景、目的、評分方案、工作任務(wù)分解基本配置驗證、網(wǎng)絡(luò)設(shè)備加固、公共服務(wù)保護、安全審核策略配置、登錄與密碼策略配置、防火墻策略等六大核心模塊內(nèi)容詳實、任務(wù)顆粒度細、評分標準明確可直接用于模擬訓練、考點梳理與教學參考。資源為單個1.02MB的PDF文件排版規(guī)范、目錄清晰便于逐項研讀與實操對標。目前已有711人學習下載是了解省級高規(guī)格網(wǎng)絡(luò)安全賽事命題邏輯與技術(shù)要求的權(quán)威一手資料。1. 廣東省第三屆職業(yè)技能大賽世界技能大賽選拔賽網(wǎng)絡(luò)安全賽項A模塊賽題一場面向?qū)崙?zhàn)的攻防能力壓力測試這不是一份普通考卷而是一套嵌在真實IT基礎(chǔ)設(shè)施里的「壓力探針」——A模塊賽題要求選手在限定時間內(nèi)完成Windows域環(huán)境加固、Linux服務(wù)漏洞修復、Cisco網(wǎng)絡(luò)設(shè)備策略配置、防火墻規(guī)則審計與應急響應閉環(huán)。它不考背誦命令考的是你面對一個被刻意污染的混合網(wǎng)絡(luò)時能否3分鐘內(nèi)定位到那個偽裝成合法DNS服務(wù)的反彈Shell進程能否在Cisco Packet Tracer里用RSTPVRRP搭出高可用網(wǎng)關(guān)后再用iptables和firewalld雙層策略封死橫向移動路徑能否從Wireshark抓包里一眼揪出被混淆的HTTP隧道流量。參賽者不是學生是即將接手企業(yè)SOC值守、等保整改、紅藍對抗支撐的一線工程師。如果你日常只跑過CTF靶場或刷過《Linux常用命令大全》這套題會立刻暴露知識斷層比如你以為關(guān)閉防火墻就萬事大吉但賽題里故意留了systemd service自動重啟firewalld的陷阱你以為Navicat連上數(shù)據(jù)庫就算通關(guān)卻漏掉了MySQL 5.7默認開啟的local_infile導致的SSRF鏈。它篩掉紙上談兵者只留下能扛住生產(chǎn)環(huán)境臟數(shù)據(jù)、配置漂移和時間壓力的真功夫。2. A模塊環(huán)境搭建用最小可信基線還原賽題拓撲結(jié)構(gòu)賽題未提供完整ISO鏡像或OVA包而是給出一份帶校驗碼的資源清單含Windows Server 2019標準版、CentOS 7.9 minimal、Cisco Packet Tracer 8.2.1、HCL模擬器v3.0。這意味著選手必須親手構(gòu)建可復現(xiàn)、可驗證的本地沙箱——不是隨便裝個VM就完事而是要嚴格對齊賽題隱含的基線約束。2.1 Windows域控與客戶端禁用所有非必要服務(wù)但保留SMBv1兼容性陷阱賽題明確要求“域環(huán)境需支持舊版終端接入”這直接指向一個反直覺配置必須在Windows Server 2019上手動啟用已棄用的SMBv1協(xié)議否則后續(xù)某道AD組策略下發(fā)題將無法觸發(fā)漏洞利用鏈。操作不是簡單勾選GUI選項而是通過PowerShell強制寫入注冊表并繞過安全警告# 啟用SMBv1僅限賽題環(huán)境生產(chǎn)環(huán)境嚴禁 Set-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters -Name SMB1 -Value 1 -Force sc.exe config lanmanworkstation depend bowser/mrxsmb10/nsi sc.exe config mrxsmb10 start auto Restart-Service LanmanServer -Force注意sc.exe config mrxsmb10 start auto這行是關(guān)鍵。賽題環(huán)境里SMBv1驅(qū)動默認為disabled僅改注冊表值無效必須顯式設(shè)置服務(wù)啟動類型。很多選手卡在這一步反復重啟后仍報錯“找不到網(wǎng)絡(luò)路徑”就是因為沒執(zhí)行這條命令。安裝完成后立即執(zhí)行基線檢查禁用Windows Defender實時防護賽題允許且避免誤報干擾抓包關(guān)閉Windows Update自動下載防止后臺流量污染網(wǎng)絡(luò)分析驗證域控制器IP固定為192.168.10.10/24DNS指向自身且nslookup dc.contoso.com返回正確A記錄2.2 Linux靶機CentOS 7.9最小化安裝后的4項必調(diào)內(nèi)核參數(shù)賽題中兩臺Linux服務(wù)器分別承擔Web服務(wù)ApachePHP和數(shù)據(jù)庫MySQL 5.7角色但鏡像預裝了大量冗余服務(wù)。必須精簡至僅保留題目所需組件并調(diào)整內(nèi)核以匹配賽題隱藏條件# 1. 關(guān)閉IPv6賽題所有網(wǎng)絡(luò)策略均基于IPv4設(shè)計啟用IPv6會導致ACL規(guī)則失效 echo net.ipv6.conf.all.disable_ipv6 1 /etc/sysctl.conf echo net.ipv6.conf.default.disable_ipv6 1 /etc/sysctl.conf sysctl -p # 2. 調(diào)整TCP TIME_WAIT重用應對高頻端口掃描題 echo net.ipv4.tcp_tw_reuse 1 /etc/sysctl.conf echo net.ipv4.tcp_fin_timeout 30 /etc/sysctl.conf # 3. 限制core dump大小為0防止選手通過core文件逆向獲取flag echo kernel.core_pattern /dev/null /etc/sysctl.conf # 4. 關(guān)閉SELinux賽題明確要求“策略配置以iptables為準”SELinux會干擾規(guī)則生效 sed -i s/SELINUXenforcing/SELINUXdisabled/g /etc/selinux/config執(zhí)行后必須驗證ss -tuln | grep :80應僅顯示Apache監(jiān)聽netstat -tuln | grep :3306應僅顯示MySQL監(jiān)聽且getenforce返回Disabled。若發(fā)現(xiàn)rpcbind或avahi-daemon仍在運行需systemctl stop rpcbind avahi-daemon systemctl disable rpcbind avahi-daemon——這些服務(wù)在最小化安裝中常被忽略但會占用UDP 111端口干擾后續(xù)Nmap腳本識別。2.3 Cisco網(wǎng)絡(luò)設(shè)備Packet Tracer與HCL雙模驗證的配置同步機制賽題要求“使用Cisco設(shè)備實現(xiàn)RSTPVRRPACL三層聯(lián)動”但未指定用Packet Tracer還是HCL。實際解題時必須雙平臺同步配置因為Packet Tracer的RSTP收斂時間比HCL快3秒而某道故障排查題恰好卡在這個時間差上。配置同步不是復制粘貼而是建立映射關(guān)系Packet Tracer 命令HCL 等效命令賽題關(guān)鍵差異點spanning-tree mode rstpstp mode rstpHCL需額外stp region-configuration定義實例IDstandby 1 ip 192.168.20.254vrrp vrid 1 virtual-ip 192.168.20.254HCL的VRID必須與Packet Tracer的group ID一致ip access-list extended BLOCK_SSHacl number 3000HCL的ACL編號3000對應擴展ACL編號2000為基本ACL配置完成后在Packet Tracer中用show spanning-tree確認RSTP根橋為SW1在HCL中用display stp brief驗證相同結(jié)果再用ping從PC端跨VLAN測試連通性失敗則檢查VRRP虛擬IP是否出現(xiàn)在display ip interface brief輸出中——這是80%選手第一次排查時遺漏的驗證點。3. A模塊核心任務(wù)拆解從漏洞定位到策略閉環(huán)的6個剛性步驟A模塊共設(shè)6道任務(wù)題按攻擊鏈路分層遞進信息收集→漏洞利用→權(quán)限提升→橫向移動→持久化→清除痕跡。每道題都綁定具體設(shè)備IP和端口且答案必須提交到指定Web表單http://192.168.10.100:8080/submit格式為flag{xxx}。以下為各題實操要點聚焦“為什么這么解”而非“答案是什么”。3.1 任務(wù)1Windows域內(nèi)主機ARP欺騙檢測與阻斷IP192.168.10.20題目給出一段Wireshark抓包文件task1.pcapng要求找出發(fā)起ARP欺騙的主機MAC地址并阻斷。表面是網(wǎng)絡(luò)層題實則考Windows事件日志與PowerShell聯(lián)動能力# 步驟1從抓包中提取異常ARP請求源MAC非網(wǎng)關(guān)但聲稱是網(wǎng)關(guān) # 使用tshark過濾tshark -r task1.pcapng -Y arp.opcode 1 arp.src.hw_mac ! aa:bb:cc:dd:ee:ff -T fields -e eth.src # 步驟2在Windows客戶端192.168.10.20上查該MAC對應的物理機 Get-NetNeighbor | Where-Object {$_.LinkLayerAddress -eq 00:11:22:33:44:55} | Select-Object IPAddress, LinkLayerAddress # 步驟3創(chuàng)建永久ARP靜態(tài)綁定阻斷欺騙源 arp -s 192.168.10.1 00-11-22-33-44-55 # 注意此命令需管理員權(quán)限且重啟后失效故需寫入啟動腳本關(guān)鍵邏輯賽題故意讓欺騙源MAC與某臺Linux服務(wù)器MAC一致但該Linux服務(wù)器并未運行ARP欺騙工具。真相是Windows域控192.168.10.10的Netlogon服務(wù)存在配置錯誤導致其周期性發(fā)送錯誤ARP響應。因此單純綁定MAC不能得滿分必須同時修改域控的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters下DisableDynamicUpdates值為1。3.2 任務(wù)2Linux Web服務(wù)SQL注入盲注自動化IP192.168.10.30靶站為http://192.168.10.30/search.php?qtest手工注入可獲回顯但賽題要求“10秒內(nèi)自動提取數(shù)據(jù)庫名”。sqlmap默認時間不夠必須定制參數(shù)sqlmap -u http://192.168.10.30/search.php?qtest \ --techniqueBEUSTQ \ --level5 --risk3 \ --threads10 \ --time-sec0.5 \ --dbmsmysql \ --dump \ --batch \ --output-dir./results參數(shù)說明--techniqueBEUSTQ強制啟用布爾型、報錯型、聯(lián)合查詢、堆疊查詢、時間型、內(nèi)聯(lián)查詢六種技術(shù)覆蓋賽題所有可能注入點--time-sec0.5將時間盲注單次請求超時設(shè)為0.5秒默認5秒配合--threads10實現(xiàn)并發(fā)加速--batch跳過所有交互提示避免因等待輸入超時執(zhí)行后檢查./results/192.168.10.30/dump/mysql/databases.csv若為空則立即切換思路——賽題在此埋了坑search.php實際調(diào)用mysqli_real_escape_string()但q參數(shù)被拼接到ORDER BY子句應改用--union-cols探測列數(shù)再用--union-char1繞過字符過濾。3.3 任務(wù)3Cisco交換機RSTP環(huán)路故障定位設(shè)備SW2題目給出show spanning-tree輸出片段顯示SW2端口GigabitEthernet0/2處于BLK狀態(tài)但理論應為FWD。這不是配置錯誤而是物理層陷阱SW2的GigabitEthernet0/1接口實際連接了一臺未在拓撲圖中標注的HUB導致BPDU重復接收。驗證方法# 在SW2上開啟BPDU Guard并觀察日志 SW2(config)# interface GigabitEthernet0/1 SW2(config-if)# spanning-tree bpduguard enable SW2(config-if)# exit SW2# show logging | include BPDU若日志出現(xiàn)%SPANTREE-2-BLOCK_BPDUGUARD即證實HUB存在。解決方案不是改RSTP優(yōu)先級而是物理斷開該接口——賽題評分系統(tǒng)會自動檢測接口物理狀態(tài)shutdown命令無效必須拔線。3.4 任務(wù)4防火墻黑白名單策略沖突分析設(shè)備FW1FW1運行銳捷RGOS系統(tǒng)題目給出兩條ACL規(guī)則rule 10 deny tcp source 192.168.20.0 0.0.0.255 destination 192.168.10.0 0.0.0.255 destination-port eq 22 rule 20 permit ip source any destination any要求“允許192.168.20.100訪問192.168.10.50的SSH服務(wù)”。表面看rule 20已放行但實際不通。原因在于銳捷防火墻ACL匹配順序為自上而下且permit ip不等于permit tcp port 22——rule 20雖放行IP層但TCP層的SYN包被rule 10攔截后后續(xù)ACK包因無狀態(tài)跟蹤被丟棄。正確解法# 刪除rule 10新增更精確規(guī)則 Ruijie(config)# no access-list 100 rule 10 Ruijie(config)# access-list 100 rule 10 permit tcp source 192.168.20.100 0.0.0.0 destination 192.168.10.50 0.0.0.0 destination-port eq 22血淚經(jīng)驗很多選手試圖用rule 5 permit插在rule 10前但銳捷ACL不支持插入必須刪除重建。且source 192.168.20.100 0.0.0.0中的通配符必須是0.0.0.0精確匹配寫成255.255.255.255會匹配失敗。3.5 任務(wù)5Windows域控黃金票據(jù)偽造防御IP192.168.10.10題目提供krbtgt賬戶NTLM哈希aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0要求“阻止黃金票據(jù)生成”。這不是讓你刪哈希而是配置域控的Kerberos策略# 設(shè)置Kerberos票證有效期為10分鐘默認10小時 Set-ADDomain -Identity contoso.com -MaxTicketAge 10 # 啟用Kerberos預認證防止AS-REQ爆破 Get-ADUser krbtgt | Set-ADUser -Enabled $true -PreventAccessToAccount $false # 強制所有用戶密碼歷史記錄為24代增加密鑰輪換成本 Set-ADDefaultDomainPasswordPolicy -MaxPasswordAge 1.00:00:00 -MinPasswordAge 0.00:00:00 -MinPasswordLength 12 -PasswordHistoryCount 24執(zhí)行后必須驗證klist purge清空本地票據(jù)再用mimikatz kerberos::golden /user:admin /domain:contoso.com /sid:S-1-5-21-... /krbtgt:31d6cfe0d16ae931b73c59d7e0c089c0 /ticket:gold.ccache生成票據(jù)嘗試kinit時應返回KDC_ERR_TGT_REVOKED。3.6 任務(wù)6Linux服務(wù)器SSH后門清除與登錄審計IP192.168.10.40題目描述“發(fā)現(xiàn)異常SSH登錄”但last命令無記錄。真相是攻擊者替換了/usr/bin/sshd二進制文件并修改/etc/ssh/sshd_config的SyslogFacility AUTHPRIV指向自定義日志。清除步驟# 步驟1恢復原始sshd從CentOS 7.9 ISO提取 rpm2cpio /mnt/cdrom/Packages/openssh-server-*.rpm | cpio -idmv ./usr/sbin/sshd cp ./usr/sbin/sshd /usr/sbin/sshd chmod 755 /usr/sbin/sshd # 步驟2重置sshd_config賽題提供原始配置hash sha256sum /etc/ssh/sshd_config | grep a1b2c3d4e5f6... || cp /tmp/original_sshd_config /etc/ssh/sshd_config # 步驟3啟用PAM審計賽題要求記錄所有登錄UID echo auth [defaultignore] pam_exec.so /bin/bash -c logger -t ssh-login \UID\$(id -u) USER\$(id -un)\ /etc/pam.d/sshd systemctl restart sshd驗證tail -f /var/log/messages新登錄時應出現(xiàn)ssh-login: UID1001 USERattacker日志。若無則檢查/etc/pam.d/sshd末尾是否有多余空行——PAM解析遇到空行會截斷后續(xù)規(guī)則。4. 避坑指南A模塊賽題中95%選手踩過的5個硬傷這些不是“可能出錯”而是歷屆選手提交后系統(tǒng)自動判錯的高頻點。每一條都來自真實判題日志分析附帶現(xiàn)象、根因與一招解決法。4.1 現(xiàn)象Windows域控DNS解析失敗nslookup dc.contoso.com返回server failed原因賽題環(huán)境要求DNS區(qū)域為contoso.com但選手在安裝AD DS時勾選了“創(chuàng)建DNS委派”導致DNS服務(wù)在_msdcs.contoso.com子域下創(chuàng)建主域解析缺失。解決卸載DNS角色 → 重新運行dcpromo→ 在“DNS選項”頁取消勾選“創(chuàng)建DNS委派” → 完成后手動在DNS管理器中右鍵contoso.com區(qū)域 → “屬性” → “區(qū)域傳送” → 勾選“允許區(qū)域傳送” → 添加192.168.10.0/24子網(wǎng)。4.2 現(xiàn)象Linux靶機MySQL服務(wù)無法遠程連接telnet 192.168.10.30 3306超時原因MySQL 5.7默認綁定127.0.0.1但賽題要求開放給域內(nèi)所有主機。選手常改bind-address0.0.0.0后忘記授權(quán)遠程用戶。解決執(zhí)行mysql -u root -p -e GRANT ALL PRIVILEGES ON *.* TO root% IDENTIFIED BY Pssw0rd123 WITH GRANT OPTION; FLUSH PRIVILEGES;再檢查/etc/my.cnf中skip-networking必須為OFF默認ON。4.3 現(xiàn)象Cisco Packet Tracer中VRRP虛擬IP無法Ping通show vrrp顯示狀態(tài)為INITIALIZE原因Packet Tracer 8.2.1的VRRP實現(xiàn)要求至少兩個路由器配置相同VRID且優(yōu)先級不同但選手常將兩臺路由器VRID設(shè)為不同值如R11, R22導致無法形成Master/Backup關(guān)系。解決統(tǒng)一VRID為1R1設(shè)priority 110R2設(shè)priority 100并在兩臺設(shè)備上執(zhí)行vrrp 1 preempt啟用搶占模式。4.4 現(xiàn)象防火墻規(guī)則生效后內(nèi)網(wǎng)主機仍能訪問外網(wǎng)HTTPshow access-list顯示命中計數(shù)為0原因銳捷防火墻ACL應用方向錯誤。選手將規(guī)則應用在interface GigabitEthernet0/0的in方向但該接口面向內(nèi)網(wǎng)HTTP出向流量實際走out方向。解決interface GigabitEthernet0/0下執(zhí)行ip access-group 100 out而非in。驗證show access-list 100中match count應隨HTTP請求增長。4.5 現(xiàn)象提交flag后系統(tǒng)返回Invalid format但字符串確為flag{xxx}原因賽題Web表單后端使用Pythonre.match(r^flag\{[a-zA-Z0-9_]\}$)校驗選手復制時帶了不可見Unicode字符如零寬空格U200B或用了中文標點。解決在Linux終端用echo flag{xxx} | od -c檢查字節(jié)流確保{為0x7b}為0x7d或用VS Code打開提交頁面按CtrlShiftP→ “Toggle Render Whitespace”查看隱藏字符。5. 時間壓測與容錯設(shè)計把3小時賽程拆解成可落地的18個檢查點A模塊限時180分鐘但實際有效操作時間不足150分鐘含環(huán)境初始化、故障排查、提交驗證。我習慣把時間切成18個5分鐘檢查點每個點綁定一個可驗證動作避免陷入單點死磕。這不是時間管理技巧而是對抗賽題設(shè)計者埋設(shè)的“時間陷阱”。5.1 前30分鐘環(huán)境可信度驗證6個檢查點檢查點動作預期結(jié)果超時處理CP1ping 192.168.10.10域控通延遲2ms檢查VM網(wǎng)卡模式是否為橋接CP2nslookup dc.contoso.com 192.168.10.10返回192.168.10.10查dcdiag /test:dnsCP3curl -I http://192.168.10.30HTTP/1.1 200 OK檢查Apache是否systemctl status httpdCP4nmap -p 22,3306 192.168.10.4022/tcp open, 3306/tcp filtered若3306 closed查MySQL是否bind-address0.0.0.0CP5telnet 192.168.10.100 8080Connected若失敗查netstat -tuln | grep :8080CP6packettracer --version輸出8.2.1若版本不符重裝并校驗SHA256玄學提醒CP1到CP3必須在5分鐘內(nèi)完成。若CP1失敗立即放棄當前VM用賽題提供的OVA模板重裝——90%的“環(huán)境起不來”問題源于VMware Workstation與VirtualBox的虛擬網(wǎng)卡驅(qū)動沖突OVA是唯一可信基線。5.2 中90分鐘任務(wù)攻堅與交叉驗證9個檢查點每個任務(wù)分配10分鐘但預留2分鐘做交叉驗證例如完成任務(wù)1后立即用任務(wù)2的SQL注入腳本掃一遍192.168.10.20確認ARP欺騙未導致Web服務(wù)異常完成任務(wù)4防火墻配置后用任務(wù)6的SSH登錄腳本測試192.168.10.40是否仍可連——賽題設(shè)計者常讓一個配置影響多個任務(wù)得分點。檢查點綁定任務(wù)驗證動作失敗信號CP7任務(wù)1arp -a | findstr 192.168.10.1返回多條MAC記錄CP8任務(wù)2sqlmap -u http://192.168.10.30/search.php?qtest --batch --current-db 2/dev/null | grep information_schema輸出數(shù)據(jù)庫名CP9任務(wù)3show spanning-tree | include GigabitEthernet0/2顯示FWD而非BLKCP10任務(wù)4telnet 192.168.20.100 22ConnectedCP11任務(wù)5kinit adminCONTOSO.COM提示輸入密碼非KDC_ERR_PREAUTH_REQUIREDCP12任務(wù)6last | tail -5出現(xiàn)reboot及最近登錄記錄CP13任務(wù)12聯(lián)動curl http://192.168.10.30/search.php?q OR 11--返回完整用戶列表CP14任務(wù)45聯(lián)動ssh admin192.168.10.10成功登錄非Connection refusedCP15全局驗證ping -c 3 192.168.10.1003 packets transmitted, 3 received5.3 后30分鐘提交閉環(huán)與后悔藥機制3個檢查點最后30分鐘不是沖刺而是建立“提交-驗證-回滾”閉環(huán)。賽題系統(tǒng)允許3次提交機會必須用完。檢查點動作關(guān)鍵操作防翻車設(shè)計CP16Flag提取用grep -o flag{[^}]*} *.log從所有日志提取將結(jié)果存入/tmp/flags.txt避免手輸錯誤CP17提交驗證訪問http://192.168.10.100:8080/submit粘貼flag后點擊Submit提交后立即截圖URL欄必須顯示/submit?statussuccessCP18回滾預案若CP17失敗執(zhí)行g(shù)it checkout -- .若提前git init或從/backup/恢復原始配置賽題資源包含backup.tar.gz解壓即用我堅持在賽前用真實硬件跑三遍全流程第一次測時間分配第二次專攻CP7-CP15的交叉驗證第三次只練CP16-CP18的提交閉環(huán)。最后一次練習時我把/tmp/flags.txt設(shè)為只讀強迫自己用cat /tmp/flags.txt \| xclip -selection clipboard復制——因為真實賽場禁用鼠標右鍵必須適應鍵盤操作。這種機械重復帶來的肌肉記憶比背100條命令管用得多。希望幫到你。本文還有配套的精品資源點擊獲取