8086 - Pentesting InfluxDB

Gebruik Trickest om maklik werkvloei te bou en te automate wat aangedryf word deur die wêreld se mees gevorderde gemeenskapstools. Kry Toegang Vandag:

Support HackTricks

Basiese Inligting

InfluxDB is 'n oopbron tydreeks databasis (TSDB) wat deur InfluxData ontwikkel is. TSDB's is geoptimaliseer vir die stoor en bedien van tydreeksdata, wat bestaan uit tydstempel-waarde pare. In vergelyking met algemene doeleindesdatabasisse, bied TSDB's beduidende verbeterings in stoorplek en prestasie vir tydreeksdatastelle. Hulle gebruik gespesialiseerde kompressie-algoritmes en kan gekonfigureer word om outomaties ou data te verwyder. Gespesialiseerde databasisindekse verbeter ook navraagprestasie.

Standaard poort: 8086

PORT     STATE SERVICE VERSION
8086/tcp open  http    InfluxDB http admin 1.7.5

Enumeration

Vanuit 'n pentester se oogpunt is dit 'n ander databasis wat sensitiewe inligting kan stoor, so dit is interessant om te weet hoe om al die inligting te dump.

Authentication

InfluxDB mag vereis dat daar geverifieer word of nie

# Try unauthenticated
influx -host 'host name' -port 'port #'
> use _internal

As jy 'n fout soos hierdie kry: ERR: unable to parse authentication credentials beteken dit dat dit verwag dat daar sekere geloofsbriewe is.

influx –username influx –password influx_pass

Daar was 'n kwesbaarheid in influxdb wat toegelaat het om die outentisering te omseil: CVE-2019-20933

Handmatige Enumerasie

Die inligting van hierdie voorbeeld is geneem van hier.

Wys databasisse

Die gevonde databasisse is telegraf en internal (jy sal hierdie een oral vind)

> show databases
name: databases
name
----
telegraf
_internal

Show tables/measurements

Die InfluxDB dokumentasie verduidelik dat metings in InfluxDB parallel kan wees met SQL-tabelle. Die nomenklatuur van hierdie metings is aanduidend van hul onderskeie inhoud, elkeen huisves data wat relevant is vir 'n spesifieke entiteit.

> show measurements
name: measurements
name
----
cpu
disk
diskio
kernel
mem
processes
swap
system

Wys kolomme/veld sleutels

Die veld sleutels is soos die kolomme van die databasis

> 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

En uiteindelik kan jy dump die tabel deur iets soos

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

In sommige toetse met die outentikasie omseiling is opgemerk dat die naam van die tabel tussen dubbele aanhalings moet wees soos: select * from "cpu"

Geoutomatiseerde Outentikasie

msf6 > use auxiliary/scanner/http/influxdb_enum
Ondersteun HackTricks

Gebruik Trickest om maklik te bou en werkvloei te automate wat deur die wêreld se mees gevorderde gemeenskap gereedskap aangedryf word. Kry Toegang Vandag:

Last updated