編程級別的網絡安全和運維級別的網絡安全有什麼區別?

阿說到九號687687


要知道網絡安全,首先要了解網絡模型:



  • 物理層:

該層包括物理連網媒介,如網卡。物理層的協議產生並檢測電壓以便發送和接收攜帶數據的信號。管物理層不提供糾錯服務,但它能夠設定數據傳輸速率並監測數據出錯率。網絡物理問題,如電線斷開,將影響物理層。


  • 數據鏈路層:

在物理層提供的服務的基礎上向網絡層提供服務,其最基本的服務是將源自網絡層來的數據可靠地傳輸到相鄰節點的目標機網絡層。定義瞭如何讓格式化數據以進行傳輸,以及如何讓控制對物理介質的訪問,這一層通常還提供錯誤檢測和糾正,以確保數據的可靠傳輸。


  • 網絡層:

在位於不同地理位置的網絡中的兩個主機系統之間提供連接和路徑選擇。將網絡地址翻理地址,決定了如何將數據從起始地發送到目的地。通過 發送優先權、網絡擁塞程度、服務質量、可選路由花費,決定從節點A到節點B的最佳路徑。


  • 傳輸層

定義了一些傳輸數據的協議和端口號(WWW端口80等),如:TCP(傳輸控制協議,傳輸效率低,可靠性強,用於傳輸可靠性要求高,數據量大的數據),UDP(用戶數據報協議,與TCP特性恰恰相反,用於傳輸可靠性要求不高,數據量小的數據,如QQ聊天數據就是通過這種方式傳輸的), 主要是將從下層接收的數據進行分段和傳輸,到達目的地址後再進行重組,常常把這一層數據叫做段。


  • 會話層

負責在網絡中的兩節點之間建立、維持和終止通信。 會話層的功能包括:建立通信鏈接,保持會話過程通信鏈接的暢通,同步兩個節點之間的對話,決定通信是否被中斷以及通信中斷時決定從何處重新發送。通過傳輸層(端口號:傳輸端口與接收端口)建立數據傳輸的通路,主要在你的系統之間發起會話或者接受會話請求(設備之間需要互相認識可以是IP也可以是MAC或者是主機名)。


  • 表示層

應用程序和網絡之間的翻譯官,在表示層,數據將按照網絡能理解的方案進行格式化;這種格式化也因所使用網絡的類型不同而不同。 表示層管理數據的解密與加密,如系統口令的處理。可確保一個系統的應用層所發送的信息可以被另一個系統的應用層讀取。例如,PC程序與另一臺計算機進行通信,其中一臺計算機使用擴展二一十進制交換碼(EBCDIC),而另一臺則使用美國信息交換標準碼(ASCII)來表示相同的字符。如有必要,表示層會通過使用一種通格式來實現多種數據格式之間的轉換。


  • 應用層

發送方現在已經知道自己發的是什麼東西,轉化成字節有多長。但是接收方不知道,所以應用層的網絡協議誕生了。規定發送方和接收方必須使用固定長度的消息頭。消息頭必須使用某種固定的組成。而且消息頭裡必須記錄消息體的長度等一系列信息。方便接收方能夠解析發送方發送的數據。


總結:

開發人員(編程級別網絡安全)關注的是應用層的安全,如消息傳輸的加密,防止SQL注入,防止跨站點攻擊等。

網絡管理員(運維級別網絡安全)關注的是應用層以下的安全,如ARP欺詐,DDOS攻擊等。


阿狸是呆er


編程級別和運維級別的網絡安全,在數智風看來只是視角不同,所以關注點會有所不同。這個不同的關注點就是它們的區別。

1、編程級別關注的安全

在編程這個級別,程序員每天面對的是程序代碼。主要工作是:框架設計、代碼編寫、部署測試、發佈上線。而這些工作也涉及管理過程。所以,編程這裡講安全也可以從這個幾個方向去說。

①、框架設計安全

在框架設計階段,一般都必須定義出應用系統的各個層面,組件。以及他們之間的通訊方式。比如:某個程序設計分為:數據採集、網絡傳輸、數據存儲、數據交換,數據展現。那麼我們就應該在各個層面都考慮一下安全。一般情況下會包括:

  • 通訊協議:儘量採用加密傳輸;

  • 數據格式:儘量採用二進制傳輸,或者加密文本;

  • 數據存儲:對核心機密數據需要加密存儲,需要完善的權限管理;

②、代碼編寫安全

