# 簡介:
* Redis是一種非關系型數據庫
* 使用ANSI C語言編寫
* 支持網絡
* 可基于沒存亦可持久化的日志型,key-value數據庫
* 提供多種語言的API
* 為保證效率,redis與memcached一樣看,將數據緩存在內存中,周期性的把更新的數據寫入磁盤或者修改操作寫入追加的記錄文件,在此基礎上實現master-slave(主從)同步
* Redis未授權訪問漏洞:入侵者訪問到沒有權限限制的Redis時可獲取數據庫中的所有數據
# 成因:
Redis默認開放6379端口,如果在配置服務器的時候,端口開放在了0.0.0.0上,而且防火墻也沒有做防護,,就會導致其他機器可以訪問該端口,如果沒有設置鏈接密碼,就形成了這個漏洞。
# 危害:
數據層面: 如果被訪問到,可進行增刪改查的操作
系統層面:需要跟Redis啟動的權限相結合。如果以root身份啟動Redis,將獲得root權限。
# 檢測方法:
掃描所有開了6379的IP
# 防御:
* Redis訪問需要密碼
* 對網絡進行限制,如果是本機使用,可以將端口開放在127.0.0.1,如果要外部訪問,設置防火墻白名單
* 將Redis啟動權限降至nobody
* 測試Redis的時候,不能用帶有flushall的exp,因為會清空數據庫
# tip:
* web掃描器會有可能會影響客戶業務
* 配合ssh_key不會對數據庫的使用造成影響,但是有可能會利用不成功。