redis漏洞引發的入侵

有一臺服務器莫名其妙的無法正常免密登錄了,密碼登錄也被禁止了:只好去機房直接接上顯示器檢查。結果發現免密相關文件authorized_keys被修改的一塌糊塗:不是像其他木馬或者病毒那樣只是增加自己的免密登錄信息,而是全部寫成亂碼形式:文件開頭可以看到"REDIS0007redis-ver3.2.8"的字樣。 一開始感覺是木馬故意混淆視線嫁禍redis(事後才發現是redis沒有設置登錄密碼導致被入侵)。查了半天沒有發現可疑進程,於是利用auditctl監控authorized_keys,發現是redis-server進程去修改該文件。第一反應是redis-server是不是被木馬替換了。但是檢查發現redis-server的binary 文件是從源碼編譯的,源碼是從官網下載的。

後來查詢資料:

https://zhuanlan.zhihu.com/p/25015624

發現應該是未設置密碼保護導致redis服務被惡意入侵。

親自試驗下發現確實可行。

這裏需要說明下:

從源碼編譯後直接以root用戶運行redis-server,會導致redis-server的進程是root權限,於是通過6379端口登錄redis後可以幹很多事兒。

但是如果是yum 安裝的話,使用systemctl start redis僅僅是以redis用戶運行,即使黑客進入也需要進一步提權才能幹壞事。


但是僅僅設置密碼,還是有被暴力破解的可能:所以還是加入iptables定義允許訪問redis服務的ip範圍比較好:

iptables -I INPUT -p TCP --dport 6379 -j REJECT
iptables -I INPUT -s 127.0.0.1/32 -p tcp -m tcp --dport 6379 -j ACCEPT 
iptables -I INPUT -s 192.168.6.178/32 -p tcp -m tcp --dport 6379 -j ACCEPT 


記得安排好插入順序。避免reject不生效:這裏使用Insert,所以REJECT放在第一條。如果是Append,則REJECT必須放在最後一條。






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章