Redis未授權訪問漏洞復現
- 1.1 Redis環境配置
- 1.2 靶機CS的環境部署及攻擊機Kali的戰斗部署
- 2.1漏洞復現程序中可能出現的一些問題
- 2.2漏洞利用的小姿勢
1.1 Redis環境配置
漏洞靶機(Centos7.9):192.168.55.136
攻擊機(kali):192.168.55.129
1、安裝redis
①首先可以創建用于安裝redis檔案配置的目錄
mkdir /usr/local/redis
②進入redis檔案并下載redis安裝包
cd /usr/local/redis/
wget http://download.redis.io/releases/redis-3.2.0.tar.gz
其中wget是一個下載檔案的工具,它用在命令列下,通常在我們經常要下載一些軟體或從遠程服務器恢復備份到本地服務器時使用;

tar xzf redis-3.2.0.tar.gz 在當前地址進行解壓,生成redis-3.2.0檔案夾

③ 進入解壓后的redis-3.2.0檔案夾
cd /usr/local/redis/redis-3.2.0
make 編譯安裝
注:
make工具是一個根據makefile檔案內容,針對目標(可執行檔案)進行依賴性檢測(要生成該可執行檔案之前要有哪些中間檔案)并執行相關動作(編譯等)的工具
,而這個makefile檔案類似一個腳本,其中內容包含make所要進行的處理動作以及依賴關系,
另外make的一個好處就是當你對某個源檔案進行了修改,你再次執行 make 命令,它將只編譯與該源檔案相關的目標檔案而不是整個代碼工程,結果生成.o和可執行檔案:
④編譯后出現如下界面顯示成功,編譯好了redis檔案;

⑤vim redis.conf —>修改默認組態檔
注意一下這一步:按小編的配置路徑的話:
redis在 /usr/local/redis/redis-3.2.0 src檔案夾是在/usr/local/src
對檔案路徑繞混的小伙伴可以看,頁面的home檔案下–>other locations–>usr–>~~
redis安裝完成,我們需要修改組態檔,配置允許可以遠程訪問,
⑥組態檔詳情(特別注意)
兩種方法:
①一處:在bind 127.0.0.1前面加上#號進行注釋,并將protected-mode設定為no,
②一處#去掉,二處開啟bind 127.0.0.1回環地址(保留地址),意思就是可以連接本機,用redis連接本機也有效;
開啟192.168.55.136是由于可以使目標機索引本機ip,不可能別人連接你的回環地址吧;同時也要將protected-mode設定為no;
修改檔案時vi命令模式時查詢的命令 /xx,n向下查詢N向上查詢,查找那個protected-mode開關;
1.2 靶機CS的環境部署及攻擊機Kali的戰斗部署
一,對靶機CS的環境部署
1,想要啟動redis-server和redis-cli不用每次都進入安裝目錄,可以復制執行的這兩個檔案放到etc檔案下,但不是特別建議,畢竟為系統組態檔夾,少放點好,只是為了實驗方便,
cd src
cp redis-cli /usr/bin
cp redis-server /usr/bin
cp redis.conf /etc/
2,啟動redis-server
redis-server /etc/redis.conf
顯示如下界面就成功了
3,驗證是否成功啟動了redis服務
netstat -nulpt|grep 6379/redis
ps -ef | grep redis
①
②
二,攻擊機對kali系統的戰斗部署
4,配置安裝(啟動redis)好環境,俺們都是大聰明_,那直接上原先的代碼
mkdir /usr/local/redis
cd /usr/local/redis/
wget http://download.redis.io/releases/redis-3.2.0.tar.gz
tar xzf redis-3.2.0.tar.gz cd /usr/local/redis/redis-3.2.0 進入redis
make
redis-server /etc/redis.conf
5,大快人心的時刻,驗證未授權訪問
首先在攻擊機kali上掃描靶機開啟的埠情況
nmap -p 6379 --script redis-info 192.168.55.136 -->驗證Redis未授權訪問漏洞
掃描結果:掃描出來靶機CS(centos7)在6379埠開啟了redis服務;
6,開始戰斗模式啦
./redis-cli -h 192.168.55.136 -p 6379
2.1漏洞復現程序中可能出現的一些問題
num1–>連接不上,被靶機redis拒絕訪問

這時查看centos防火墻是否關閉,并查看1、安裝redis的第三步③是否正確配置;
防火墻的開關:(1)關閉防火墻:systemctl stop firewalld
? (2)檢查防火墻狀態:systemctl status firewalld
想要了解關于防火墻命令的小知識請看俺的其他小文章哦~~~
num2–>Could not connect to Redis at 192.168.1.103:6379:No route to host
應該是centos的防火墻還沒有開啟6379埠,所以無法進行訪問,這里需要打開埠模擬真實環境才能正常連接,
firewall-cmd --zone=public --add-port=6379/tcp --permanent 開放6379埠
firewall-cmd --reload 配置立即生效
繞后再次連接即可成功了;
num3–>出現以下頁面,同num1處理方式一樣,得開放本機ip被遠程連接;

2.2漏洞利用的小姿勢
主要是需要了解Redis的常見基本命令
① info 查看redis版本資訊、一些具體資訊、服務器版本資訊等等:
②獲取默認的redis目錄、和rdb檔案名:
CONFIG GET dir
CONFIG GET dbfilename

其他利用姿勢有待后續學習更新~
各位道友學習后有疑問互相探討哦,星海中探尋知識!!!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/301211.html
標籤:其他
