(修复方案)kibana 未授权访问漏洞

(修复方案)kibana 未授权访问漏洞

  • [1. 存在未授权访问,启用 xpack.security](#1. 存在未授权访问,启用 xpack.security)
  • [2. 不支持xpack,可以使用反向代理添加认证](#2. 不支持xpack,可以使用反向代理添加认证)
  • [3. 设置访问白名单](#3. 设置访问白名单)

1. 存在未授权访问,启用 xpack.security

(1)在 kibana.yml 中添加

bash 复制代码
elasticsearch.username: "kibana_system"
elasticsearch.password: "your-password"
xpack.security.enabled: true

(2)然后在 Elasticsearch 中启用内置用户并设置密码:

bash 复制代码
./bin/elasticsearch-setup-passwords interactive

(3)重启 Kibana 和 Elasticsearch 后,即可通过用户名密码访问

2. 不支持xpack,可以使用反向代理添加认证

在 Nginx 或 Apache 反向代理前面加一层 Basic Auth 或 OAuth 认证,以 Nginx + Basic Auth 为例:

(1) 安装 htpasswd 工具,这个工具用来生成 Basic Auth 的用户名密码文件

bash 复制代码
# CentOS/RHEL
sudo yum install httpd-tools -y

# Ubuntu/Debian
sudo apt-get install apache2-utils -y

(2)创建认证文件

bash 复制代码
# admin 是用户名,输入后会让你设密码
# 认证文件路径 /etc/nginx/.htpasswd 可以自定义
sudo htpasswd -c /etc/nginx/.htpasswd admin

(3)配置 Nginx 反向代理

bash 复制代码
server {
    listen 80;
    server_name kibana.example.com;

    location / {
        auth_basic "Restricted Access";
        auth_basic_user_file /etc/nginx/.htpasswd;

        proxy_pass http://127.0.0.1:5601;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

(4)重启 Nginx

bash 复制代码
sudo systemctl restart nginx

此时访问 http://kibana.example.com 时会要求输入账号密码

3. 设置访问白名单

仅允许内网或特定 IP 访问 Kibana 服务,在 kibana.yml 中配置绑定地址:

bash 复制代码
server.host: "127.0.0.1"

随后重启 Kibana

相关推荐
Flynt3 天前
npm v12 来了:allowScripts 默认关闭,我的项目差点跑不起来
安全·npm·node.js
冬奇Lab7 天前
Skill 系列(02):Skill 安全风险——三类攻击面的实战测试
人工智能·安全·开源
Aphasia31111 天前
VPN 与内网穿透
安全
Mr_愚人派12 天前
当"Claude"不再是 Claude:一次第三方 API 代理引发的 AI 身份伪造排查实录
人工智能·安全
DaLi Yao13 天前
【无标题】
人工智能·安全
Alsn8613 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
网络研究院13 天前
2026年网络安全
网络·安全·法律·法规·趋势·发展
treesforest13 天前
AI安全系统如何识别异常访问?IP风险识别正在成为关键能力
网络·人工智能·tcp/ip·安全·web安全
零零信安13 天前
零零信安荣登数世咨询《新质·数字安全专精百强(2026)》暗网情报领域,彰显专业实力与创新引领
安全·网络安全·数据泄露·暗网·零零信安
开发小能手-roy13 天前
StringBuilder vs StringBuffer:2024年还需要线程安全字符串吗?
开发语言·python·安全