計(jì)算機(jī)網(wǎng)絡(luò)的體系結(jié)構(gòu)是軟件設(shè)計(jì)師考試的核心基礎(chǔ),尤其需要深入理解OSI七層模型與TCP/IP四層模型的對(duì)應(yīng)關(guān)系。
1. 協(xié)議與分層
物理層與數(shù)據(jù)鏈路層:理解常見(jiàn)傳輸介質(zhì)(雙絞線(xiàn)、光纖)、編碼方式、幀結(jié)構(gòu)。重點(diǎn)掌握以太網(wǎng)(CSMA/CD)、MAC地址以及交換機(jī)的工作原理(基于MAC地址轉(zhuǎn)發(fā),隔離沖突域)。
網(wǎng)絡(luò)層:核心是IP協(xié)議。必須熟練掌握IPv4地址分類(lèi)(A、B、C、D、E)、子網(wǎng)劃分與VLSM(可變長(zhǎng)子網(wǎng)掩碼)、CIDR(無(wú)類(lèi)別域間路由)。理解ARP(地址解析)、ICMP(控制報(bào)文,如Ping)、路由協(xié)議(如RIP、OSPF的基本思想)的作用。
傳輸層:TCP與UDP的對(duì)比是絕對(duì)重點(diǎn)。
TCP:面向連接、可靠傳輸。關(guān)鍵機(jī)制包括三次握手/四次揮手、滑動(dòng)窗口(流量控制)、擁塞控制(慢啟動(dòng)、擁塞避免、快重傳、快恢復(fù))。理解TCP報(bào)文頭部的關(guān)鍵字段(序列號(hào)、確認(rèn)號(hào)、窗口大小、標(biāo)志位)。
網(wǎng)絡(luò)安全是保障軟件系統(tǒng)可靠運(yùn)行的前提,需從威脅、防護(hù)機(jī)制和管理三個(gè)層面把握。
1. 安全威脅與攻擊類(lèi)型
主動(dòng)攻擊:篡改、偽造、拒絕服務(wù)(DoS/DDoS)、重放攻擊。
被動(dòng)攻擊:竊聽(tīng)、流量分析。
2. 核心安全服務(wù)與機(jī)制
機(jī)密性:通過(guò)加密技術(shù)實(shí)現(xiàn)。
完整性:確保數(shù)據(jù)未被篡改,常用消息摘要/哈希函數(shù)(如MD5、SHA系列)和數(shù)字簽名驗(yàn)證。
認(rèn)證性:確認(rèn)實(shí)體身份,包括用戶(hù)認(rèn)證、消息認(rèn)證。
不可否認(rèn)性:通過(guò)數(shù)字簽名和可信第三方(CA) 實(shí)現(xiàn),使發(fā)送方不能否認(rèn)其行為。
* 訪(fǎng)問(wèn)控制:依據(jù)安全策略(如DAC自主訪(fǎng)問(wèn)控制、MAC強(qiáng)制訪(fǎng)問(wèn)控制、RBAC基于角色的訪(fǎng)問(wèn)控制)限制對(duì)資源的訪(fǎng)問(wèn)。
3. 關(guān)鍵技術(shù)
加密算法:
對(duì)稱(chēng)加密(DES, 3DES, AES):加密解密密鑰相同,速度快,適用于大量數(shù)據(jù)加密,但密鑰分發(fā)困難。
作為軟件設(shè)計(jì)師,必須將安全思想融入軟件開(kāi)發(fā)生命周期(SDLC)的各個(gè)階段。
1. 安全開(kāi)發(fā)生命周期(SDL)
需求階段:進(jìn)行安全需求分析,識(shí)別安全目標(biāo)與合規(guī)性要求(如等保2.0)。
設(shè)計(jì)階段:進(jìn)行威脅建模(如STRIDE模型),設(shè)計(jì)安全架構(gòu)(最小權(quán)限原則、縱深防御、失敗安全)。
編碼階段:遵循安全編碼規(guī)范,避免常見(jiàn)漏洞。
測(cè)試階段:進(jìn)行安全測(cè)試,包括代碼審計(jì)、滲透測(cè)試、模糊測(cè)試等。
* 部署與維護(hù):安全配置、漏洞管理與應(yīng)急響應(yīng)。
2. 常見(jiàn)安全漏洞與防范(OWASP Top 10相關(guān))
注入漏洞(SQL注入、命令注入):使用參數(shù)化查詢(xún)/預(yù)編譯語(yǔ)句,對(duì)輸入進(jìn)行嚴(yán)格過(guò)濾與轉(zhuǎn)義。
跨站腳本(XSS):對(duì)輸出到頁(yè)面的用戶(hù)數(shù)據(jù)進(jìn)行HTML編碼或過(guò)濾。
跨站請(qǐng)求偽造(CSRF):使用Anti-CSRF Token驗(yàn)證請(qǐng)求來(lái)源。
不安全的直接對(duì)象引用(IDOR):實(shí)施訪(fǎng)問(wèn)控制檢查,避免使用可預(yù)測(cè)的標(biāo)識(shí)符。
安全配置錯(cuò)誤:遵循最小化原則,及時(shí)更新補(bǔ)丁,禁用不必要的服務(wù)與端口。
敏感信息泄露:不在客戶(hù)端存儲(chǔ)敏感信息(如密碼、密鑰),使用強(qiáng)加密算法,傳輸層必須使用TLS。
* 失效的訪(fǎng)問(wèn)控制:在服務(wù)端對(duì)每個(gè)請(qǐng)求進(jìn)行嚴(yán)格的權(quán)限校驗(yàn),避免僅依賴(lài)前端控制。
3. 軟件安全設(shè)計(jì)與實(shí)現(xiàn)要點(diǎn)
身份認(rèn)證:使用強(qiáng)密碼策略、多因素認(rèn)證(MFA),安全地存儲(chǔ)密碼哈希(加鹽處理)。
會(huì)話(huà)管理:使用安全的、隨機(jī)生成的會(huì)話(huà)ID,設(shè)置合理的會(huì)話(huà)超時(shí)時(shí)間,防范會(huì)話(huà)固定攻擊。
數(shù)據(jù)安全:
傳輸中:強(qiáng)制使用HTTPS(TLS 1.2+)。
****:軟件設(shè)計(jì)師在計(jì)算機(jī)網(wǎng)絡(luò)與安全領(lǐng)域的知識(shí),不僅是為了通過(guò)考試,更是為了構(gòu)建真正可靠、安全的軟件系統(tǒng)。務(wù)必理解原理(如TCP如何保證可靠、非對(duì)稱(chēng)加密如何工作),并能在軟件設(shè)計(jì)場(chǎng)景中應(yīng)用安全原則(如最小特權(quán)、縱深防御)和具體技術(shù)(如防止SQL注入、正確實(shí)施HTTPS),做到理論與實(shí)踐相結(jié)合。
如若轉(zhuǎn)載,請(qǐng)注明出處:http://www.honst.cn/product/48.html
更新時(shí)間:2026-04-08 16:07:36