做IT的,這些安全知識你不得不懂!
作者:fly是個稻草人
原文連結:
以前剛接觸 IT 行業,而我身為運維開發,我以為我所需要做的安全就是修改伺服器密碼為複雜的,ssh 埠改為非 22,還有就是不讓人登入伺服器就可以保證我維護的東西安全。
工作也好幾年了,在這摸爬滾打中,遇到了伺服器被黑,網站被人 DDOS 攻擊,資料庫被篡改等等。伺服器也不是你說不讓人上就不讓人上的,所以 IT 安全這個話題還是比較沉重的,涉及的東西很多,只有你瞭解得更多,你才會知道你所瞭解的安全其實是那麼少。
網路安全
我們很多的公司和環境並未使用第三方審計系統,未能根據記錄資料進行分形,並生成審計報表。其實審計系統是很重要的,可以進行操作溯源,這可比你一張嘴說的話有用多了。
我所在的公司其實是買了一臺日誌審計系統,但是然並卵,在運維方面,我搭建了 ELK,用於對伺服器的操作溯源以及監控系統日誌和安全日誌,這個已經完全達到我想要的效果,另外的系統相關的日誌,開發人員自己也有 ELK 系統,他們是用來監控 app 裡面的行為操作,也是用於審計的。
下面就是我自己搭建的 ELK 系統用於監控伺服器操作:
其實網路安全範圍很廣,還有比如說你可以將裝置驚醒 ARP 繫結,那就可以避免 arp 攻擊等,也可以購買入侵檢測裝置、入侵防禦裝置,防火牆等,網路裝置定期修改密碼,網路裝置配置鑑別失敗登入處理功能,配置操作超時等功能,儘量使用 https 協議加密傳輸。
除上述以外,應定期自檢(漏洞掃描、弱口令掃描、基線配置資訊等),對主機的埠、弱口令、安全漏洞進行掃描和發現,對已知業務應用漏洞進行掃描和發現,對已知木馬進行掃描和發現,對掃描結果進行分析和提交,促進業務安全性管理和安全問題的解決。
主機安全
在現在大多數的公司中,作業系統未安裝主機入侵檢測系統,未能檢測到對重要伺服器進行入侵的行為,能夠記錄攻擊者的源 IP、攻擊型別、攻擊目標、攻擊時間等,未能夠在發生嚴重入侵事件時提供報警。
很多人說,這個需要購買硬體 WAF 或者入侵防禦裝置,這個的確是個不小的花銷,一般的公司估計也買不起,像我們,也買不起。
但是並不是說我們毫無辦法。我們可以在作業系統安裝實時檢測與查殺惡意程式碼的軟體產品,對惡意程式碼實時檢測與查殺,如 OSSEC 和 HIDS 等,這些產品都是免費開源的。
主機安全還包括系統配置安全、驗證安全等等。
就比如作業系統提供身份鑑別措施、配置鑑別失敗處理功能(也就是登入嘗試失敗次數,這個可以有效防止惡意破解)、加強口令複雜度要求,在原基礎上還應不含有常用字元組合、數字組合、鍵盤順序等可預測密碼組合、重要伺服器用使用資源強制訪問控制策略(如使用者、程式、檔案核心級保護)、應限制預設賬戶的訪問許可權,修改這些賬戶的預設口令,條件允許下,應重新命名預設賬戶;
應用安全
a)建議應用系統採用了兩種或兩種以上的組合機制進行使用者身份鑑別;
b)建議應用系統對賬號口令複雜度進行限制,口令長度限制為 8-20 位;要求口令為數字、字母字元至少兩種組合,限制口令週期不大於半年;
c)建議應用系統啟用登入失敗處理功能,限制次數不大於 5 次,並且對登入失敗使用者進行帳號處理;
d)建議應用系統應啟用使用者身份鑑別資訊複雜度要求和登入失敗處理功能;
e)建議應用系統對重要資訊資源設定敏感標記,系統不支援設定敏感標記的,應採用專用安全裝置生成敏感標記,用以支援強制訪問控制機制;
f)建議應用系統開啟安全審計功能,安全審計範圍覆蓋到每個使用者以及其相關操作;
g)建議應用系統開啟安全審計功能,且審計功能不能中斷和安全記錄非管理員無法刪除、修改或覆蓋;
h)建議限制應用系統一段時間的併發會話連線數;
i)建議應用系統限制一個訪問賬號或一個請求程式的最大限額;
j)建議應用系統提供服務優先順序設定功能,根據安全策略設定訪問帳戶或請求程式的優先順序,根據優先順序分配系統資源;
資料安全及備份恢復
a)建議提供異地資料備份功能,利用通訊網路將關鍵資料定時批次傳送到備用場地;
b)建議提供主要網路裝置、通訊線路和資料處理系統的硬體冗餘,保證系統的高可用性;
c)資料的開發、測試環境如果要匯入生產資料,則需要指定資料脫敏流程,將敏感的個人資訊,如銀行卡、手機號等資訊做脫敏;
d)資料的訪問要有嚴格的流程,非運維人員如要訪問資料,在走完許可權申請流程後,可以給予他讀取的許可權,但是不能給他將資料備份至本地的許可權,該操作可以透過windows堡壘機進行許可權限制,透過管理員將該人員的剪貼簿禁用即可;
e)資料庫一年要升級一次,即使你的資料庫是放在內網的,但是你不能保證你們開發人員的程式碼不會被入侵,只要程式碼被入侵,或者被植入後門,就可以透過你的程式掃描到資料庫。
資料庫的漏洞可不止一兩個,基本上一年下來,一個穩定版本的資料庫可以有 30 個左右的高危漏洞,50 個左右的中危漏洞,這些個漏洞,你靠打補丁的方式根本不是解決辦法,最好的方式還是升級到資料庫最新版本前一個穩定版;
web業務安全
a)應設定合理的會話超時閥值,在合理範圍內儘可能減小會話超時閥值,可以降低會話被劫持和重複攻擊的風險,超過會話超時閥值後立刻銷燬會話,清除會話的資訊;
b)應限制會話併發連線數,限制同一使用者的會話併發連線數,避免惡意使用者建立多個併發的會話來消耗系統資源,影響業務可用性;
c)應確保敏感資訊通訊通道的安全,建議在客戶端與 web 伺服器之間使用 SSL。並正確配置 SSL,建議使用 SSL3.0/TLS1.0 以上版本,對稱加密金鑰長度不少於 128 位,非對稱加密金鑰長度不少於 1024 位,單向雜湊值位數不小於 128 位;
d)日誌記錄範圍應覆蓋到每個使用者的關鍵操作、重要行為、業務資源使用情況等重要事件。如普通使用者異常登入、釋出惡意程式碼、異常修改賬號資訊等行為,以及管理員在業務功能及賬號控制方面的關鍵操作;
e)Web 程式上線前或升級後應進行程式碼審計,形成報告,並對審計出的問題進行程式碼升級完善;
f)應禁止明文傳輸使用者密碼,建議採用SSL加密隧道確保使用者密碼的傳輸安全;
g)應對關鍵業務操作,例如修改使用者認證鑑權資訊(如密碼、密碼取回問題及答案、繫結手機號碼等),需要經過二次鑑權,以避免因使用者身份被冒用,給使用者造成損失;
h)應避免認證錯誤提示洩露資訊,在認證失敗時,應向使用者提供通用的錯誤提示資訊,不應區分是賬號錯誤還是密碼錯誤,避免這些錯誤提示資訊被攻擊者利用;
i)應支援密碼策略設定,從業務系統層面支援強制的密碼策略,包括密碼長度、複雜度、更換週期等,特別是業務系統的管理員密碼;
j)應支援賬號鎖定功能,系統應限制連續登入失敗次數,在客戶端多次嘗試失敗後,伺服器端需要對使用者賬號進行短時鎖定,且鎖定策略支援配置解鎖時長;
k)應採取會話保護措施防止軟體與伺服器之間的會話不可被篡改、偽造、重放等;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31559358/viewspace-2375019/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 這些關於WebSocket的知識,你知道多少?Web
- Netty中的這些知識點,你需要知道!Netty
- 學HTML5開發,summary標籤的這些知識不得不知!HTML
- 關於JVM,你必須知道的這些知識點JVM
- 【網路安全知識】這些常見的WebShell管理工具你都用過嗎?Webshell
- 這些鮮為人知的前端冷知識,你都GET了嗎?前端
- 二代徵信已經來了,這些常識你還不懂麼
- Android 你不得不學的HTTP相關知識AndroidHTTP
- Nacos必知必會:這些知識點你一定要掌握!
- 學習 Java,你不得不知的泛型知識Java泛型
- 面試大廠才發現,索引都問這些底層知識?更怕的是自己不懂原理!面試索引
- 致剛入門的Web前端小白,這些知識你瞭解嗎?Web前端
- 關於美顏SDK,還有這些你不知道的知識
- 關於Linux系統,這些知識你都瞭解嗎?Linux
- 學習網路安全,這些必備基礎知識不能少!
- 錯錯錯!這些你絕對不知道的手機冷知識!
- 你需要知道這些關於技術美術的知識構成
- 要成為架構師,你需要掌握這些知識體系!架構
- Java全家桶的這些知識,不用學了Java
- 你不得不知道的MyBatis基礎知識之<resultMap>(4)MyBatis
- 這些喜聞樂見的Java面試知識點,你都掌握了嗎?Java面試
- 這些必會的計算機網路知識點你都掌握了嗎計算機網路
- 建立索引,這些知識應該瞭解索引
- 作為一個程式設計師,CPU的這些硬核知識你必須會!程式設計師
- 關於深度學習,這些知識點你需要了解一下深度學習
- 做前端的你還沒用這些軟體?? out 啦前端
- 隨意寫寫,記錄自己這些年的知識
- ES6的這些新知識你記住了沒?
- 第一講 你應該瞭解這些簡單的計算機基礎知識計算機
- 玩轉 JavaScript 之不得不懂的原型JavaScript原型
- 構建高效能佇列,你不得不知道的底層知識!佇列
- 想要成為黑客?那你需要學會這些知識黑客
- Web前端主要學什麼?這些知識要掌握Web前端
- 考不考CCSP認證,這些知識也要知道
- 做iOS自動化測試必須知道的一些知識iOS
- 面試官帶你學Android——面試中Handler 這些必備知識點你都知道嗎?面試Android
- Java 異常你必須瞭解的一些知識Java
- 不懂設計知識怎麼製作自己的logo?Go