算機(jī)網(wǎng)絡(luò)與信息安全考點(diǎn)解析:從OSI到子網(wǎng)劃分的備考指南)
1. 考點(diǎn)權(quán)重與命題套路為什么這章值得單獨(dú)扒一遍如果你備考過(guò)軟件設(shè)計(jì)師翻翻上午題歷年試卷就會(huì)發(fā)現(xiàn)計(jì)算機(jī)網(wǎng)絡(luò)及信息安全這個(gè)板塊極其穩(wěn)定地占據(jù)著6到8分的量級(jí)偶爾還會(huì)在案例分析題里以配置場(chǎng)景的方式冒個(gè)頭。很多人覺(jué)得這部分知識(shí)點(diǎn)零散、名詞多、記了又忘干脆臨考前突擊一下結(jié)果選擇題里丟個(gè)四五分的很常見(jiàn)。實(shí)際上這一章是性?xún)r(jià)比最高的部分因?yàn)樗幌袼惴ê蛿?shù)據(jù)結(jié)構(gòu)那樣需要大量刷題思維也不像軟件工程那樣全是文字游戲只要你把框架搭清楚再用一些對(duì)比表格輔助記憶分?jǐn)?shù)幾乎是白送的。先說(shuō)清楚考試中的實(shí)際分布。上午的選擇題一共75道計(jì)算機(jī)網(wǎng)絡(luò)相關(guān)的題目通常在4到6道信息安全相關(guān)的2到3道合起來(lái)大概就是7到9分的區(qū)間。請(qǐng)注意下午的案例題一般不直接考網(wǎng)絡(luò)配置命令但有一年出現(xiàn)過(guò)基于網(wǎng)絡(luò)拓?fù)渑挪楣收系念}目如果對(duì)協(xié)議不熟很容易卡殼。因此我的建議是這一章你至少要保證選擇題拿滿(mǎn)同時(shí)順帶把網(wǎng)絡(luò)基礎(chǔ)概念弄懂防止下午題出幺蛾子。命題套路非常固定幾乎可以用老三樣來(lái)概括。第一樣是協(xié)議族和層次模型要么考OSI七層的功能分層要么考TCP/IP四層與協(xié)議對(duì)應(yīng)關(guān)系要么給你一個(gè)數(shù)據(jù)包從發(fā)送到接收的過(guò)程讓你判斷各層封裝。第二樣是IP地址與子網(wǎng)劃分計(jì)算這類(lèi)題是實(shí)打?qū)嵉挠?jì)算題會(huì)的人一分鐘出答案不會(huì)的人蹲在考場(chǎng)里掰手指頭。第三樣是信息安全中的算法分類(lèi)和數(shù)字簽名流程屬于概念辨析題把幾類(lèi)算法和用途對(duì)照清楚就穩(wěn)了。理解了這套框架之后你就能針對(duì)性地去突破而不是捧著教材從頭背到尾。有一點(diǎn)要提醒你別被教材里那一堆英文縮寫(xiě)嚇退。DHCP、ARP、ICMP這些協(xié)議只需要知道它在哪一層、干什么用、有哪些關(guān)鍵機(jī)制不需要去記報(bào)文格式??荚嚳嫉氖侵啦皇菍?shí)現(xiàn)。接下來(lái)我按自己復(fù)習(xí)時(shí)整理的邏輯把這塊內(nèi)容分成四個(gè)核心模塊過(guò)一遍每部分都附上應(yīng)試角度必須掌握的要點(diǎn)以及我踩過(guò)的坑。2. 網(wǎng)絡(luò)分層與協(xié)議族把OSI和TCP/IP理解成快遞鏈路很多第一次備考的人被OSI七層模型弄得頭大但換個(gè)角度就容易了你把數(shù)據(jù)發(fā)送過(guò)程想象成寄快遞。應(yīng)用層是你填寫(xiě)的快遞單內(nèi)容傳輸層是決定用普通快遞還是特快專(zhuān)遞TCP還是UDP網(wǎng)絡(luò)層是依據(jù)地址規(guī)劃路線(xiàn)的調(diào)度中心數(shù)據(jù)鏈路層是實(shí)際裝車(chē)配送到隔壁街區(qū)的貨車(chē)物理層則是路況和車(chē)道本身。數(shù)據(jù)從你手里發(fā)出每下一層就套一個(gè)信封到了目的地逐層拆開(kāi)這就是封裝與解封裝的過(guò)程??荚囎畛?嫉膶?duì)應(yīng)關(guān)系務(wù)必記清楚。應(yīng)用層協(xié)議與端口之間的匯聚點(diǎn)是選擇題的高頻區(qū)HTTP對(duì)應(yīng)80HTTPS對(duì)應(yīng)443FTP控制端口21和數(shù)據(jù)端口20DNS是53DHCP用67和68SMTP發(fā)信是25POP3收信是110遠(yuǎn)程登錄Telnet是23SSH是22。這些端口不要求你全背但至少每年有個(gè)一道題是在里面挑一個(gè)考的建議做成小卡片反復(fù)刷眼熟。TCP與UDP的區(qū)別是必考題我建議記這樣一句話(huà)TCP可靠但慢UDP快但不管丟。TCP的三次握手流程、四次揮手、全雙工通信、流量控制和擁塞控制每一個(gè)都可能成為選項(xiàng)。三次握手的序列號(hào)變化過(guò)程有幾年特別喜歡考你得知道SYN、SYNACK、ACK這幾個(gè)標(biāo)志的先后順序。UDP的典型應(yīng)用是視頻直播、語(yǔ)音通話(huà)、DNS查詢(xún)這些能承受少量丟失的場(chǎng)景。這個(gè)能不能容忍丟包就是判斷該類(lèi)應(yīng)用該用誰(shuí)的最快標(biāo)準(zhǔn)。ARP協(xié)議這個(gè)地方很多人容易混淆。ARP位于網(wǎng)絡(luò)層與數(shù)據(jù)鏈路層之間作用是把IP地址解析為MAC地址它只在同一個(gè)廣播域內(nèi)工作。如果你收到一個(gè)數(shù)據(jù)包需要發(fā)往另一個(gè)網(wǎng)段源主機(jī)會(huì)先用ARP查詢(xún)默認(rèn)網(wǎng)關(guān)的MAC地址然后將數(shù)據(jù)交給網(wǎng)關(guān)轉(zhuǎn)發(fā)。這個(gè)細(xì)節(jié)是??嫉南葳錋RP是解析IP到MAC而DNS是解析域名到IP別把兩者混為一談。還有RARP是反向把MAC地址映射回IP地址考試出現(xiàn)的概率小但偶爾會(huì)拿來(lái)混淆視線(xiàn)。網(wǎng)絡(luò)層還需要分清ICMP和IGMP。ICMP是互聯(lián)網(wǎng)控制報(bào)文協(xié)議最典型的使用者是ping命令和traceroute命令ping返回的請(qǐng)求超時(shí)或目標(biāo)不可達(dá)就是ICMP報(bào)文的反饋。IGMP則是管理組播組成員關(guān)系的組播那個(gè)知識(shí)點(diǎn)隔幾年冒出來(lái)一次你只要記住組播用IGMP單播和廣播不用它就差不多了。## 3. 網(wǎng)絡(luò)分層與協(xié)議族把OSI和TCP/IP理解成快遞鏈路這一章的知識(shí)點(diǎn)如果死記硬背會(huì)非常折磨人。我的經(jīng)驗(yàn)是把它放在一個(gè)具體的數(shù)據(jù)包旅行場(chǎng)景里去理解所有層次和協(xié)議立刻就有了秩序感。下面先搭框架再講應(yīng)試中最常考的細(xì)節(jié)。3.1 從數(shù)據(jù)包的一次跨網(wǎng)傳輸看懂兩臺(tái)主機(jī)的協(xié)作想象一下你用瀏覽器打開(kāi)某個(gè)網(wǎng)站整個(gè)過(guò)程涉及DNS解析、TCP建連、HTTP請(qǐng)求發(fā)送、路由轉(zhuǎn)發(fā)、響應(yīng)回傳。數(shù)據(jù)從應(yīng)用層產(chǎn)生后每經(jīng)過(guò)一層就會(huì)加上該層的頭部信息這個(gè)過(guò)程叫封裝對(duì)端收到后從物理層往上層層剝掉頭部這叫解封裝??荚嚭苌僦苯訂?wèn)你封裝順序是什么但會(huì)以當(dāng)數(shù)據(jù)到達(dá)目標(biāo)主機(jī)的網(wǎng)絡(luò)層時(shí)已經(jīng)處理完哪些層這類(lèi)變體出現(xiàn)。網(wǎng)絡(luò)接口層負(fù)責(zé)在局域網(wǎng)內(nèi)傳輸幀幀里有源MAC地址和目的MAC地址。只要數(shù)據(jù)包要出本網(wǎng)段源MAC一定是發(fā)送方網(wǎng)卡目的MAC一定是下一跳設(shè)備的MAC通常是網(wǎng)關(guān)。但要記住源IP和目的IP在整個(gè)傳輸過(guò)程中基本不變而每一跳的MAC地址都在改變。這個(gè)考點(diǎn)一旦出成PC1發(fā)給PC2經(jīng)過(guò)一臺(tái)路由器請(qǐng)問(wèn)哪些地址發(fā)生變化很多人就會(huì)栽在MAC地址的更新上。TCP三次握手的過(guò)程也完全可以串進(jìn)這個(gè)場(chǎng)景里。第一次握手客戶(hù)端發(fā)送SYN報(bào)文初始序列號(hào)假設(shè)為x第二次握手服務(wù)器回復(fù)SYNACK并帶上自己的初始序列號(hào)y同時(shí)確認(rèn)x1第三次握手客戶(hù)端再發(fā)ACK確認(rèn)y1??荚囅矚g把三次握手亂序排列或者在狀態(tài)名上做文章你只要記住連接建立一定要雙向確認(rèn)這一句話(huà)就足以排雷了。3.2 協(xié)議與端口的高頻清單應(yīng)用層協(xié)議與端口的對(duì)應(yīng)關(guān)系幾乎是每年必考。我不建議你對(duì)著端口表硬背你可以把它們分類(lèi)成網(wǎng)頁(yè)類(lèi)、文件類(lèi)、郵件類(lèi)、遠(yuǎn)程管理類(lèi)、基礎(chǔ)設(shè)施類(lèi)這樣更容易形成網(wǎng)絡(luò)。類(lèi)別協(xié)議默認(rèn)端口特征一句話(huà)網(wǎng)頁(yè)訪(fǎng)問(wèn)HTTP / HTTPS80 / 443HTTPS多了加密和證書(shū)校驗(yàn)文件傳輸FTP控制21數(shù)據(jù)20明文傳輸需要登錄認(rèn)證郵件發(fā)送SMTP25只負(fù)責(zé)發(fā)信不負(fù)責(zé)收郵件接收POP3 / IMAP110 / 143POP3偏向下載后離線(xiàn)讀遠(yuǎn)程管理Telnet / SSH23 / 22Telnet明文SSH加密域名解析DNS53將域名轉(zhuǎn)成IP也支持反向查詢(xún)動(dòng)態(tài)地址分配DHCP67/68客戶(hù)端用68服務(wù)端用67無(wú)盤(pán)啟動(dòng)等TFTP69基于UDP簡(jiǎn)單文件傳輸有個(gè)小提醒DHCP的67、68端口這兩年是高頻考點(diǎn)而且命題常常換個(gè)角度——問(wèn)你DHCP客戶(hù)端發(fā)送請(qǐng)求時(shí)使用的源端口是哪個(gè)。答案是68。同理FTP的數(shù)據(jù)端口20與主動(dòng)模式被動(dòng)模式的差異不一定會(huì)考但端口對(duì)應(yīng)關(guān)系你得記。DNS還有一個(gè)極易踩的坑它不只做域名轉(zhuǎn)IP郵件服務(wù)器的MX記錄、負(fù)載均衡的SRV記錄也在DNS體系內(nèi)??荚?yán)锶绻霈F(xiàn)根據(jù)域名查詢(xún)郵件服務(wù)器地址你要能反應(yīng)出這是在用DNS的MX記錄而不是直接發(fā)一封郵件。3.3 TCP與UDP判斷的兩條鐵律看到一個(gè)應(yīng)用怎么判斷它該用TCP還是UDP大多數(shù)人卡在HTTP不是基于TCP嗎但視頻為什么用UDP其實(shí)判斷標(biāo)準(zhǔn)就兩條第一數(shù)據(jù)是否要求完整無(wú)損第二能否容忍延遲和丟包。需要的是正確性?xún)?yōu)先比如網(wǎng)頁(yè)內(nèi)容、文件下載、郵件、數(shù)據(jù)庫(kù)同步統(tǒng)統(tǒng)TCP需要的是實(shí)時(shí)性?xún)?yōu)先比如直播推流、語(yǔ)音通話(huà)、在線(xiàn)游戲的狀態(tài)同步、DNS快速查詢(xún)用了UDP??荚囘€有一個(gè)經(jīng)典陷阱DNS使用UDP但DNS區(qū)域傳送即主DNS服務(wù)器向備用DNS服務(wù)器同步整個(gè)區(qū)域數(shù)據(jù)用的卻是TCP。原因是區(qū)域傳送的數(shù)據(jù)量大需要可靠傳輸。這種特殊場(chǎng)景下?lián)Q協(xié)議的細(xì)節(jié)就是命題組最?lèi)?ài)設(shè)的坑你必須單獨(dú)記住。三次握手的異常情況也值得看一眼。比如客戶(hù)端連續(xù)發(fā)送SYN但從未收到SYNACK可能是服務(wù)器監(jiān)聽(tīng)隊(duì)列滿(mǎn)了也可能是防火墻攔截。但在上午選擇題里一般不會(huì)讓你做這么深入的排查更多是考SYN泛洪攻擊利用了TCP三次握手的哪個(gè)弱點(diǎn)答案指向服務(wù)器等待第三次ACK時(shí)半連接隊(duì)列被占滿(mǎn)。這個(gè)點(diǎn)放在后面的安全章節(jié)我會(huì)再展開(kāi)。4. IP地址與子網(wǎng)劃分計(jì)算題拿分的關(guān)鍵公式如果說(shuō)協(xié)議是背一背就能拿分那IP地址計(jì)算就是需要?jiǎng)庸P的題。放心它沒(méi)有你想象得那么難考試中出現(xiàn)的無(wú)非是以下幾類(lèi)判斷IP地址的類(lèi)別、計(jì)算網(wǎng)絡(luò)地址/廣播地址、計(jì)算可用主機(jī)數(shù)、判斷兩個(gè)IP是否在同一網(wǎng)段以及CIDR表示法的互相轉(zhuǎn)換。每類(lèi)都有明確的步驟和公式只要訓(xùn)練幾道題就能熟練。4.1 IPv4地址分類(lèi)與特殊地址IPv4地址是32位二進(jìn)制每8位一組轉(zhuǎn)為十進(jìn)制。A類(lèi)地址第一字節(jié)范圍1到126默認(rèn)掩碼/8用于超大規(guī)模網(wǎng)絡(luò)B類(lèi)128到191掩碼/16C類(lèi)192到223掩碼/24D類(lèi)224到239用于組播E類(lèi)240到255保留研究。這個(gè)分類(lèi)判斷雖然簡(jiǎn)單但我建議你不要只背范圍而要明白它與默認(rèn)掩碼的關(guān)系A(chǔ)類(lèi)前8位是網(wǎng)絡(luò)位B類(lèi)前16位是網(wǎng)絡(luò)位C類(lèi)前24位是網(wǎng)絡(luò)位。特殊地址里考試概率最大的是這三類(lèi)第一地址127.0.0.1代表本機(jī)環(huán)回地址第二169.254.x.x是Windows主機(jī)無(wú)法從DHCP獲取地址時(shí)的自動(dòng)專(zhuān)用地址看到它說(shuō)明DHCP可能出了問(wèn)題第三私有地址段——10.0.0.0/8、172.16.0.0/12、192.168.0.0/16這些地址只能在內(nèi)網(wǎng)使用不能直接上公網(wǎng)。如果題目給了一個(gè)私有IP讓你判斷能否作為公網(wǎng)路由源地址答案自然是否定的。4.2 子網(wǎng)劃分計(jì)算的標(biāo)準(zhǔn)動(dòng)作子網(wǎng)劃分的本質(zhì)就是從主機(jī)位里借出若干位作為子網(wǎng)號(hào)??荚嚦=o一個(gè)標(biāo)準(zhǔn)地址和一個(gè)子網(wǎng)掩碼讓你求某個(gè)地址所屬的網(wǎng)絡(luò)地址、廣播地址和可用地址范圍。我的做法分三步第一步把子網(wǎng)掩碼寫(xiě)成二進(jìn)制找出從第幾位開(kāi)始是主機(jī)位第二步把IP地址與掩碼做按位與得到網(wǎng)絡(luò)地址第三步把主機(jī)位全部置1得到廣播地址第四步網(wǎng)絡(luò)地址加1是第一個(gè)可用地址廣播地址減1是最后一個(gè)可用地址。舉個(gè)例子IP地址192.168.10.130子網(wǎng)掩碼255.255.255.192。掩碼的最后一個(gè)字節(jié)192對(duì)應(yīng)二進(jìn)制11000000說(shuō)明最后8位里前兩位是子網(wǎng)位后6位是主機(jī)位。IP地址的最后一個(gè)字節(jié)130對(duì)應(yīng)10000010與11000000做按位與得到10000000即128。所以網(wǎng)絡(luò)地址是192.168.10.128廣播地址把后6位置1得10111111即191可用范圍是129到190中間一共有62個(gè)可用主機(jī)數(shù)。這個(gè)計(jì)算熟練之后20秒就能出答案。子網(wǎng)掩碼還有一個(gè)快速換算技巧/26等價(jià)于255.255.255.192/27等價(jià)于255.255.255.224/28等價(jià)于255.255.255.240。你不需要每次都去轉(zhuǎn)換二進(jìn)制直接記住幾個(gè)常用CIDR對(duì)應(yīng)的掩碼和主機(jī)數(shù)即可。但記住每個(gè)子網(wǎng)可用的主機(jī)數(shù)是2^n - 2其中n是主機(jī)位位數(shù)減去的是網(wǎng)絡(luò)地址和廣播地址。4.3 子網(wǎng)聚合與劃分方向問(wèn)題有時(shí)候題目會(huì)反著考給你幾個(gè)子網(wǎng)讓你求路由聚合后的地址。聚合的規(guī)則是取多個(gè)子網(wǎng)共同的最長(zhǎng)相同前綴。比如192.168.1.0/24和192.168.2.0/24聚合時(shí)前24位中有23位相同從第24位開(kāi)始不同所以聚合后的前綴是/23網(wǎng)絡(luò)地址是192.168.0.0。要注意聚合前子網(wǎng)得是連續(xù)的且大小一致否則不能用簡(jiǎn)單的相同前綴法。另一個(gè)常見(jiàn)坑是可變長(zhǎng)子網(wǎng)掩碼。比如給你一個(gè)172.16.0.0/16讓你先劃分出容納4000臺(tái)主機(jī)的子網(wǎng)再?gòu)氖S嗫臻g劃分子網(wǎng)給300臺(tái)主機(jī)使用。這種題的關(guān)鍵是永遠(yuǎn)從最大的子網(wǎng)開(kāi)始劃分保證剩余空間完整。4000臺(tái)主機(jī)需要2^124096但12位主機(jī)位只能有4094個(gè)可用剛好滿(mǎn)足4000所以掩碼是/20余下從172.16.16.0/20繼續(xù)往下切。這種由大到小的次序感是VLSM計(jì)算的核心思路。IPv6雖然考得少但也需要了解基本形態(tài)128位地址冒號(hào)十六進(jìn)制表示每16位一組共8組連續(xù)零可以使用::壓縮一次。IPv6沒(méi)有廣播地址取而代之的是任播和組播??荚囎疃喑鲆坏繧Pv6地址長(zhǎng)度是幾位的送分題別在細(xì)節(jié)上花費(fèi)太多時(shí)間。5. 網(wǎng)絡(luò)設(shè)備與IP配置小型局域網(wǎng)那些必考的常識(shí)5.1 集線(xiàn)器、交換機(jī)、路由器到底有什么本質(zhì)差異這一塊屬于你以為是常識(shí)、做選擇題卻常錯(cuò)的地方。集線(xiàn)器工作在物理層它所有端口共享帶寬收到信號(hào)直接廣播到所有端口毫無(wú)智能可言所以現(xiàn)在基本退出了組網(wǎng)場(chǎng)景。交換機(jī)工作在數(shù)據(jù)鏈路層它維護(hù)MAC地址表通過(guò)MAC地址只把數(shù)據(jù)幀轉(zhuǎn)發(fā)到對(duì)應(yīng)端口。路由器工作在網(wǎng)絡(luò)層依靠IP地址做跨網(wǎng)段轉(zhuǎn)發(fā)是連接不同網(wǎng)絡(luò)的核心設(shè)備??荚?yán)镒畛R?jiàn)的命題角度是當(dāng)PC-A和PC-B在同一個(gè)交換機(jī)上PC-C在另一個(gè)網(wǎng)段PC-A訪(fǎng)問(wèn)PC-C時(shí)經(jīng)過(guò)哪些設(shè)備答案是一定要經(jīng)過(guò)路由器而交換機(jī)可能在同一個(gè)廣播域內(nèi)起著透明轉(zhuǎn)發(fā)的作用。還有一類(lèi)題問(wèn)交換機(jī)會(huì)隔離沖突域還是廣播域——交換機(jī)隔離沖突域但不隔離廣播域這也是N個(gè)考生反復(fù)踩的坑。5.2 一個(gè)命令排查兩類(lèi)故障場(chǎng)景上午題偶爾會(huì)把Linux或Windows的ipconfig、ping、traceroute拉出來(lái)考。最常見(jiàn)的考點(diǎn)有三個(gè)第一ping 127.0.0.1檢查本機(jī)協(xié)議棧第二ping本機(jī)IP檢查網(wǎng)卡是否正常第三ping網(wǎng)關(guān)檢查局域網(wǎng)連通性。這里的邏輯是從底層到上層逐層排除考試可能故意改變順序讓你判斷錯(cuò)誤的排查方法是什么。比如有一道經(jīng)典題主機(jī)能ping通自己也能ping通網(wǎng)關(guān)但ping不通遠(yuǎn)程服務(wù)器可能原因是什么答案方向有兩種一是遠(yuǎn)程服務(wù)器的防火墻屏蔽了ICMP請(qǐng)求二是本機(jī)到遠(yuǎn)程路由途中存在訪(fǎng)問(wèn)控制策略。注意只要網(wǎng)關(guān)能通就說(shuō)明本機(jī)到路由器這一段物理鏈路和IP配置基本正常。問(wèn)題在出口之后不要再懷疑自己電腦的網(wǎng)卡。另一種故障是DNS解析問(wèn)題瀏覽器能通過(guò)IP地址訪(fǎng)問(wèn)公網(wǎng)服務(wù)器但輸入域名打不開(kāi)網(wǎng)頁(yè)這種十有八九是DNS配置錯(cuò)誤或DNS服務(wù)不可用。考試要把這一步和網(wǎng)線(xiàn)沒(méi)插好分開(kāi)前者是應(yīng)用層的問(wèn)題后者是物理層的問(wèn)題考查你按層次定位故障的能力。5.3 DHCP與DNS的常見(jiàn)考題DHCP的工作流程常被概括為四個(gè)階段發(fā)現(xiàn)DISCOVER、提供OFFER、選擇REQUEST、確認(rèn)ACK。題目考得最多的是客戶(hù)端通過(guò)哪種報(bào)文來(lái)廣播尋找DHCP服務(wù)器答案是DISCOVER廣播包。為什么是廣播因?yàn)榭蛻?hù)端不知道服務(wù)器在哪必須向全網(wǎng)廣播。等到后續(xù)請(qǐng)求階段客戶(hù)端會(huì)再次廣播REQUEST用來(lái)告知服務(wù)器挑選結(jié)果同時(shí)通知未選中的服務(wù)器釋放地址資源。DNS在選擇題里則更傾向考記錄類(lèi)型A記錄是域名到IPv4地址AAAA記錄是域名到IPv6地址MX記錄是郵件交換記錄CNAME是別名記錄NS是域名服務(wù)器記錄??荚囍灰o你一個(gè)場(chǎng)景比如需要為域名添加一個(gè)用于指定郵件服務(wù)器的記錄對(duì)應(yīng)MX記錄即可。平時(shí)自己搭過(guò)DNS的人會(huì)覺(jué)得這很簡(jiǎn)單沒(méi)搭過(guò)的就會(huì)在A和MX之間猶豫所以建議非網(wǎng)絡(luò)方向的考生花二十分鐘用本機(jī)hosts加nslookup體驗(yàn)一下主機(jī)的解析流程。6. 安全基石加密算法與數(shù)字簽名怎么選信息安全這部分上午題的分值約有2到3分內(nèi)容卻非常密集。我復(fù)習(xí)時(shí)最大的感受是它其實(shí)不是靠背算法名而是靠理清加密、簽名、摘要這三件事的語(yǔ)義邊界。一旦邊界清楚了無(wú)論題目怎么繞都能接住。6.1 對(duì)稱(chēng)加密、非對(duì)稱(chēng)加密與哈希的三類(lèi)區(qū)分對(duì)稱(chēng)加密的特點(diǎn)是加密解密用同一把密鑰優(yōu)點(diǎn)是快適合大量數(shù)據(jù)缺點(diǎn)是密鑰分發(fā)困難。常見(jiàn)算法有DES、3DES、AES其中AES是當(dāng)前的主流DES由于密鑰長(zhǎng)度太短已被淘汰。非對(duì)稱(chēng)加密是公鑰加密、私鑰解密或者私鑰簽名、公鑰驗(yàn)簽優(yōu)點(diǎn)是密鑰管理相對(duì)容易缺點(diǎn)是慢。常見(jiàn)算法有RSA、ECC。哈希算法則沒(méi)有密鑰它把任意長(zhǎng)度的輸入壓縮成固定長(zhǎng)度的摘要不可逆用于驗(yàn)證完整性。常見(jiàn)算法有MD5、SHA-1、SHA-256其中MD5和SHA-1已經(jīng)不再認(rèn)為是安全的。把這個(gè)梳理成表之后選擇題里以下哪個(gè)是對(duì)稱(chēng)加密算法這類(lèi)題基本就是白送。但出題人不會(huì)總這么善良更多時(shí)候是給一個(gè)應(yīng)用場(chǎng)景讓你選合適的算法。比如大量文件內(nèi)容需要加密存儲(chǔ)選AES因?yàn)樾阅芨咝枰诓话踩诺澜粨Q會(huì)話(huà)密鑰選RSA需要確認(rèn)文件是否被篡改選SHA-256。場(chǎng)景題比直接問(wèn)算法分類(lèi)更能鍛煉你的判斷力。6.2 公鑰體系與數(shù)字簽名的完整流程數(shù)字簽名解決兩個(gè)問(wèn)題身份認(rèn)證與抗抵賴(lài)。簽名的動(dòng)作是發(fā)送方用自己的私鑰對(duì)消息摘要進(jìn)行加密驗(yàn)證的動(dòng)作是接收方用發(fā)送方的公鑰解密并比對(duì)消息摘要是否一致。這里特別容易混淆——很多人記成公鑰加密、私鑰解密就直接套到簽名上來(lái)結(jié)果方向全反。記住一個(gè)原則誰(shuí)要證明自己誰(shuí)用私鑰別人要驗(yàn)證你用你的公鑰。密鑰的使用方向完全由身份認(rèn)證的需求反向推導(dǎo)出來(lái)。數(shù)字證書(shū)則是把公鑰和持有者信息綁定在一起由CA簽發(fā)的電子文件。證書(shū)內(nèi)容包括版本號(hào)、序列號(hào)、簽名算法、頒發(fā)者、有效期、公鑰信息等。考試問(wèn)數(shù)字證書(shū)的主要作用時(shí)核心就是綁定公鑰與身份防止中間人篡改公鑰。如果你正在看得頭疼可以類(lèi)比身份證證書(shū)就是網(wǎng)絡(luò)世界的身份證里面寫(xiě)著這個(gè)公鑰屬于誰(shuí)而CA就是發(fā)證機(jī)構(gòu)。6.3 談到加密必須避開(kāi)的幾個(gè)概念坑第一坑是加密算法強(qiáng)度等于密鑰長(zhǎng)度的絕對(duì)化。DES的56位密鑰確實(shí)弱但AES-128在可預(yù)見(jiàn)的未來(lái)仍算安全實(shí)際強(qiáng)度還取決于實(shí)現(xiàn)是否正確。選擇題只需要你進(jìn)行常規(guī)判斷不要過(guò)分推演。第二坑是哈希和加密被混為一談。哈希不可逆的所以它不能用來(lái)解密只能用于完整性校驗(yàn)和存比對(duì)值。比如系統(tǒng)里存儲(chǔ)用戶(hù)口令規(guī)范做法是加鹽后做哈希而不是直接存明文密碼也不是用對(duì)稱(chēng)加密后再存——因?yàn)榧用芸赡鏀?shù)據(jù)庫(kù)泄露后密鑰若一起被竊取明文就暴露了。這個(gè)邏輯在考題中常以用戶(hù)口令安全存儲(chǔ)方式的形式出現(xiàn)。第三坑是數(shù)字信封的概念。數(shù)字信封是非對(duì)稱(chēng)加密與對(duì)稱(chēng)加密的合體發(fā)送方用對(duì)稱(chēng)密鑰加密數(shù)據(jù)再用接收方的公鑰加密這個(gè)對(duì)稱(chēng)密鑰然后把密文和加密后的密鑰一起發(fā)送。接收方先用私鑰解出對(duì)稱(chēng)密鑰再用對(duì)稱(chēng)密鑰解密數(shù)據(jù)。這樣兼顧了非對(duì)稱(chēng)加密的分發(fā)安全和對(duì)稱(chēng)加密的傳輸效率。考試一般不要求你畫(huà)出完整流程但必須要能看出它結(jié)合了兩類(lèi)算法這一核心特征。7. 常見(jiàn)安全攻擊與防御策略案例題怎么答7.1 從攻擊特征識(shí)別威脅類(lèi)型信息安全選擇題的另一種考法是給一個(gè)攻擊過(guò)程的描述讓你判斷它屬于哪種攻擊。這幾年最常見(jiàn)的有SYN Flood、DDoS、SQL注入、跨站腳本攻擊XSS、跨站請(qǐng)求偽造CSRF、ARP欺騙、中間人攻擊和暴力破解。每個(gè)攻擊的識(shí)別關(guān)鍵要抓住它利用了哪一層、什么漏洞。SYN Flood通過(guò)大量發(fā)送SYN但不完成三次握手消耗服務(wù)器半連接隊(duì)列資源屬于拒絕服務(wù)攻擊防御思路是啟用SYN Cookie、限制半連接數(shù)。DDoS多臺(tái)被控主機(jī)同時(shí)向目標(biāo)發(fā)送海量請(qǐng)求帶寬和資源耗盡防御思路是流量清洗、限速、黑洞路由。SQL注入攻擊者在輸入框提交惡意SQL語(yǔ)句使后端拼接出危險(xiǎn)查詢(xún)防御思路是用參數(shù)化查詢(xún)和預(yù)編譯語(yǔ)句。XSS攻擊者把腳本注入網(wǎng)頁(yè)中其他用戶(hù)瀏覽時(shí)腳本執(zhí)行從而竊取Cookie或偽造內(nèi)容。防御思路是對(duì)輸入輸出做過(guò)濾和轉(zhuǎn)義。CSRF借助受害者的已認(rèn)證身份誘導(dǎo)瀏覽器向服務(wù)端發(fā)送偽造請(qǐng)求。防御思路是加CSRF Token、校驗(yàn)Referer頭。ARP欺騙偽造IP與MAC的對(duì)應(yīng)關(guān)系讓數(shù)據(jù)幀被錯(cuò)誤轉(zhuǎn)發(fā)到攻擊者處防御思路是配置靜態(tài)ARP表或使用端口安全。中間人攻擊攻擊者在通信雙方之間攔截或篡改數(shù)據(jù)常見(jiàn)于不安全的WiFi環(huán)境防御思路是使用HTTPS并驗(yàn)證證書(shū)。針對(duì)每一種攻擊判斷依據(jù)是攻擊者做了什么。比如題干里出現(xiàn)不斷發(fā)送TCP連接請(qǐng)求但不建立連接要是你還猶豫是不是DDoS就抓錯(cuò)了主特征??荚囘x項(xiàng)里常把多種攻擊的細(xì)節(jié)混在一起穩(wěn)贏的做法是讀完題干先定位發(fā)生在傳輸層還是應(yīng)用層針對(duì)的是合法性還是完整性再對(duì)照上面的分類(lèi)。7.2 安全防護(hù)的縱深層次答題時(shí)你經(jīng)常會(huì)被問(wèn)到下面哪個(gè)措施能有效防御XX之類(lèi)的問(wèn)題。我的建議是不要一條條背而是建立縱深防御的層次感物理層靠門(mén)禁和硬件防篡改數(shù)據(jù)鏈路層靠端口安全和MAC綁定網(wǎng)絡(luò)層靠防火墻ACL和入侵檢測(cè)系統(tǒng)傳輸層靠TLS加密應(yīng)用層靠WAF、身份認(rèn)證、輸入校驗(yàn)。哪個(gè)層次的攻擊就用哪個(gè)層次的手段跨層次的手段往往不能直接解決問(wèn)題。例如SQL注入發(fā)生在應(yīng)用層防火墻ACL主要工作在網(wǎng)絡(luò)層和傳輸層若不啟用應(yīng)用層檢測(cè)策略很難攔截所以最優(yōu)解是參數(shù)化查詢(xún)。這個(gè)邏輯比記住解題答案更穩(wěn)因?yàn)槌鲱}人完全可能換一層包裝??v深防御還有一個(gè)老生常談卻重要的原則最小權(quán)限。無(wú)論是系統(tǒng)賬號(hào)還是服務(wù)權(quán)限只用給完成任務(wù)所需的最小范圍。這個(gè)原則幾乎年年出現(xiàn)在上午題的多選或單選選項(xiàng)里它不只針對(duì)網(wǎng)絡(luò)還針對(duì)操作系統(tǒng)、數(shù)據(jù)庫(kù)和應(yīng)用程序。7.3 歷年案例題的最常見(jiàn)切入角度下午案例題如果出現(xiàn)安全方向通常會(huì)給出一個(gè)小型局域網(wǎng)拓?fù)浜鸵欢畏?wù)器配置讓考生指出存在的安全風(fēng)險(xiǎn)并提出加固建議。常見(jiàn)風(fēng)險(xiǎn)點(diǎn)包括使用Telnet明文遠(yuǎn)程管理、防火墻規(guī)則過(guò)于寬松、存在默認(rèn)口令、不關(guān)閉不必要服務(wù)、缺少日志審計(jì)。作答時(shí)不需要寫(xiě)特別高深的滲透思路只需要逐條對(duì)應(yīng)風(fēng)險(xiǎn)給措施Telnet換成SSH、開(kāi)啟防火墻并配置最小策略、修改默認(rèn)口令、關(guān)閉未使用端口和服務(wù)、開(kāi)啟日志集中管理與定期審計(jì)。這些是拿滿(mǎn)分的標(biāo)準(zhǔn)答案寫(xiě)的時(shí)候注意邏輯順序——先指出風(fēng)險(xiǎn)在哪再寫(xiě)具體操作最后說(shuō)明作用。工程習(xí)慣越好得分越穩(wěn)。如果你連防火墻的兩種工作模式都還沒(méi)分清這里補(bǔ)充一句最核心的區(qū)別包過(guò)濾防火墻工作在網(wǎng)絡(luò)層速度快但不關(guān)心應(yīng)用內(nèi)容應(yīng)用層網(wǎng)關(guān)代理防火墻工作在應(yīng)用層能檢查內(nèi)容但性能開(kāi)銷(xiāo)更大?,F(xiàn)在的下一代防火墻基本都具備雙模能力考試中如果只出現(xiàn)根據(jù)IP和端口進(jìn)行過(guò)濾你優(yōu)先選包過(guò)濾。8. 備考策略與高頻丟分點(diǎn)復(fù)盤(pán)8.1 按優(yōu)先級(jí)排復(fù)習(xí)順序這章的復(fù)習(xí)不要從頭逐頁(yè)啃教材我的順序是先攻IP與子網(wǎng)劃分因?yàn)樗_定性最強(qiáng)練熟就能拿分再攻分層模型和協(xié)議因?yàn)樗鼈兏采w題目最多然后看加密與簽名最后過(guò)一遍安全攻擊與設(shè)備配置。配置命令部分如果時(shí)間緊張可以只掌握??嫉哪菐讞l排查命令和防火墻概念沒(méi)必要深入命令行細(xì)節(jié)。每天投入的時(shí)間建議控制在四十分鐘到一小時(shí)連續(xù)一周就能把知識(shí)點(diǎn)輪一遍。做過(guò)模擬題的都知道協(xié)議和端口的記憶衰減非常快周三背完周六忘掉很正常所以一定要做間隔復(fù)習(xí)。我的做法是在手機(jī)備忘錄里放一張協(xié)議端口速查表午休時(shí)掃兩遍堅(jiān)持到考前一周基本就不會(huì)再混了。8.2 高頻丟分點(diǎn)Top 5我自己復(fù)習(xí)時(shí)通過(guò)刷錯(cuò)題總結(jié)了五個(gè)容易丟分的點(diǎn)寫(xiě)下來(lái)給你排雷TCP與UDP的應(yīng)用判斷。FTP控制連接使用哪個(gè)協(xié)議這種題不難但流媒體直播為什么用UDP而不是TCP很多人會(huì)把可靠傳輸這類(lèi)優(yōu)點(diǎn)錯(cuò)套上去。答題時(shí)先看應(yīng)用是否允許丟包。私有地址范圍記混。172.16.0.0/12的范圍是172.16.0.0到172.31.255.255常有人把它和172.16.0.0/16搞混。給定一個(gè)172.20.x.x地址它屬于私有地址可以出現(xiàn)在內(nèi)網(wǎng)環(huán)境中。網(wǎng)絡(luò)號(hào)與廣播號(hào)排序??捎弥鳈C(jī)數(shù)是2^n - 2這個(gè)減2減的是網(wǎng)絡(luò)地址和廣播地址。老有人只減一個(gè)或者把地址段寫(xiě)成從網(wǎng)絡(luò)地址本身開(kāi)始這是計(jì)算題中最明顯的失分點(diǎn)。數(shù)字簽名方向搞反。私鑰簽名、公鑰驗(yàn)簽這個(gè)方向一旦記錯(cuò)后面的流程題全亂。我用口訣私簽公驗(yàn)公加私解來(lái)區(qū)分加密和簽名。網(wǎng)絡(luò)安全知識(shí)里混淆加密與摘要。比如為校驗(yàn)下載文件的完整性選MD5而不是選RSA這類(lèi)題選錯(cuò)就非常可惜。8.3 考前兩天的快速記憶法最后兩天不必再刷新題這時(shí)候最適合做歸納表。我建議你親手畫(huà)一張大表左邊是網(wǎng)絡(luò)分層中間寫(xiě)每層的設(shè)備、協(xié)議、典型故障右邊寫(xiě)與安全相關(guān)的攻擊類(lèi)型。這張表的制作過(guò)程本身就是一次主動(dòng)回憶比你反復(fù)看別人的總結(jié)要有用得多。針對(duì)端口號(hào)這類(lèi)純粹的記背型內(nèi)容我還有一個(gè)取巧的經(jīng)驗(yàn)把21、22、23、25、53、80、110、143、443這些數(shù)字按從邊緣服務(wù)到基礎(chǔ)設(shè)施的順序讀幾遍然后用如何給一個(gè)沒(méi)有域名的服務(wù)器配置服務(wù)這種小場(chǎng)景把每個(gè)端口串起來(lái)。場(chǎng)景記憶比孤立記憶持久考場(chǎng)上給你一個(gè)具體的管理動(dòng)作你就能條件反射地想到對(duì)應(yīng)端口和協(xié)議。信息安全部分同理你可以在腦中模擬一條攻擊鏈攻擊者先用端口掃描發(fā)現(xiàn)開(kāi)放了23端口嘗試暴力破解獲取口令然后登入服務(wù)器關(guān)閉日志并植入后門(mén)最后利用這臺(tái)機(jī)器對(duì)內(nèi)網(wǎng)進(jìn)行ARP欺騙。把這個(gè)故事里每一步涉及的概念——暴力破解、Telnet明文風(fēng)險(xiǎn)、日志審計(jì)、ARP欺騙——串一遍選擇題里碰到任何一個(gè)環(huán)節(jié)你都能快速定位這比我給你整理十遍重點(diǎn)都管用。這個(gè)考點(diǎn)本身不復(fù)雜但信息密度高。別貪多求全把高頻知識(shí)點(diǎn)按上面幾個(gè)模塊消化到位再配合每天十道左右的練習(xí)題保持手感考試時(shí)這8分左右完全可以直接拿下。萬(wàn)一在做模擬題時(shí)發(fā)現(xiàn)自己哪個(gè)部分反復(fù)錯(cuò)不要急著刷新題先回到對(duì)應(yīng)的模塊把概念和計(jì)算步驟重新寫(xiě)一遍你會(huì)發(fā)現(xiàn)第二次做同樣的題速度會(huì)快很多正確率也更高。備考最忌看著都會(huì)、做題就廢所以動(dòng)手算、動(dòng)筆寫(xiě)、口頭復(fù)述才是真正的提分動(dòng)作。