CISSP學習:第20章軟開開發安全

2021年3月1日web

在系統開發的每一個階段都應當考慮安全性。數據庫

編程語言:編譯後不易被第三方操縱,但最終用戶也沒法查看原始指令。
1.編譯型語言:C,Java,FORTRAN
2.解釋型語言:Python,R,JavaScript,VBScript編程

面向對象(OOP)
保證:是據此在系統生命週期內構建信任的正規過程,CC提供了一種標準化的方法
避免和緩解系統故障:
1.輸入驗證
2.身份驗證與繪畫管理
3.故障防禦和應急開放:故障防禦(Fail-secure,故障時,高權才能訪問)、應急開放(Fail-open,故障時,繞過安全控制)後端

系統開發生命週期
1.概念定義:有全部利益相關方(開發人員、客戶、管理人員)協商的簡單聲明,規定了項目用途及系統大致需求。
2.功能需求肯定:三個特徵:輸入、行爲、輸出。輸出:功能需求文檔。
3.控制規範的開發:具備安全意識的組織在開發伊始就設計,從多個安全角度分析:a.恰當訪問控制,只有受權用戶才能訪問系統,並不容許超出受權級別;b.使用正確的加密和數據保護技術來保護關鍵數據的保密性;c.提供審計蹤影來強制實施我的的問責性,提供對非法活動的檢測機制;d.根據系統的重要程度,必須解決可用性和容錯問題。
4.設計評審
5.代碼審計走查
6.用戶驗收測試
7.維護和變動管理安全

生命週期模型
1.瀑布模型:1970年Winstom Royce開發,反饋環特徵,只容許開發人員後退一個階段。
2.螺旋模型:1988年 Barry Boehm提出,元模型,「模型的模型」
3.敏捷軟件開發:強調客戶需求,快速開發新功能,迭代交付。「敏捷宣言」12原則:網絡

  • 最重要的目標是持續不斷及早交付有價值的軟件,使用戶滿意。
  • 歡迎需求變化
  • 常常性交付可工做的軟件
  • 業務人員和開發人員天天合做
  • 激發個體鬥志,以他們爲核心搭建項目
  • 團隊內外,溝通訊息最高效的方式是面對面交談
  • 可工做的軟件是進度的首要度量標準
  • 敏捷過程倡導可持續開發
  • 堅持不懈追求技術卓越和良好設計
  • 以簡潔爲本,減小沒必要要的工做量
  • 最好的架構、需求和設計出自自組織團隊
  • 團隊按期反思如何提升成效,並依次調整自身的舉止表現
    4.軟件能力成熟度模型:分爲五個階段:
  • 第一階段,初始級:幾乎沒有定義軟件開發過程。
  • 第二階段,可重複級:基本生命週期管理過程,相似項目可預期具備可重複的結果。
  • 第三階段,定義級:軟開人員依據一些列正式的、穩定化的軟件開發過程進行操做。標準化管理全部項目。
  • 第四階段,管理級:定量衡量得到開發過程的詳細信息。SEI關注的處理範圍定義爲:定量處理管理和古人講質量管理。
  • 第五階段,優化級:持續改進過程,成熟過程肯定。SEI關注的處理範圍定義爲:缺陷預防,技術更改管理,過程更改管理。
    5.IDEAL模型,實現多個SW-CMM屬性,五個階段:啓動、診斷、創建、行動、學習。

甘特圖:顯示不一樣時間項目和調度之間相互關係的條形圖。
計劃評審技術,PERT(Program Evaluation Review Technique),項目調度工具:用於開發中判斷軟件產品大小併爲風險評估計算標準誤差。架構

變動管理:做爲安全工具。三個基本組件:請求變動、變動控制、發佈控制。併發

配置管理:用於控制整個組織範圍內使用的軟件版本,並正式跟蹤和控制對軟件配置的更改。4個主要組件:配置標識、配置控制、配置狀態統計、配置審計。機器學習

DevOps方法:將軟件開發,質量保證,技術操做集中在一個模型中,大幅度縮短開發、測試、部署時間。編程語言

應用編程接口(API):
1.必須考慮身份驗證要求。
2.必須完全測試安全缺陷。

軟件測試:白盒、黑盒、灰盒;靜態、動態。

代碼倉庫:
1.功能:存放源代碼;版本控制、錯誤跟蹤、web託管、發佈管理和可支持軟件開發的通訊功能。
2.安全:必須適當控制開發人員對倉庫的訪問,仔細設計訪問控制,僅容許適當的用戶讀取或寫入。

服務水平協議:除服務指標外,還包括財務和補救措施。

軟件採購:安全:
1.正確配置軟件知足安全目標
2.關注安全公告和補丁,及時修復新發現的漏洞。
3.SaaS中,安全人員也要負責監控供應商的安全,驗證供應商的安全措施。

數據庫管理系統
1.層次式數據庫以分層方式存儲數據;分佈式數據庫的數據映射關係是多對多。
2.關係數據庫:行列組成的二維表。行數爲基數,列數爲度。
候選鍵:可用於惟一標識表中記錄的屬性子集。
主鍵:從表候選鍵中選出來用來惟一標識表中記錄的鍵。
外鍵:用於強制在兩個表之間創建關係。
3.數據庫事務:4個特徵:原子性、一致性、隔離性、持久性
4.數據庫併發性:兩個進程同時更新數據,可能會丟失數據;從沒有成功提價ode事務中讀取記錄,會出現髒讀。
5.ODBC:應用程序和後端數據庫驅動程序之間的代理。
6.NoSQL:鍵值存儲,圖數據庫;文檔數據庫

存儲器類型:
1.主存儲器:內存。CPU可直接讀取。
2.輔助存儲器:硬盤,CD、DVD,可長期存儲。
3.虛擬內存:輔助存儲器模擬主存儲器。
4.虛擬存儲器:主存儲器模擬輔助存儲器,加快文件系統的讀取。
5.隨機訪問存儲器:RAM,硬盤
6.順序訪問存儲器:磁帶。

存儲器威脅:
1.非法訪問:使用加密是最好的方法。
2.隱蔽通道

基於知識的系統
1.專家系統:2個組件:知識庫(包含專家系統已知的規則),推理引擎(對知識庫中的信息進行分析,獲得正確的決策);決策不受情緒影響,適合股票等系統
2.機器學習:從數據集中分析出新知識。監督學習(使用標記數據進行訓練),非監督學習(使用未標記數據進行訓練)
3.神經網絡:計算單元鍵嘗試模仿人腦的生物學推理過程,是機器學習的延伸,又叫深度學習或認知系統
4.安全性應用:基於知識分析技術的優勢:快速作出一致決策的能力

課後習題20題,錯了4個。

相關文章
相關標籤/搜索