mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
106 lines
5.9 KiB
Markdown
106 lines
5.9 KiB
Markdown
# 8086 - Pentesting InfluxDB
|
||
|
||
{{#include ../banners/hacktricks-training.md}}
|
||
|
||
## Basic Information
|
||
|
||
**InfluxDB** एक ओपन-सोर्स **टाइम सीरीज डेटाबेस (TSDB)** है जिसे InfluxData द्वारा विकसित किया गया है। TSDBs को टाइम सीरीज डेटा को स्टोर और सर्व करने के लिए ऑप्टिमाइज़ किया गया है, जिसमें टाइमस्टैम्प-मान जोड़े होते हैं। सामान्य प्रयोजन के डेटाबेस की तुलना में, TSDBs टाइम सीरीज डेटासेट्स के लिए **स्टोरेज स्पेस** और **परफॉर्मेंस** में महत्वपूर्ण सुधार प्रदान करते हैं। वे विशेषीकृत संकुचन एल्गोरिदम का उपयोग करते हैं और पुराने डेटा को स्वचालित रूप से हटाने के लिए कॉन्फ़िगर किए जा सकते हैं। विशेषीकृत डेटाबेस इंडेक्स भी क्वेरी प्रदर्शन को बढ़ाते हैं।
|
||
|
||
**डिफ़ॉल्ट पोर्ट**: 8086
|
||
```
|
||
PORT STATE SERVICE VERSION
|
||
8086/tcp open http InfluxDB http admin 1.7.5
|
||
```
|
||
## Enumeration
|
||
|
||
एक पेंटेस्टर के दृष्टिकोण से, यह एक और डेटाबेस है जो संवेदनशील जानकारी संग्रहीत कर सकता है, इसलिए यह जानना दिलचस्प है कि सभी जानकारी को कैसे डंप किया जाए।
|
||
|
||
### Authentication
|
||
|
||
InfluxDB को प्रमाणीकरण की आवश्यकता हो सकती है या नहीं
|
||
```bash
|
||
# Try unauthenticated
|
||
influx -host 'host name' -port 'port #'
|
||
> use _internal
|
||
```
|
||
यदि आपको **इस तरह की त्रुटि मिलती है**: `ERR: unable to parse authentication credentials` तो इसका मतलब है कि यह **कुछ प्रमाण-पत्रों की अपेक्षा कर रहा है**।
|
||
```
|
||
influx –username influx –password influx_pass
|
||
```
|
||
एक भेद्यता थी influxdb में जिसने प्रमाणीकरण को बायपास करने की अनुमति दी: [**CVE-2019-20933**](https://github.com/LorenzoTullini/InfluxDB-Exploit-CVE-2019-20933)
|
||
|
||
### मैनुअल एन्यूमरेशन
|
||
|
||
इस उदाहरण की जानकारी [**यहां**](https://oznetnerd.com/2017/06/11/getting-know-influxdb/) से ली गई थी।
|
||
|
||
#### डेटाबेस दिखाएं
|
||
|
||
पाई गई डेटाबेस `telegraf` और `internal` हैं (आप इसे हर जगह पाएंगे)
|
||
```bash
|
||
> show databases
|
||
name: databases
|
||
name
|
||
----
|
||
telegraf
|
||
_internal
|
||
```
|
||
#### Show tables/measurements
|
||
|
||
The [**InfluxDB documentation**](https://docs.influxdata.com/influxdb/v1.2/introduction/getting_started/) यह बताता है कि InfluxDB में **measurements** को SQL तालिकाओं के साथ समानांतर किया जा सकता है। इन **measurements** की नामकरण उनकी संबंधित सामग्री का संकेत देता है, प्रत्येक एक विशेष इकाई से संबंधित डेटा को समाहित करता है।
|
||
```bash
|
||
> show measurements
|
||
name: measurements
|
||
name
|
||
----
|
||
cpu
|
||
disk
|
||
diskio
|
||
kernel
|
||
mem
|
||
processes
|
||
swap
|
||
system
|
||
```
|
||
#### Show columns/field keys
|
||
|
||
फील्ड कीज़ डेटाबेस के **कॉलम** की तरह होती हैं
|
||
```bash
|
||
> show field keys
|
||
name: cpu
|
||
fieldKey fieldType
|
||
-------- ---------
|
||
usage_guest float
|
||
usage_guest_nice float
|
||
usage_idle float
|
||
usage_iowait float
|
||
|
||
name: disk
|
||
fieldKey fieldType
|
||
-------- ---------
|
||
free integer
|
||
inodes_free integer
|
||
inodes_total integer
|
||
inodes_used integer
|
||
|
||
[ ... more keys ...]
|
||
```
|
||
#### Dump Table
|
||
|
||
और अंत में आप **dump the table** कर सकते हैं कुछ ऐसा करके
|
||
```bash
|
||
select * from cpu
|
||
name: cpu
|
||
time cpu host usage_guest usage_guest_nice usage_idle usage_iowait usage_irq usage_nice usage_softirq usage_steal usage_system usage_user
|
||
---- --- ---- ----------- ---------------- ---------- ------------ --------- ---------- ------------- ----------- ------------ ----------
|
||
1497018760000000000 cpu-total ubuntu 0 0 99.297893681046 0 0 0 0 0 0.35105315947842414 0.35105315947842414
|
||
1497018760000000000 cpu1 ubuntu 0 0 99.69909729188728 0 0 0 0 0 0.20060180541622202 0.10030090270811101
|
||
```
|
||
> [!WARNING]
|
||
> कुछ परीक्षणों में, प्रमाणीकरण बायपास के साथ यह नोट किया गया कि तालिका का नाम डबल कोट्स के बीच होना चाहिए जैसे: `select * from "cpu"`
|
||
|
||
### स्वचालित प्रमाणीकरण
|
||
```bash
|
||
msf6 > use auxiliary/scanner/http/influxdb_enum
|
||
```
|
||
{{#include ../banners/hacktricks-training.md}}
|