等保2.0測評:Redis 數據庫配置


前期調研

針對於等保前期系統情況方面,這里我們要了解的是數據庫的版本。

查看數據庫版本:運維人員一般都會配置redis命令的環境變量,如果下面命令不行就用 find 找吧,一些基礎知識這里就不說了。

1)服務器本地查看

redis-server -v

redis-server --version

1620293521_6093b791658dd0aa467f0.png!small?1620293522026

2)登錄到數據庫內查詢

登錄數據庫:redis-cli -h 127.0.0.1 -p 6379    -h后面跟ip,-p跟端口

一般是本地登錄,直接 redis-cli 即可登錄,當然前提是沒有修改過Redis的服務端口。

登錄到數據庫后,我們輸入:info

1620294084_6093b9c4359b26268cae4.png!small?1620294084776

一、身份鑒別

a)應對登錄的用戶進行身份標識和鑒別,身份標識具有唯一性,身份鑒別信息具有復雜度要求並定期更換

1. 身份鑒別和標識

默認情況下redis數據庫是無口令直接登錄的:直接輸入redis-cli 即可登錄

1620294168_6093ba18b50d9361da67d.png!small?1620294169284

所以我們要查看redis配置文件,一般為redis.conf,在redis主目錄下

查看requirepass參數是否不為注釋狀態:

1620294296_6093ba98c2876f972fa11.png!small?1620294297333

如果不是注釋狀態,如上圖,后面跟着的 ***y@123 就是密碼,是明文存儲的。

如果設置過口令,則會提示

1620294328_6093bab84f5ace66bab03.png!small?1620294328832

注意:這里沒有用戶的概念,只能加一個口令驗證。

2. 身份鑒別信息具有復雜度並定期更改

沒辦法滿足這個要求,無口令復雜度、最長使用期限設置功能。

這里核查用戶當前口令復雜度是否滿足要求。

擴展:Redis 數據庫開啟口令驗證

1)通過配置文件進行配置

在 redis.conf 中找到 requirepass foobared參數

1620294568_6093bba8838a0eb19b118.png!small?1620294569177

取消requirepass前面的注釋,並將將foobared改成相應密碼,然后重啟數據庫即可

再嘗試登錄,此時可以連接,但無法執行一些相關命令

1620294623_6093bbdf3456cab1aba18.png!small?1620294623746

需要使用auth password命令進行登錄

1620294652_6093bbfc0726d9a12bb54.png!small?1620294652625

或者使用 redis-cli -h 127.0.0.1 -p 6379 -a "mypass" 進行登錄(不建議使用)

因為這樣明文密碼會留存到 history 里面,不安全。

1620294712_6093bc3841718e454c417.png!small?1620294713030

2)通過命令行配置(臨時)

config set requirepass ***y@1234

config get requirepass

1620294770_6093bc7256036059dadbb.png!small?1620294771174

然后嘗試配置文件中配置的老密碼登錄redis,會發現原來的不可用,被拒絕

1620294802_6093bc92d7285a9bbf9d2.png!small?1620294803594

但是再重啟redis后,將會引用配置文件中的口令

b)應具有登錄失敗處理功能,應配置並啟用結束會話、限制非法登錄次數和當登錄連接超時自動退出等相關措施

1. 登錄失敗處理功能

沒有這個功能,詢問管理人員是否有第三方措施。

默認不符合。

2. 操作超時自動退出功能

查看redis配置文件,一般為redis.conf,在redis主目錄下

查看timeout的值,默認為0永不退出

1620294888_6093bce8b4f4647f32d20.png!small?1620294889338

這里設置的就是,120秒退出后要求重新進行身份鑒別。

超過這個時間它就要求重新進行身份鑒別了。

1620294948_6093bd24a354c0544381d.png!small?1620294949390

c)當進行遠程管理時,應采取必要措施防止鑒別信息在網絡傳輸過程中被竊聽

默認情況下:

1620347290_6094899ad5b9540dd542f.png!small?1620347291872

抓包出來是明文傳輸的

1620347326_609489be49c376099b106.png!small?1620347327504

這個要去詢問管理人員是否做了相關措施防止鑒別信息在傳輸過程中被竊聽。

默認不符合。

d)應采用口令、密碼技術、生物技術等兩種或兩種以上組合的鑒別技術對用戶進行身份鑒別,且其中一種鑒別技術至少應使用密碼技術來實現

這個一般不會去做,我們只要現場核查它是否使用了雙因素認證就行了。

二、訪問控制

由於Redis數據庫沒有用戶這個概念,通過單一的口令驗證就可以登錄,擁有所有權限,所以針對訪問控制這個控制點,有些是判不適用,有些是判不符合的,這個我覺得可以根據機構自己的要求來進行判斷,畢竟目前沒有一個統一的標准。

a)應對登錄的用戶分配賬戶和權限

無用戶概念,通過口令驗證,擁有所有權限。

b)應重命名或刪除默認賬戶,修改默認賬戶的默認口令

無默認賬戶存在。不適用

c)應及時刪除或停用多余的、過期的賬戶,避免共享賬戶的存在

