2022年,大資料對企業的重要性

wxAlm168888發表於2022-03-23

首先來講一講資料庫伺服器和資料庫哪一個更重要?

 

進入 20 2 2 年,大資料 (big data) 一詞越來越多地被提及,人們用它來描述和定義資訊爆炸時代產生的海量資料,並命名與之相關的技術發展與創新。它已經上過《紐約時報》《華爾街日報》的專欄封面,進入美國白宮官網的新聞,現身在國內一些網際網路主題的講座沙龍中,甚至被嗅覺靈敏的證券公司等寫進了投資推薦報告。
          資料正在迅速膨脹並變大,它決定著企業的未來發展,雖然現在企業可能並沒有意識到資料爆炸性增長帶來問題的隱患,但是隨著時間的推移,人們將越來越多的意識   到資料對企業的重要性。
          資料庫安全事故的層出不窮,諸如銀行內部資料洩漏造成資金失密、信用卡資訊被盜用導致的系用卡偽造、企業內部機密資料洩漏引起的競爭力下降、醫療患者資訊洩漏導致患者被 監控 ”…… ,這些情況無不說明了應用系統審計的重要性。
          我們來分析一下現今資料庫面臨的主要威脅:
      威脅  1 -  濫用過高許可權  
          當使用者(或應用程式)被授予超出了其工作職能所需的資料庫訪問許可權時,這些許可權可能會被惡意濫用。例如,一個大學管理員在工作中只需要能夠更改學生的聯絡資訊,不過他可能會利用過高的資料庫更新許可權來更改分數。
          威脅  2 -  濫用合法權  
          使用者還可能將合法的資料庫許可權用於未經授權的目的。假設一個惡意的醫務人員擁有可以通過自定義  Web  應用程式檢視單個患者病歷的許可權。通常情況下,該  Web 應用程式的結構限制使用者只能檢視單個患者的病史,即無法同時檢視多個患者的病歷並且不允許複製電子副本。但是,惡意的醫務人員可以通過使用其他客戶端(如 MS-Excel )連線到資料庫,來規避這些限制。通過使用  MS-Excel  以及合法的登入憑據,該醫務人員就可以檢索和儲存所有患者的病歷。
          威脅  3 -  許可權提升  
          攻擊者可以利用資料庫平臺軟體的漏洞將普通使用者的許可權轉換為管理員許可權。漏洞可以在儲存過程、內建函式、協議實現甚至是  SQL 語句中找到。例如,一個金融機構的軟體開發人員可以利用有漏洞的函式來獲得資料庫管理許可權。使用管理許可權,惡意的開發人員可以禁用審計機制、開設偽造的帳戶以及轉帳等。

          威脅  4 - SQL  注入  
          SQL 注入攻擊中,入侵者通常將未經授權的資料庫語句插入(或 注入 )到有漏洞的 SQL 資料通道中。通常情況下,攻擊所針對的資料通道包括儲存過程和 Web 應用程式輸入引數。然後,這些注入的語句被傳遞到資料庫中並在資料庫中執行。使用 SQL 注入,攻擊者可以不受限制地訪問整個資料庫。  
          威脅  5 –  日誌記錄不完善  
          自動記錄所有敏感的和 / 或異常的資料庫事務應該是所有資料庫部署基礎的一部分。如果資料庫審計策略不足,則組織將在很多級別上面臨嚴重風險。
          威脅  6 -  身份驗證不足  
          薄弱的身份驗證方案可以使攻擊者竊取或以其他方法獲得登入憑據,從而獲取合法的資料庫使用者的身份。攻擊者可以採取很多策略來獲取憑據。
          威脅  7 -  備份資料暴露  
          經常情況下,備份資料庫儲存介質對於攻擊者是毫無防護措施的。因此,在若干起著名的安全破壞活動中,都是資料庫備份磁帶和硬碟被盜。防止備份資料暴露所有資料庫備份都應加密。實際上,某些供應商已經建議在未來的  DBMS 產品中不應支援建立未加密的備份。建議經常對聯機的生產資料庫資訊進行加密,但是由於效能問題和金鑰管理不善問題,這一加密方法通常是不現實的,並且一般被公認為是上文介紹的細化的許可權控制的不理想的替代方法。
那麼伺服器的安全我們都需要注意一些什麼內容呢??

首先我們經常用的 linux 系統為例子

1 、更新你的伺服器

保護伺服器安全的第一件事是更新本地儲存庫,並通過應用最新的修補程式來升級作業系統和已安裝的應用程式。

在  Ubuntu  和  Debian  上:

$ sudo apt update && sudo apt upgrade -y

在  Fedora CentOS  或  RHEL

$ sudo dnf upgrade

2 、建立一個新的特權使用者

接下來,建立一個新的使用者帳戶。永遠不要以  root  身份登入伺服器,而是建立你自己的帳戶(使用者),賦予它  sudo  許可權,然後使用它登入你的伺服器。

首先建立一個新使用者:

$ adduser

通過將  sudo  組( -G )附加( -a )到使用者的組成員身份裡,從而授予新使用者帳戶  sudo  許可權:

