支持工程師秋招筆試復盤:網(wǎng)絡(luò)基礎(chǔ)與安全場景題解析)
2020年秋招我投了奇安信的技術(shù)支持工程師崗位。筆試那天是線上答題限時90分鐘整套題做下來最大的感受是這份卷子不是在考你會不會寫代碼也不是在考你背了多少漏洞編號而是在考察一個人作為安全廠商技術(shù)支持的基本盤——網(wǎng)絡(luò)基礎(chǔ)牢不牢、系統(tǒng)排查熟不熟、安全原理透不透。這篇文章我結(jié)合當年的第三套秋招試卷把崗位認知、題型結(jié)構(gòu)、核心考點、場景題解題思路和備考踩坑點完整復盤一遍。這套試卷適合誰看如果你準備投的是安全廠商的售后、技術(shù)支持、安全服務(wù)這一類崗位或者剛?cè)胄芯W(wǎng)絡(luò)安全、想找一份對新人友好的工作這份復盤匹配度會很高如果你平時偏研發(fā)、偏滲透測試更關(guān)心漏洞利用層面的細節(jié)那這份復盤里對應(yīng)部分的占比就相對有限。下面直接進入正題。1. 崗位摸底技術(shù)支持工程師到底考什么1.1 先搞清楚這個崗位是干什么的很多人在投簡歷之前沒有認真想過技術(shù)支持工程師和研發(fā)工程師安全服務(wù)工程師之間的區(qū)別結(jié)果拿到筆試卷子就懵了。安全廠商的技術(shù)支持工程師核心工作用一句話概括幫客戶把部署在公司里的安全產(chǎn)品或系統(tǒng)用起來、用得好出了問題能快速定位并解決。日常面對的事情包括安全設(shè)備的開局部署、策略配置和調(diào)優(yōu)客戶報障后的遠程或現(xiàn)場排查告警日志的初步研判安全事件的應(yīng)急配合甚至還要寫排障報告和操作手冊。這意味著這個崗位要求的是廣度優(yōu)先、深度夠用的知識結(jié)構(gòu)。你可以不會寫復雜的Java代碼但你要能看懂日志里的時間戳含義你不一定親手挖過漏洞但你要能判斷一條訪問記錄是不是存在的SQL注入特征你不一定背得出每個端口號但遇到服務(wù)起不來你得知道先看端口被占用還是進程沒啟動。2020年這套筆試卷子幾乎每個板塊都在圍繞這種能力要求出題。1.2 從考題反推崗位能力模型筆試考的不只是知識點更是一份崗位能力畫像。復盤完這套卷子我把它的考察方向大致拆成了五個模塊占比估算如下能力模塊估算占比典型考察方式網(wǎng)絡(luò)基礎(chǔ)30%協(xié)議分層、數(shù)據(jù)封裝、常見狀態(tài)碼與端口系統(tǒng)與運維25%Linux命令、Windows事件日志、進程與資源排查攻擊原理與日志特征25%SQL注入/XSS/文件上傳的識別、日志研判場景題安全產(chǎn)品原理10%防火墻/WAF/IDS等產(chǎn)品的部署方式與作用邊界邏輯表達與溝通10%場景題里排查思路的表述是否結(jié)構(gòu)化這個比例不是官方公開數(shù)據(jù)是我從考后回憶和同批次同學交流中歸納出來的但整體誤差不會太大。一個很明顯的特點是純安全攻防的比例其實沒有想象中高網(wǎng)絡(luò)和系統(tǒng)的基礎(chǔ)知識加起來占了一半以上。原因也很直白技術(shù)支持一天到晚在排查問題排查問題的工具庫里最常用到的就是網(wǎng)絡(luò)命令和系統(tǒng)命令而不是攻擊工具。1.3 2020這套試卷的整體氣質(zhì)試卷3這個名字說明當年秋招不是只有一套筆試題而是有多套平行卷子目的主要是防止同場筆試作弊。這套卷子的整體氣質(zhì)是廣而不深、重場景、重流程。它不會讓你去算一個非常復雜的子網(wǎng)劃分但會問你回環(huán)地址是哪個這種基礎(chǔ)事實它不會讓你寫完整的滲透測試報告但會讓你看一段訪問日志判斷哪些請求存在異常。這個出題思路其實很合理。作為校招候選人都是應(yīng)屆生要求大家有深厚攻防經(jīng)驗不現(xiàn)實作為技術(shù)支持崗又必須確保持續(xù)學習的潛力。于是一套合格的卷子就在基礎(chǔ)扎實、思路清晰、表達規(guī)范這三個維度上做文章。我覺得這是準備任何安全廠商技術(shù)支持崗筆試都可以參考的通用方向。2. 卷面結(jié)構(gòu)復盤題型分布與時間分配2.1 題型構(gòu)成與分值占比我的記憶里這套卷子大致由單選多選判斷場景簡答四類題組成??陀^題數(shù)量多但分值分散場景題數(shù)量少但分值集中為了方便復盤我按大家常見的形式做了個近似還原題型題量分值說明單選題20題每題2分覆蓋網(wǎng)絡(luò)、系統(tǒng)、安全基礎(chǔ)多選題10題每題3分通常漏選得部分分錯選不得分判斷題10題每題1分考細節(jié)概念容易設(shè)坑場景簡答題4題每題10分網(wǎng)絡(luò)排障、日志研判、產(chǎn)品方案、應(yīng)急思路總分在題庫里按百分制折算。客觀題合計80分場景題40分折算成百分制后場景題權(quán)重其實相當高。如果你只刷知識題、不練表達題到場景題這里很容易寫出一段看起來沒毛病但抓不住給分點的答案。2.2 時間分配策略如果卷面總時長是90分鐘我建議這樣分配前40分鐘做完單選、判斷、多選。多選題寧可少選不要為了湊選項去選一個不確定的答案判斷題看到絕對化的表述比如只要有防火墻就一定能阻止攻擊基本可以判斷為錯這類題考的就是邊界概念。中間40分鐘留給4道場景題。每道題先花1到2分鐘把題干里的關(guān)鍵信息圈出來比如異常IP、時間窗口、錯誤碼、日志字段然后按先判斷、再定位、后建議的順序組織答案。不要一上來就寫應(yīng)該是××問題而是把排查過程寫清楚因為判分看的是思路和步驟不是猜結(jié)論的運氣。最后留10分鐘檢查客觀題尤其要看多選有沒有漏選、答案有沒有填錯位。線上筆試到點會自動收卷很多同學栽在時間到了但場景題還沒寫完所以前面客觀題必須控制住手速。2.3 考點覆蓋面解讀整套試卷的考點覆蓋可以歸納成一張高頻清單TCP三次握手與四次揮手的過程和異常狀態(tài)HTTP常見狀態(tài)碼的含義DNS解析流程中遞歸查詢與迭代查詢的區(qū)別Linux常用運維命令的用法文件權(quán)限對應(yīng)的數(shù)字含義Windows事件日志中登錄失敗、賬號創(chuàng)建等常見事件ID對稱加密與非對稱加密的代表算法常見Web攻擊的流量特征常見安全產(chǎn)品的部署位置應(yīng)急響應(yīng)的基本步驟。這張清單其實就是技術(shù)支持崗筆試的通用復習地圖。它沒有冷門偏題但如果你基本功不扎實分數(shù)就會非常飄。我后來在準備其他廠商筆試時也沿用了這張表幾乎不用怎么大改。3. 核心知識板塊逐一拆解3.1 網(wǎng)絡(luò)基礎(chǔ)TCP/IP與OSI的考法網(wǎng)絡(luò)基礎(chǔ)在卷子里占比最大也是最容易靠短期突擊拿分的板塊。我印象很深的一道題給出一個場景同一局域網(wǎng)內(nèi)A主機可以ping通網(wǎng)關(guān)但瀏覽器無法訪問內(nèi)網(wǎng)某服務(wù)器的Web頁面可能的原因是什么四個選項分別是防火墻規(guī)則攔截了80端口、目標服務(wù)器Web服務(wù)進程未啟動、A主機DNS配置錯誤、目標服務(wù)器磁盤已滿。如果對網(wǎng)絡(luò)分層足夠熟這道題不容易錯ping網(wǎng)關(guān)通說明鏈路層和網(wǎng)絡(luò)層基本沒問題瀏覽器訪問Web頁面涉及傳輸層和應(yīng)用層所以優(yōu)先懷疑目標是服務(wù)器的80端口被防火墻攔或Web服務(wù)進程沒起。DNS配置錯誤雖然是常見干擾項但如果客戶端用IP直連訪問DNS就不是首選因素。這個題考的不只是知識點更是分層定位的思維。OSI七層模型看起來是課本上的陳舊概念但真正到了排障現(xiàn)場它就是你的第一把標尺??吹骄W(wǎng)頁打不開大腦里應(yīng)該立刻出現(xiàn)一條鏈路物理層通不通、能不能ping通網(wǎng)關(guān)、域名能不能解析、端口能不能連、服務(wù)進程在不在。每一步對應(yīng)一個檢查命令這樣就能把說不清打不開變成打不開到底卡在哪一層。3.2 系統(tǒng)與運維Linux命令、Windows日志技術(shù)支持要在一線處理服務(wù)器類問題Linux命令幾乎是必考。卷子里判斷和選擇都出現(xiàn)了top、ps、netstat、grep這些高頻命令的基本用法比如top輸出中l(wèi)oad average的含義、ps -ef和ps aux的差異、netstat -anp看到LISTEN狀態(tài)時對應(yīng)的是哪個進程。如果你平時只在課程設(shè)計里用過Linux建議把常用命令練到能直接寫出來tail -f /var/log/messages、grep -i error、find / -name *.php、df -h、free -m、ss -lntp。Windows相關(guān)的題少一些但很實際比如登錄失敗的賬戶在事件查看器里對應(yīng)的事件ID答案是4625再比如如何查看本機開放的端口和對應(yīng)進程用netstat -ano配合tasklist就能串起來。這類題在檢驗?zāi)闫綍r有沒有真正維護過服務(wù)器而不是紙上談兵。我補充一個很多人容易忽略的點技術(shù)支持不需要會寫花哨的腳本但一定要熟悉組合命令的用法。例如排查CPU飆高標準動作是先用top看哪個進程占用高再用ps確認這個進程到底是什么必要時再看它的行為。筆試不會讓你現(xiàn)場敲命令但場景題會問CPU負載高時第一步應(yīng)該做什么如果你回答的順序不對說明你還沒有形成真實的運維手感。3.3 安全攻擊原理從漏洞到識別特征安全知識部分考得很識別向就是給一段特征讓你判斷是什么攻擊。SQL注入的典型特征是URL參數(shù)或POST請求體里出現(xiàn)單引號、and 11、union select這類字符串XSS的特征是請求里帶script標簽或編碼后的事件屬性CSRF題常結(jié)合業(yè)務(wù)場景問為什么僅僅瀏覽了一個第三方網(wǎng)站我的賬號就發(fā)起了轉(zhuǎn)賬交易文件上傳題則會關(guān)注上傳接口是否做了類型校驗、文件是否落到Web目錄。不要把這里的考點想得太深它考的是你認不認識它而不是你會不會利用它。理解攻擊原理是為了在日志里認出攻擊、在客戶問這個告警是不是誤報時能給出判斷。所以復習Web安全時重點不是去記一堆測試語句而是看三條線攻擊發(fā)生的條件、攻擊在流量和日志中的樣子、防御方應(yīng)該關(guān)注哪些字段。以SQL注入為例它在日志里往往不是一條孤立記錄而是成組出現(xiàn)先有試探性請求比如參數(shù)里帶一個單引號然后是and 11的顯式探測之后可能繼續(xù)嘗試讀取敏感信息。研判時要多看幾組請求的上下文不能憑一條記錄就下結(jié)論。3.4 安全產(chǎn)品與防護策略安全產(chǎn)品題在試卷里占比不高但一定會出現(xiàn)而且經(jīng)常結(jié)合場景。比如WAF和防火墻的區(qū)別是什么旁路部署的監(jiān)測設(shè)備能否阻斷攻擊流量。我的建議是至少把幾類產(chǎn)品的定位和部署方式搞清楚防火墻工作在網(wǎng)絡(luò)層和傳輸層基于五元組做包過濾和狀態(tài)檢測主要做訪問控制WAF工作在應(yīng)用層針對Web流量做深度檢測重點識別SQL注入、XSS這類Web攻擊IDS是旁路監(jiān)聽發(fā)現(xiàn)攻擊后告警但不能阻止IPS是串聯(lián)部署可以直接阻斷EDR部署在端點側(cè)關(guān)注進程行為、文件變更能發(fā)現(xiàn)邊界設(shè)備看不到的問題堡壘機做運維操作的統(tǒng)一入口和審計。場景題比較偏愛某客戶在機房核心交換機旁路部署了入侵檢測設(shè)備部署后發(fā)現(xiàn)攻擊仍在繼續(xù)為什么這類問題答案一句話點破旁路設(shè)備只能看流量、發(fā)告警無法在流量路徑上實施阻斷要攔截必須讓設(shè)備串聯(lián)進網(wǎng)絡(luò)路徑或者聯(lián)動防火墻下發(fā)封禁規(guī)則。這類知識看書容易懂但在實際項目中特別容易出現(xiàn)客戶以為裝了設(shè)備就萬事大吉的誤解技術(shù)支持的價值恰恰在于把各類產(chǎn)品的能力邊界講清楚。3.5 日志分析與應(yīng)急響應(yīng)場景題日志分析是場景簡答題的重頭戲考法通常是給一段Web訪問日志或系統(tǒng)安全日志問你從這些日志中能得出什么結(jié)論下一步怎么辦。日志類題目有幾個必須練的觀察點時間窗口、源IP的重復與分散、URL路徑的異常、狀態(tài)碼的變化、User-Agent是否異常、請求頻率是否呈現(xiàn)自動化特征、響應(yīng)包大小是否異常。應(yīng)急響應(yīng)場景題的答題框架也可以固定下來先隔離相關(guān)主機或封禁異常IP再收集樣本和日志然后分析攻擊路徑和影響范圍最后給出加固建議和后續(xù)監(jiān)測方案。這四步幾乎是安全廠商筆試和面試通用的標準動作。我第一次做這類題時容易跳步直接寫建議封IP后來才意識到漏掉了中間的取證分析環(huán)節(jié)而那恰好是判分時最看重的部分。4. 場景題實操復盤三道典型的題目與解題路徑4.1 場景題A客戶反饋網(wǎng)站訪問異常如何定位題目大意是甲方運維反饋公司官網(wǎng)近兩天經(jīng)常出現(xiàn)訪問卡頓偶爾無法打開希望你給出排查思路。這道題沒有標準答案考的是條理。我的答題思路分四層。第一層區(qū)分問題范圍先讓客戶確認是外網(wǎng)訪問有問題還是內(nèi)網(wǎng)訪問也有問題是所有頁面都慢還是個別的接口慢這一步?jīng)Q定后續(xù)排查方向。第二層驗證基礎(chǔ)連通性用ping和traceroute看網(wǎng)絡(luò)路徑是否正常用nslookup驗證域名解析是否指向預期地址再通過端口連通性測試確認80或443端口是否可達。第三層檢查服務(wù)器自身狀態(tài)top看CPU負載free -m看內(nèi)存df -h看磁盤是否寫滿再用ss -lntp看Web服務(wù)端口是否在監(jiān)聽。第四層看業(yè)務(wù)程序和安全設(shè)備檢查Web中間件訪問日志和錯誤日志確認是不是被刷流量同時看安全設(shè)備的告警里有沒有異常掃描行為。如果讓我在試卷上補充一句我會加上排查的同時保留現(xiàn)場證據(jù)不要急著重啟服務(wù)。這個細節(jié)容易被忽略但在真實處理里非常重要——一旦懷疑是被攻擊第一反應(yīng)應(yīng)該是保留現(xiàn)場而不是先恢復因為重啟可能把內(nèi)存里的可疑進程和臨時文件全部清掉后續(xù)再做溯源就難了。4.2 場景題BWeb訪問日志中發(fā)現(xiàn)了什么下面這段日志是這類題里很典型的記錄字段做了簡化處理[2020-10-14 10:22:31] 203.0.113.7 GET /index.php?id1%27 HTTP/1.1 200 1245 [2020-10-14 10:22:52] 203.0.113.7 GET /index.php?id1%20and%2011 HTTP/1.1 200 1248 [2020-10-14 10:23:10] 203.0.113.7 GET /index.php?id2%20and%2011 HTTP/1.1 200 1247 [2020-10-14 10:23:44] 203.0.113.7 POST /upload.php HTTP/1.1 200 2450 [2020-10-14 10:24:02] 203.0.113.8 GET /20201014.php HTTP/1.1 404 0研判時可以先分三步。第一步看行為連續(xù)性同一個IP在幾十秒內(nèi)從帶單引號的探針請求過渡到and 11的條件判斷這是非常標準的SQL注入探測節(jié)奏。第二步看動作轉(zhuǎn)移攻擊者在注入探測之后轉(zhuǎn)向POST /upload.php上傳文件上傳成功后緊接著另一個IP訪問了帶時間戳命名的php文件——這個文件路徑看起來像手工生成的隨機名字極有可能是上傳落地的后門。第三步看結(jié)論這組日志大概率是一次有目標的Web攻擊嘗試需要立即封禁相關(guān)源IP排查上傳目錄下所有新增文件確認是否存在可執(zhí)行腳本并補上上傳接口的類型校驗和防護規(guī)則。在筆試卷子上拿到這類日志千萬別直接寫這是攻擊就完事要把研判依據(jù)寫出來。判分老師想看到的是你會不會看日志而不是你猜結(jié)論的能力。這里的關(guān)鍵詞是時間關(guān)聯(lián)和行為鏈寫清楚這兩點分數(shù)基本就穩(wěn)了。4.3 場景題C安全產(chǎn)品部署位置與聯(lián)動方式這道題考的是產(chǎn)品知識的實際應(yīng)用。題目大意是客戶已有出口防火墻近期頻繁遭受Web攻擊騷擾希望在不動現(xiàn)有網(wǎng)絡(luò)結(jié)構(gòu)的情況下增強防護問你會給出什么建議。我的答題方向是先區(qū)分攻擊類型。如果是針對Web業(yè)務(wù)的漏洞利用和惡意請求優(yōu)先考慮在Web服務(wù)前端加WAF或者采用云WAF做流量清洗不需要改動服務(wù)器本身。如果是大流量洪水型攻擊WAF的作用有限重點要考慮流量清洗能力和帶寬資源的調(diào)度。如果客戶希望的是能被發(fā)現(xiàn)部署IDS做旁路監(jiān)測就夠如果希望能攔截下來那必須串聯(lián)部署或與防火墻做策略聯(lián)動。這個場景最想考察的其實是邊界感知道哪類設(shè)備能做什么、不能做什么并且能把方案落到客戶的網(wǎng)絡(luò)拓撲里去講。技術(shù)支持崗位的過人之處很大程度上就是把技術(shù)原理翻譯成客戶聽得懂、能執(zhí)行的方案這也是筆試之外的隱藏加分項。5. 常見問題與備考避坑清單5.1 備考中常見的幾類問題從我周圍參加這批筆試的同學反饋來看最常見的問題有三類。第一類是只刷題不補體系。為了應(yīng)付秋招很多人選擇直接刷題庫選擇題刷得滾瓜爛熟但遇到場景題就卡殼。原因很直接——場景題沒有標準答案考察的是分析框架。刷題只能覆蓋知識點覆蓋不了分析框架所以備考一定要留出時間做三步練習看到問題先自己說思路再對照參考答案補細節(jié)最后把同類題的通用步驟總結(jié)成模板。第二類是重攻擊利用、輕日志特征。有些同學對漏洞原理非常熟甚至能畫出完整的利用流程但真到日志分析題時認不出攻擊特征。技術(shù)支持崗位的日常不是去攻擊系統(tǒng)而是去識別攻擊、理解告警流量和日志才是工作的第一現(xiàn)場。復習時多建立特征到攻擊類型的對應(yīng)關(guān)系比多背幾條payload更實用。第三類是表達沒有邏輯。客觀題還好場景題如果想到哪寫到哪即使思路里藏著正確答案也可能拿不到分。答題時建議強制使用首先、其次、最后或短期處理、長期加固之類的結(jié)構(gòu)詞把排查步驟編號化閱卷體驗會好很多這也是真實工作里寫報告的基本功。5.2 實戰(zhàn)避坑經(jīng)驗表坑點現(xiàn)象應(yīng)對建議多選題漏選為了求穩(wěn)每道題只選1個選項多選通常按漏選給部分分但明顯確定的第二選項要敢選只選一個等于放棄了大部分分值場景題直接給結(jié)論寫了這是DDoS攻擊卻沒有推導過程先寫依據(jù)、再寫結(jié)論把看到什么特征、說明什么問題寫全時間分配失衡客觀題花掉60分鐘場景題只能草草作答平時按90分鐘整套卡表模擬形成肌肉記憶判斷題忽略絕對表述出現(xiàn)一定完全能夠等詞仍然選對絕對化表述基本都是錯的優(yōu)先找反例不回顧基礎(chǔ)概念端口、狀態(tài)碼、協(xié)議分層概念模糊考前一周集中背高頻概念表多刷基礎(chǔ)類選擇題5.3 復習路線建議按優(yōu)先級排序如果距離筆試還有時間我建議按這個順序投入精力。先把計算機網(wǎng)絡(luò)基礎(chǔ)過一遍重點放在TCP/IP、HTTP、DNS這三個和排障直接相關(guān)的部分要能默寫出一次完整訪問從輸入URL到頁面顯示經(jīng)歷了哪些環(huán)節(jié)。第二步是Linux系統(tǒng)命令練到能不用思考地完成查進程、查端口、查資源、找日志這四個動作。第三步是Web攻擊原理和對應(yīng)日志特征把SQL注入、XSS、CSRF、文件上傳這四類最常見的攻擊特征整理成一張對照表。第四步是安全產(chǎn)品原理弄懂防火墻、WAF、IDS/IPS、EDR、堡壘機分別在什么位置解決什么問題。第五步才是模擬題和真題訓練通過做題反查知識漏洞。時間緊張的情況下優(yōu)先保證前三步因為這三塊占了卷面六成以上的分數(shù)。安全行業(yè)有句話叫基礎(chǔ)不牢地動山搖放到筆試里也一樣適用?;剡^頭來看2020年這套技術(shù)支持工程師的第三套試卷對我后來實際工作的影響比想象中要大。它教會我的不是某條命令、某個端口號而是遇到問題先不要急著下結(jié)論先把問題拆成網(wǎng)絡(luò)、系統(tǒng)、應(yīng)用、安全四個盒子逐個打開看。這個習慣后來我在處理真實客戶工單時反復用到幾乎每次都靈。如果你正在準備類似的筆試我想送你一句話筆試篩選的不是背過多少資料的人而是遇事能一步步定位、能用大白話把方案講清楚的人。這一點從校招筆試到真實工作從來沒變過。