無賬戶概念。

d)應授予管理用戶所需的最小權限,實現管理用戶的權限分離

無法分權,做不到。

e)應由授權主體配置訪問控制策略,訪問控制策略規定主體對客體的訪問規則

無授權主體。

f)訪問控制的粒度應達到主體為用戶級或進程級,客體為文件、數據庫表級

無用戶概念。

g)應對重要主體和客體設置安全標記,並控制主體對有安全標記信息資源的訪問

做不到。

三、安全審計

a)應啟用安全審計功能,審計覆蓋到每個用戶,對重要的用戶行為和重要安全事件進行審計

查看redis配置文件,一般為redis.conf,在redis主目錄下

查看loglevel、logfile參數,我安裝的該版本默認情況下:

1620347938_60948c227b02201040532.png!small?1620347939589

redis支持通過loglevel配置項設置日志等級,共分四級,即debug、verbose、notice、warning。

redis也支持通過logfile配置項來設置日志文件的生成位置。如果設置為空字符串,則redis會將日志輸出到標准輸出,日志將會發送給/dev/null。

這里我們配置一下,將日志輸出到如下文件中。

1620347959_60948c3731e6a55a97fac.png!small?1620347960188

重啟后,日志就會寫入到這個文件中

1620348329_60948da9145f1a8b6bc94.png!small?1620348330433

所以這里我們要確定兩個參數:loglevel、logfile。

且logfile必須要配置,因為不配置就不會留存對應的日志了。

b)審計記錄應包括事件的日期和時間、用戶、事件類型、事件是否成功及其他與審計相關的信息

默認符合,日志時間跟隨系統時間。比如我剛重啟了數據庫,就會產生對應日志。

1620348443_60948e1b9fe6841d70d6f.png!small?1620348444645

c)應對審計記錄進行保護,定期備份,避免受到未預期的刪除、修改或覆蓋等

存儲在操作系統上的日志文件權限,不得超過644,默認不刪應該永久保存。

1620348496_60948e506422171dad5e7.png!small?1620348497482

定期備份問題,詢問管理人員是否有做即可。

d)應對審計進程進行保護,防止未經授權的中斷

默認符合。

無法中斷日志文件輸出,但是可以修改日志記錄等級。

1620348560_60948e904f0d9eaa0e73b.png!small?1620348561399

四、入侵防范

以下條款為:不適用

a)應遵循最小安裝的原則,僅安裝需要的組件和應用程序

b)應關閉不需要的系統服務、默認共享和高危端口

d)應提供數據有效性檢驗功能,保證通過人機接口輸入或通過通信接口輸入的內容符合系統設定要求

f)應能夠檢測到對重要節點進行入侵的行為,並在發生嚴重入侵事件時提供報警

涉及到的:

c)應通過設定終端接入方式或網絡地址范圍對通過網絡進行管理的管理終端進行限制

找到redis的配置文件,一般為redis.conf,可以先找NETWORK,下面會有個bind

1620348743_60948f472b50f86c9d49b.png!small?1620348744255

注釋情況下為任意IP訪問,可設置指定 IP,以空格分割。這里只要看bind后面跟的ip地址即可。

e)應能發現可能存在的已知漏洞,並在經過充分測試評估后,及時修補漏洞

這條就結合漏掃、測試等方法進行判斷,redis這玩意可是出了名的漏洞多。。

像非授權訪問漏洞,本地也測試過能成功,這里就不細說了,交給滲透工程師去看吧,然后我們等保的拿他們的報告確認是否存在對應漏洞即可。

五、數據完整性

針對這個數據庫,下面兩條默認都是不符合。詢問管理人員是否做了相關措施來保證數據的完整性。

a)應采用校驗技術或密碼技術保證重要數據在傳輸過程中的完整性,包括但不限於鑒別數據、重要業務數據、重要審計數據、重要配置數據、重要視頻數據和重要個人信息等

b)應采用校驗技術或密碼技術保證重要數據在存儲過程中的完整性,包括但不限於鑒別數據、重要業務數據、重要審計數據、重要配置數據、重要視頻數據和重要個人信息等

六、數據保密性

這個保密性同理,針對這個數據庫,下面兩條默認都是不符合。詢問管理人員是否做了相關措施來保證數據的保密性。

a)應采用密碼技術保證重要數據在傳輸過程中的保密性,包括但不限於鑒別數據、重要業務數據和重要個人信息等

b)應采用密碼技術保證重要數據在存儲過程中的保密性,包括但不限於鑒別數據、重要業務數據和重要個人信息等

七、數據備份恢復

a) 應提供重要數據的本地數據備份與恢復功能

這個沒啥好說的,直接去問管理人員備份怎么做的,是否有措施保證備份數據有效(有測試記錄即可)。

b)應提供異地實時備份功能,利用通信網絡將重要數據實時備份至備份場地

詢問管理員

c)應提供重要數據處理系統的熱冗余,保證系統的高可用性

這個根據實際情況來看,是否有熱冗余的必要性。沒有個人認為可判不適用。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM