未授权访问:MongoDB未授权访问漏洞

目录

1、漏洞原理

2、环境搭建

3、未授权访问

防御手段


今天继续学习各种未授权访问的知识和相关的实操实验,一共有好多篇,内容主要是参考先知社区的一位大佬的关于未授权访问的好文章,还有其他大佬总结好的文章:

这里附上大佬的好文章链接:常见未授权访问漏洞总结 - 先知社区

我在这只是学习大佬总结好的相关的知识和实操实验,那么废话不多说,开整。

第二篇是关于MongoDB的未授权访问

1、漏洞原理

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

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

2、环境搭建

首先我们就是需要搭建一下漏洞环境

环境配置:

复制代码
攻击机:Kali 192.168.159.151 / windos 192.168.159.1
 
服务器:ubuntu 192.168.159.202

这里使用docker搭建环境

docker安装可以参考:Docker: 改变容器化世界的革命性技术-CSDN博客

复制代码
docker pull mongo  #从镜像仓库中拉取或者更新指定镜像

复制代码
docker images mongo #列出本地主机上的mongo镜像

复制代码
docker run -d -p 27017:27017 --name mongodb mongo  # 创建一个新的容器并运行一个命令
docker ps -a # 显示所有的容器,包括未运行的

3、未授权访问

这里使用 NoSQLBooster

下载地址:​​​​​​https://s3.mongobooster.com/download/releasesv5/nosqlbooster4mongo-5.1.12.exe

然后输入信息尝试进行连接:

可以看到在没有输入任何密码的时候测试连接成功了

防御手段

  • -为MongoDB添加认证:MongoDB启动时添加--auth参数、为MongoDB添加用户
  • -MongoDB 自身带有一个HTTP服务和并支持REST接口。在2.6以后这些接口默认是关闭的。mongoDB默认会使用默认端口监听web服务,一般不需要通过web方式进行远程管理,建议禁用。修改配置文件或在启动的时候选择 --nohttpinterface 参数 nohttpinterface=false
  • -启动时加入参数--bind_ip 127.0.0.1 或在/etc/mongodb.conf文件中添加以下内容:bind_ip = 127.0.0.1

相关推荐
摇滚侠3 小时前
《On Java 中文版 基础卷》阅读笔记 实现隐藏 12
java·数据库·笔记
川石课堂软件测试3 小时前
学习软件测试需掌握的一些知识
数据库·python·sql·功能测试·网络协议·mysql·http
2501_937767164 小时前
自建 SQL 数据库定时备份踩坑复盘与落地思路
数据库·sql
silvamux_5 小时前
10款模型写种草笔记:可发布性、返工来源与成本数据缺口复盘
java·数据库·笔记
I Am a robert girl7 小时前
从 GameHorizon 拆解多时间尺度游戏评测:数据管线、离线基准与在线回放的三层设计
数据库·游戏·多时间尺度·数据管线·游戏评测·离线基准·在线回放
安教安全员通关宝7 小时前
2026年吉林安全员C3证考试题库+答案+解析
安全
躺柒7 小时前
读数据安全架构设计与实践17安全架构案例(下)
数据库·安全·零信任·安全架构·防火墙·无边界
HackTwoHub7 小时前
双通道红队 C2,MCP 接入 AI,全自动渗透实战利器,具备自动提权、进程伪装、无文件上线能力,载荷 AES 加密
安全·web安全·网络安全·系统安全·密码学·可信计算技术·安全架构
SelectDB7 小时前
实时更新排错现场:导入了却查到旧数据,和 FINAL 越加越慢的两条路
大数据·数据库·数据分析
学页官方8 小时前
【安全实操】教培系统上线前的安全检查清单(20条)
安全