Prometheus涉及pprof go信息泄露漏洞整改
本文记录一下对系统渗透测试后反馈Prometheus涉及pprof go信息泄露,验证方法为http://ip:port/debug/pprof。为防止未经授权用户访问,现决定在Prometheus层面使用basic_auth加密整改。
环境配置
软件 | 版本 |
---|---|
Kylin | V10 |
Docker | 20.10.22 |
Prometheus | 2.19.0 |
1.生成basic_auth密钥
#安装工具包
yum install -y httpd-tools
#生成加密密码
htpasswd -nBC 12 '' | tr -d ':n'
New password: # 这里设置密码为Prometheus,实际使用请按照自己的集群需求定义密码
Re-type new password:
#生成的密码信息
$2y$12$SiMWc.Avsx4BE59PT88GcefVkJGBYduzMP5kXeV2EyDxgKvODGhBW
2.将密钥文件写入config.yml文件内
新建配置文件(暂时不使用TLS,使用TLS加密后Grafana获取不到数据,还需修改数据源配置)
cat > /usr/prometheus/config.yml<<EOF
basic_auth_users:
# 当前设置的用户名为admin, 可以设置多个
admin: $2y$12$SiMWc.Avsx4BE59PT88GcefVkJGBYduzMP5kXeV2EyDxgKvODGhBW
EOF
3.修改prometheus配置
scrape_configs:
- job_name: 'prometheus'
basic_auth:
username: admin
password: prometheus
static_configs:
- targets: ['prometheus:9090']
4.启动服务
4.1 service模式
修改/usr/lib/systemd/system/prometheus.service文件,在ExecStart后面追加–web.config.file=/usr/prometheus/config.yml
4.2 docker模式
修改镜像版本(≥2.40),在服务启动脚本命令内增加 —web.config.file配置
docker run -d --restart=unless-stopped --name=prometheus -p 9090:9090 -v /usr/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml -v /usr/prometheus/config.yml:/etc/prometheus/config.yml prom/prometheus:v2.24.0 --config.file=/etc/prometheus/prometheus.yml --web.config.file=/etc/prometheus/config.yml
5.访问测试
[root@localhost ~]# curl http://127.0.0.1:9090/debug/pprof/
Unauthorized
原文地址:https://blog.csdn.net/weixin_44643790/article/details/132719961
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_36272.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。