🌟 欢迎来到【漏洞防范与应对:从发现到修复的全攻略】专栏!在这里,我将深入分享我的日常运维经验,特别是漏洞处理的过程与方法,同时记录每一次成功修复漏洞的历程。🛡️
🔍 运维,就像是站在网络安全的最前线。每一个新发现的漏洞,都是对我们专业能力的挑战。在本专栏中,我将引导你深入这个“战场”,共同体验从漏洞发现到彻底修复的完整旅程。
📝 我不仅会深入剖析技术细节,还会分享那些来自实战的宝贵经验。希望我的分享能让你更深入地理解漏洞处理的实际操作,并从中获得启发,提升你的运维技能。
💪 朋友们,让我们携手踏上这段探索之旅,共同捍卫网络的安全与稳定。期待在这个专栏中与你一同成长,共同见证每一次漏洞修复的成功!
一、漏洞概述📖
漏洞名称
Prometheus Pushgateway推送网关 存在未授权访问漏洞 【原理扫描】
CVE编号
-
漏洞级别
中危
漏洞描述/危害
Prometheus Pushgateway(推送网关)是 Prometheus 监控系统的一个组件,主要用于解决一些短寿命任务(如批处理作业或临时服务)产生的指标数据无法通过 Prometheus 的传统拉取模型获取的问题。 Prometheus Pushgateway存在未授权访问漏洞,攻击者可通过该漏洞获取敏感信息,造成敏感信息泄露。
解决方案 ⚠️
建议根据官方配置身份验证: https://github.com/prometheus/pushgateway。
二、漏洞修复方法🛠️
2.1 修复步骤 🔧
- 详细列出每一步的修复操作流程 📋
1、安装密码生成工具
yum -y install httpd-tools
2、生成密码
htpasswd -nBC 12 ‘’ | tr -d ‘:\n’
3、创建配置文件config.yml
- 注:/usr/local/pushgateway是我服务部署的路径
vi /usr/local/pushgateway/config.yml
basic_auth_users:
admin: 第2步生成的token
4、配置pushgateway.service
- 新增–web.config.file=/usr/local/pushgateway/config.yml
[Unit]
Description=Pushgateway
[Service]
Type=simple
User=root
Group=root
ExecStart=/usr/local/pushgateway/pushgateway \
--web.listen-address=:9080 \
--web.config.file=/usr/local/pushgateway/config.yml \
--persistence.file="/usr/local/pushgateway/metrics.db" \
--log.level=info
ExecReload=/bin/kill -HUP
Restart=on-failure
[Install]
WantedBy=multi-user.target
5、重启pushgateway.service
systemctl daemon-reload
systemctl restart pushgateway.service
2.2 验证修复效果 ✅
- 描述验证方法和期望的结果 🔍
请求pushgateway服务出现Unauthorized证明加密成功
- 确保漏洞已被成功修复 💪
三、经验与反思💡
在添加新策略后,务必立即进行验证,确保策略已正确实施,并检查数据是否按预期正常采集,以保障系统的正常运行。
3.1 加密后Prometheus获取pushgateway数据也要添加账密才能获取数据
1、添加账密配置
- password:是生成密码是输入的明文密码
2、重启prometheus.service
systemctl restart prometheus.service