$ usermod -a -G sudo 

3 、上傳你的  SSH  金鑰

你應該使用  SSH  金鑰登入到新伺服器。你可以使用  ssh-copy-id  命令將 預生成的  SSH  金鑰 上傳到你的新伺服器:

$ ssh-copy-id @ip_address

現在,你無需輸入密碼即可登入到新伺服器。

4 、安全強化  SSH

接下來,進行以下三個更改:

禁用  SSH  密碼認證
限制  root  遠端登入
限制對  IPv4  或  IPv6  的訪問
使用你選擇的文字編輯器開啟  /etc/ssh/sshd_config  並確保以下行:

PasswordAuthentication yes

PermitRootLogin yes

改成這樣:

PasswordAuthentication no

PermitRootLogin no

接下來,通過修改  AddressFamily  選項將  SSH  服務限制為  IPv4  或  IPv6 。要將其更改為僅使用  IPv4 (對大多數人來說應該沒問題),請進行以下更改:

AddressFamily inet

重新啟動  SSH  服務以啟用你的更改。請注意,在重新啟動  SSH  服務之前,與伺服器建立兩個活動連線是一個好主意。有了這些額外的連線,你可以在重新啟動  SSH  服務出錯的情況下修復所有問題。

在  Ubuntu  上:

$ sudo service sshd restart

在  Fedora  或  CentOS  或任何使用  Systemd  的系統上:

$ sudo systemctl restart sshd

5 、啟用防火牆

現在,你需要安裝防火牆、啟用防火牆並對其進行配置,以僅允許你指定的網路流量通過。( Ubuntu  上的) 簡單的防火牆 ( UFW )是一個易用的  iptables  介面,可大大簡化防火牆的配置過程。

你可以通過以下方式安裝  UFW

$ sudo apt install ufw

預設情況下, UFW  拒絕所有傳入連線,並允許所有傳出連線。這意味著伺服器上的任何應用程式都可以訪問網際網路,但是任何嘗試訪問伺服器的內容都無法連線。

首先,確保你可以通過啟用對  SSH HTTP  和  HTTPS  的訪問來登入:

$ sudo ufw allow ssh

$ sudo ufw allow http

$ sudo ufw allow https

然後啟用  UFW

$ sudo ufw enable

你可以通過以下方式檢視允許和拒絕了哪些服務:

$ sudo ufw status

如果你想禁用  UFW ,可以通過鍵入以下命令來禁用:

$ sudo ufw disable

你還可以(在  RHEL/CentOS  上)使用  firewall-cmd  ,它已經安裝並整合到某些發行版中。

6 、安裝  Fail2ban

Fail2ban  是一種用於檢查伺服器日誌以查詢重複或自動攻擊的應用程式。如果找到任何攻擊,它會更改防火牆以永久地或在指定的時間內阻止攻擊者的  IP  地址。

你可以通過鍵入以下命令來安裝  Fail2ban

$ sudo apt install fail2ban -y

然後複製隨附的配置檔案:

$ sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

重啟  Fail2ban

$ sudo service fail2ban restart

這樣就行了。該軟體將不斷檢查日誌檔案以查詢攻擊。一段時間後,該應用程式將建立相當多的封禁的  IP  地址列表。你可以通過以下方法查詢  SSH  服務的當前狀態來檢視此列表:

$ sudo fail2ban-client status ssh

7 、移除無用的網路服務

幾乎所有  Linux  伺服器作業系統都啟用了一些面向網路的服務。你可能希望保留其中大多數,然而,有一些你或許希望刪除。你可以使用  ss  命令檢視所有正在執行的網路服務:( LCTT  譯註:應該是隻保留少部分,而所有確認無關的、無用的服務都應該停用或刪除。)

$ sudo ss -atpu

ss  的輸出取決於你的作業系統。下面是一個示例,它顯示  SSH sshd )和  Ngnix nginx )服務正在偵聽網路並準備連線:

tcp LISTEN 0 128 *:http *:* users:(("nginx",pid=22563,fd=7))

tcp LISTEN 0 128 *:ssh *:* users:(("sshd",pid=685,fd=3))

刪除未使用的服務的方式因你的作業系統及其使用的程式包管理器而異。

要在  Debian / Ubuntu  上刪除未使用的服務:

$ sudo apt purge 

要在  Red Hat/CentOS  上刪除未使用的服務:

$ sudo yum remove 

再次執行  ss -atup  以確認這些未使用的服務沒有安裝和執行。

摘錄自: 安全強化你的  Linux  伺服器的七個步驟 

總結:伺服器安全和資料庫安全同樣重要,但是隻要一些基礎的指令碼能做好,一些基礎的攻擊都是可以防護的,如果碰到較大型的攻擊,可以聯絡小蟻君,小蟻君目前的 ddos cc 防護在業內做的很不錯的,以及包括對資料庫 rds 的防護入侵檢測系統以及主動防護系統,都是做的效果非常好的。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70015628/viewspace-2883420/,如需轉載,請註明出處,否則將追究法律責任。

相關文章