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