- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業務經營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯網協會理事單位
- 安全聯盟認證網站身份V標記
- 域名注冊服務機構許可:滇D3-20230001
- 代理域名注冊服務機構:新網數碼
漏洞描述:
memcache是一套常用的key-value緩存系統,由于它本身沒有權限控制模塊,所以開放在外網的memcache服務很容易被攻擊者掃描發現,通過命令交互可直接讀取memcache中的敏感信息。
修復方案:
因memcache無權限控制功能,所以需要用戶對訪問來源進行限制。
以下方案基于Linux CentOS:
方案一:(啟動時綁定監聽IP)
如果memcache沒有在外網開放的必要,可在memcached啟動的時候指定綁定的ip地址為 127.0.0.1。例如:
memcached -d -m 1024 -u root -l 127.0.0.1 -p 11211 -c 1024 -P /tmp/memcached.pid
其中 -l 參數指定為本機地址。
方案二:(修改默認監聽端口)
更改memcached 默認監聽端口為11211 以外的端口,以下以新端口19203為例:
memcached -d -m 1024 -u memcached -l 127.0.0.1 -p 19203 -c 1024 -P /tmp/memcached.pid
參數說明:
-d選項是啟動一個守護進程;
-m是分配給Memcached使用的內存數量,單位是MB,我這里是100MB;
-u是運行Memcached的用戶,推薦單獨普通權限用戶:memcached,不要使用root權限賬戶;
-l是監聽的服務器IP地址我這里指定了服務器的IP地址x.x.x.x;
-p是設置Memcached監聽的端口,我這里設置了19203,最好是1024以上的端口;
-c選項是最大運行的并發連接數,默認是1024,我這里設置了512,按照你服務器的負載量來設定;
-P是設置保存Memcached的pid文件,我這里是保存在 /tmp/memcached.pid;
方案三:(配置防火墻訪問控制)
如果memcache服務需要對外提供服務,則可以通過iptables進行訪問控制,下面是只允許本機及外部IP 1.1.1.1訪問:
// accept
iptables -A INPUT -p tcp -s 127.0.0.1 --dport 11211 -j ACCEPT
iptables -A INPUT -p udp -s 127.0.0.1 --dport 11211 -j ACCEPT
iptables -A INPUT -p tcp -s 1.1.1.1 --dport 11211 -j ACCEPT
iptables -A INPUT -p udp -s 1.1.1.1 --dport 11211 -j ACCEPT
// drop
iptables -I INPUT -p tcp --dport 11211 -j DROP
iptables -I INPUT -p udp --dport 11211 -j DROP
// 保存規則并重啟 iptables
service iptables save
service iptables restart
上述規則的意思是只允許本機及外部IP 1.1.1.1 對11211端口進行訪問,如已經變更默認監聽端口,請變更--dport 的端口為新端口。
驗證 memcache 端口11211開啟情況:
以memcached 服務器IP(2.2.2.2),外部IP 1.1.1.1,在外部IP 服務器上運行telnet檢測為例:
telnet 2.2.2.2 11211
無需用戶名密碼,1.1.1.1可以直接連接memcache 服務(2.2.2.2)的11211端口。
方案四:(最小化權限運行)
使用普通權限賬號運行,以下指定memcached 用戶運行
memcached -d -m 1024 -u memcached -l 127.0.0.1 -p 11211 -c 1024 -P /tmp/memcached.pid
方案五:(升級為最新版本)
在編譯安裝memcached程序時添加-enable-sasl選項,并且在啟動memcached服務程序時添加-S參數,啟用SASL認證機制以提升memcached的安全性
執行如下命令獲得相應結果:
# stats //查看memcache 服務狀態
# stats items //查看所有items
# stats cachedump 32 0 //獲得緩存key
# get :state:264861539228401373:261588 //通過key讀取相應value ,獲得實際緩存內容,造成敏感信息泄露
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP