hacktricks/src/network-services-pentesting/8086-pentesting-influxdb.md

6.8 KiB
Raw Blame History

8086 - Pentesting InfluxDB


Χρησιμοποιήστε Trickest για να δημιουργήσετε εύκολα και να αυτοματοποιήσετε ροές εργασίας που υποστηρίζονται από τα πιο προηγμένα εργαλεία της κοινότητας.
Αποκτήστε πρόσβαση σήμερα:

{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=8086-pentesting-influxdb" %}

{{#include ../banners/hacktricks-training.md}}

Basic Information

InfluxDB είναι μια ανοιχτού κώδικα βάση δεδομένων χρονικών σειρών (TSDB) που αναπτύχθηκε από την InfluxData. Οι TSDB είναι βελτιστοποιημένες για την αποθήκευση και την εξυπηρέτηση δεδομένων χρονικών σειρών, τα οποία αποτελούνται από ζεύγη χρονικών σημείων-τιμών. Σε σύγκριση με τις βάσεις δεδομένων γενικής χρήσης, οι TSDB προσφέρουν σημαντικές βελτιώσεις σε χώρο αποθήκευσης και απόδοση για σύνολα δεδομένων χρονικών σειρών. Χρησιμοποιούν εξειδικευμένους αλγόριθμους συμπίεσης και μπορούν να ρυθμιστούν ώστε να αφαιρούν αυτόματα παλιά δεδομένα. Εξειδικευμένοι δείκτες βάσεων δεδομένων βελτιώνουν επίσης την απόδοση των ερωτημάτων.

Προεπιλεγμένη θύρα: 8086

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

Απαρίθμηση

Από την οπτική γωνία ενός pentester, αυτή είναι μια άλλη βάση δεδομένων που θα μπορούσε να αποθηκεύει ευαίσθητες πληροφορίες, οπότε είναι ενδιαφέρον να γνωρίζουμε πώς να εξάγουμε όλες τις πληροφορίες.

Αυθεντικοποίηση

Η InfluxDB μπορεί να απαιτεί αυθεντικοποίηση ή όχι.

# 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

Χειροκίνητη Αρίθμηση

Οι πληροφορίες αυτού του παραδείγματος ελήφθησαν από εδώ.

Εμφάνιση βάσεων δεδομένων

Οι βρέθηκαν βάσεις δεδομένων είναι telegraf και internal (θα βρείτε αυτήν παντού)

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

Εμφάνιση πινάκων/μετρήσεων

Η τεκμηρίωση InfluxDB εξηγεί ότι οι μετρήσεις στο InfluxDB μπορούν να παραλληλιστούν με τους πίνακες SQL. Η ονοματολογία αυτών των μετρήσεων είναι ενδεικτική του αντίστοιχου περιεχομένου τους, κάθε μία φιλοξενεί δεδομένα σχετικά με μια συγκεκριμένη οντότητα.

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

Εμφάνιση κλειδιών πεδίων

Τα κλειδιά πεδίων είναι σαν τις στήλες της βάσης δεδομένων

> 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 κάνοντας κάτι σαν

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"

Αυτοματοποιημένη Αυθεντικοποίηση

msf6 > use auxiliary/scanner/http/influxdb_enum

{{#include ../banners/hacktricks-training.md}}


Χρησιμοποιήστε Trickest για να δημιουργήσετε και να αυτοματοποιήσετε ροές εργασίας με τη βοήθεια των πιο προηγμένων εργαλείων της κοινότητας.
Αποκτήστε Πρόσβαση Σήμερα:

{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=8086-pentesting-influxdb" %}