代碼編寫主要是根據功能需求進行編寫代碼。代碼主要考慮儘量少產生bug和漏洞。因為bug和漏洞會給網絡安全帶來致命的弱點。一般有以下注意內容:

  • 防止代碼注入:源代碼中所以涉及關鍵操作的代碼關鍵字建議轉碼。避免在人機交互輸入、參數傳遞中,被黑客惡意注入代碼,導致執行效果發生變化。

  • 代碼bug:變量使用要恰當,不能混亂使用全局變量、局部變量,還有變量的上下邊界。不要出現越界bug。導致代碼奔潰或者出現漏洞;

  • 內存控制:對內存的控制的代碼,需要注意不要出現內存溢出的風險;

  • 統一的權限管理:程序模塊的權限應該可以被獨立控制,賬戶權限也應該做到合理,不要一律採用最高權限。

  • 必須輸出日誌:對於程序運行過程,必須輸出日誌,這樣才可以追蹤安全事件。

③、部署測試安全

部署測試,是代碼已經編寫好,進行部署測試。這裡涉及的安全,主要有:

  • 確保部署的測試環境涵蓋儘量多的可能環境。

  • 測試樣例足夠多,確保測試了各種可能性。

以上都是為了找出程序代碼的缺陷,把缺陷補上,後面安全問題就少。

④、發佈上線安全

這裡比較簡單,主要是程序即將進行正式環境檢驗。我們要保持安全追蹤,對運行過程發生可疑行為,要及時分析找出原因糾正。

⑤、安全管理制度

整個開發過程,除了前面的技術安全,還需要有一套安全管理制度來確保少發生人為安全因素。安全管理制度要確實可行,有監督檢查機制。

2、運維級別關注的網絡安全

在運維級別,大家關注的安全就比較多了。關注系統運行的物理安全、主機安全、存儲安全、網絡通訊安全、數據安全、應用安全。

①、物理安全

主要包括機房是否有完整的隔斷,有門禁控制有權限的人員進出。視頻監控確保可以追溯。機房的風火水電是否滿足系統運行需要。

②、主機安全:

主要包括:物理主機需要有冗餘,操作系統經常要打補丁,防病毒、防火牆必須要更新病毒庫和特徵庫。日誌需要保存至少90天。

③、存儲安全:

主要包括:物理存儲有冗餘,磁盤應該有RAID、Hotspare保護。電源、控制器都必須有冗餘。

④、網絡通訊安全

主要包括:網絡傳輸需要加密(比如SSL加密),需對網絡按照安全等級劃分不同的安全域和安全邊界。在每個域的邊界需要部署域防火牆,在網絡出口邊界需要部署出口防火牆。整個網絡建議部署IPS入侵防禦。高安全的信息系統需要部署在專網,專用網絡和互聯網採用物理隔離,數據交換通過網閘擺渡。網絡日誌也必須保存90天以上。

⑤、數據安全

主要包括:數據庫加密、數據傳輸加密,以及防篡改。如果有敏感數據需要傳輸,必須進行脫敏處理。

⑥、應用安全:

主要包括:應用程序補丁要及時更新,應用程序代碼要可審計,應用程序生成的日誌也必須保存90天以上。

⑦、安全管理制度

運維同樣需要一整套安全管理機制來保障運維過程不會出現人為故障,同時一般還會藉助堡壘機和運維管理軟件對運維人員進行權限控制和操作追蹤。

總結

綜上所述,編程級別的網絡安全和運維級別的網絡安全,大家都是從技術和管理兩個大方向去控制。但大家關注的點有所不同,所以他們的區別在於關注的不同。

  • 編程級別:更關注代碼的設計、產生、測試以及管理方面的安全。

  • 運維級別:更關注系統運行的環境、主機、網絡、存儲、數據、管理等多方面的安全。

我是數智風,用經驗回答問題,歡迎關注評論。


數智風


您好,這是兩個層面的的問題,運維安全主要依靠管理制度和一些網絡安全來支撐,做到如下幾點:

1.熟悉安全管理制度

2.熟悉現有網絡環境中的安全隱患

3.熟悉現有的網絡安全產品

4.如何使現有的安全產品發揮更大的作用

編程級別的網絡安全有如下幾點:

1.身份鑑別技術

2.數據保密技術

3.傳輸保密技術

編程方面您需要熟悉密碼學相關知識並應用到編程中。

希望對您有幫助


分享到:


相關文章: