mirror of
https://github.com/carlospolop/hacktricks
synced 2024-12-19 09:34:03 +00:00
268 lines
25 KiB
Markdown
268 lines
25 KiB
Markdown
# 27017,27018 - Pentesting MongoDB
|
|
|
|
<details>
|
|
|
|
<summary><strong>Lernen Sie AWS-Hacking von Grund auf mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Andere Möglichkeiten, HackTricks zu unterstützen:
|
|
|
|
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
|
|
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
|
|
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
|
|
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
|
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) Github-Repositories senden.
|
|
|
|
</details>
|
|
|
|
<figure><img src="../../.gitbook/assets/image (1) (3) (1).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
Treten Sie dem [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) Server bei, um mit erfahrenen Hackern und Bug-Bounty-Jägern zu kommunizieren!
|
|
|
|
**Hacking Insights**\
|
|
Beschäftigen Sie sich mit Inhalten, die sich mit dem Nervenkitzel und den Herausforderungen des Hackens befassen.
|
|
|
|
**Echtzeit-Hack-News**\
|
|
Bleiben Sie mit der schnelllebigen Hacking-Welt durch Echtzeit-Nachrichten und Einblicke auf dem Laufenden.
|
|
|
|
**Neueste Ankündigungen**\
|
|
Bleiben Sie über die neuesten Bug-Bounties und wichtige Plattformupdates informiert.
|
|
|
|
**Treten Sie uns auf** [**Discord**](https://discord.com/invite/N3FrSbmwdy) bei und beginnen Sie noch heute mit Top-Hackern zusammenzuarbeiten!
|
|
|
|
## Grundlegende Informationen
|
|
|
|
**MongoDB** ist ein **Open-Source**-Datenbankmanagementsystem, das ein **dokumentenorientiertes Datenbankmodell** verwendet, um verschiedene Formen von Daten zu verarbeiten. Es bietet Flexibilität und Skalierbarkeit für die Verwaltung von unstrukturierten oder halbstrukturierten Daten in Anwendungen wie Big Data-Analyse und Content-Management.
|
|
**Standardport:** 27017, 27018
|
|
```
|
|
PORT STATE SERVICE VERSION
|
|
27017/tcp open mongodb MongoDB 2.6.9 2.6.9
|
|
```
|
|
### Manuelle Enumeration
|
|
|
|
MongoDB kann auf den Standardports 27017 und 27018 laufen. Um MongoDB-Instanzen zu finden, können verschiedene Methoden verwendet werden:
|
|
|
|
#### Port-Scanning
|
|
|
|
Verwenden Sie Tools wie Nmap, um nach offenen Ports zu suchen:
|
|
|
|
```bash
|
|
nmap -p 27017,27018 <ziel-ip>
|
|
```
|
|
|
|
#### Shodan
|
|
|
|
Shodan ist eine Suchmaschine für vernetzte Geräte. Sie können nach MongoDB-Instanzen suchen, indem Sie den Befehl `mongodb` verwenden:
|
|
|
|
```
|
|
mongodb
|
|
```
|
|
|
|
#### Censys
|
|
|
|
Censys ist eine weitere Suchmaschine für vernetzte Geräte. Sie können nach MongoDB-Instanzen suchen, indem Sie den Befehl `mongodb` verwenden:
|
|
|
|
```
|
|
mongodb
|
|
```
|
|
|
|
### Automatisiert
|
|
|
|
Es gibt auch Tools, die den Prozess der MongoDB-Enumeration automatisieren:
|
|
|
|
#### MongoSniff
|
|
|
|
MongoSniff ist ein Tool, das den Netzwerkverkehr überwacht und nach MongoDB-Instanzen sucht. Sie können es wie folgt verwenden:
|
|
|
|
```bash
|
|
mongosniff -p 27017,27018
|
|
```
|
|
|
|
#### Mongoaudit
|
|
|
|
Mongoaudit ist ein Tool, das die Sicherheit von MongoDB-Instanzen überprüft. Es kann auch verwendet werden, um MongoDB-Instanzen zu finden:
|
|
|
|
```bash
|
|
mongoaudit --host <ziel-ip> --port 27017,27018
|
|
```
|
|
|
|
### Exploitation
|
|
|
|
#### Nicht authentifizierte MongoDB-Instanzen
|
|
|
|
Wenn Sie auf eine nicht authentifizierte MongoDB-Instanz zugreifen können, können Sie verschiedene Aktionen ausführen, wie z.B. Datenbanken anzeigen, Datenbanken erstellen, Datenbanken löschen, Datenbanken umbenennen, Datenbanken kopieren, Datenbanken exportieren, Datenbanken importieren, Datenbanken reparieren, Datenbanken komprimieren, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Datenbanken wiederherstellen, Datenbanken migrieren, Datenbanken überwachen, Datenbanken optimieren, Datenbanken überwachen, Datenbanken replizieren, Datenbanken sharden, Datenbanken indizieren, Datenbanken sichern, Daten
|
|
```python
|
|
from pymongo import MongoClient
|
|
client = MongoClient(host, port, username=username, password=password)
|
|
client.server_info() #Basic info
|
|
#If you have admin access you can obtain more info
|
|
admin = client.admin
|
|
admin_info = admin.command("serverStatus")
|
|
cursor = client.list_databases()
|
|
for db in cursor:
|
|
print(db)
|
|
print(client[db["name"]].list_collection_names())
|
|
#If admin access, you could dump the database also
|
|
```
|
|
**Einige MongoDB-Befehle:**
|
|
```bash
|
|
show dbs
|
|
use <db>
|
|
show collections
|
|
db.<collection>.find() #Dump the collection
|
|
db.<collection>.count() #Number of records of the collection
|
|
db.current.find({"username":"admin"}) #Find in current db the username admin
|
|
```
|
|
### Automatisch
|
|
|
|
MongoDB is a popular NoSQL database that is widely used in web applications. It uses a binary protocol for communication between the client and the server. By default, MongoDB listens on port 27017 for incoming connections.
|
|
|
|
#### MongoDB Information Gathering
|
|
|
|
Before attempting any attacks on a MongoDB server, it is important to gather as much information as possible about the target. This can be done using various tools and techniques.
|
|
|
|
##### Banner Grabbing
|
|
|
|
Banner grabbing is a technique used to gather information about a service by examining the banner or response sent by the server. This can be done using tools like `telnet` or `nc` (netcat).
|
|
|
|
```bash
|
|
$ telnet <target_ip> 27017
|
|
```
|
|
|
|
##### Nmap
|
|
|
|
Nmap is a powerful network scanning tool that can be used to discover open ports and gather information about the services running on those ports. The following command can be used to scan for open MongoDB ports:
|
|
|
|
```bash
|
|
$ nmap -p 27017 <target_ip>
|
|
```
|
|
|
|
##### Shodan
|
|
|
|
Shodan is a search engine for internet-connected devices. It can be used to search for MongoDB servers and gather information about them. The following query can be used to search for MongoDB servers:
|
|
|
|
```
|
|
port:27017
|
|
```
|
|
|
|
#### MongoDB Exploitation
|
|
|
|
Once enough information has been gathered about the target MongoDB server, various exploitation techniques can be used to gain unauthorized access or extract sensitive information.
|
|
|
|
##### Default Credentials
|
|
|
|
MongoDB installations often come with default credentials that are not changed by the users. It is important to check if the default credentials are still in use. The following command can be used to attempt a login using the default credentials:
|
|
|
|
```bash
|
|
$ mongo <target_ip>:27017
|
|
```
|
|
|
|
##### Brute-Force Attacks
|
|
|
|
If default credentials are not found, a brute-force attack can be attempted to guess the username and password combination. Tools like `hydra` or `medusa` can be used for this purpose.
|
|
|
|
```bash
|
|
$ hydra -L usernames.txt -P passwords.txt <target_ip> mongodb
|
|
```
|
|
|
|
##### Injection Attacks
|
|
|
|
Injection attacks can be used to exploit vulnerabilities in the MongoDB query language. This can allow an attacker to execute arbitrary commands or extract sensitive information from the database. Tools like `NoSQLMap` can be used for this purpose.
|
|
|
|
```bash
|
|
$ nosqlmap -u "mongodb://<target_ip>:27017" --exploit injection
|
|
```
|
|
|
|
#### MongoDB Security Recommendations
|
|
|
|
To secure a MongoDB server and prevent unauthorized access, the following recommendations should be followed:
|
|
|
|
- Change default credentials and use strong passwords.
|
|
- Enable authentication and disable anonymous access.
|
|
- Regularly update MongoDB to the latest version to patch any security vulnerabilities.
|
|
- Implement network security measures like firewalls to restrict access to the MongoDB server.
|
|
- Regularly monitor and log MongoDB server activity for any suspicious behavior.
|
|
|
|
By following these recommendations, the security of a MongoDB server can be significantly improved.
|
|
```bash
|
|
nmap -sV --script "mongo* and default" -p 27017 <IP> #By default all the nmap mongo enumerate scripts are used
|
|
```
|
|
### Shodan
|
|
|
|
* Alle MongoDB: `"mongodb server information"`
|
|
* Suche nach vollständig offenen MongoDB-Servern: `"mongodb server information" -"partially enabled"`
|
|
* Nur teilweise Authentifizierung aktiviert: `"mongodb server information" "partially enabled"`
|
|
|
|
## Anmeldung
|
|
|
|
Standardmäßig erfordert Mongo kein Passwort.\
|
|
**Admin** ist eine gängige Mongo-Datenbank.
|
|
```bash
|
|
mongo <HOST>
|
|
mongo <HOST>:<PORT>
|
|
mongo <HOST>:<PORT>/<DB>
|
|
mongo <database> -u <username> -p '<password>'
|
|
```
|
|
Das nmap-Skript _**mongodb-brute**_ überprüft, ob Anmeldeinformationen erforderlich sind.
|
|
```bash
|
|
nmap -n -sV --script mongodb-brute -p 27017 <ip>
|
|
```
|
|
### [**Brute-Force**](../generic-methodologies-and-resources/brute-force.md#mongo)
|
|
|
|
Schauen Sie in _/opt/bitnami/mongodb/mongodb.conf_ nach, um herauszufinden, ob Anmeldeinformationen erforderlich sind:
|
|
```bash
|
|
grep "noauth.*true" /opt/bitnami/mongodb/mongodb.conf | grep -v "^#" #Not needed
|
|
grep "auth.*true" /opt/bitnami/mongodb/mongodb.conf | grep -v "^#\|noauth" #Not needed
|
|
```
|
|
## Mongo Objectid Vorhersage
|
|
|
|
Beispiel [von hier](https://techkranti.com/idor-through-mongodb-object-ids-prediction/).
|
|
|
|
Mongo Object IDs sind **12-stellige hexadezimale** Zeichenketten:
|
|
|
|
![http://techidiocy.com/_id-objectid-in-mongodb/](../.gitbook/assets/id-and-objectids-in-mongodb.png)
|
|
|
|
Hier ist zum Beispiel, wie wir eine tatsächliche Object ID analysieren können, die von einer Anwendung zurückgegeben wird: 5f2459ac9fa6dc2500314019
|
|
|
|
1. 5f2459ac: 1596217772 in Dezimal = Freitag, 31. Juli 2020 17:49:32
|
|
2. 9fa6dc: Maschinenkennung
|
|
3. 2500: Prozess-ID
|
|
4. 314019: Ein inkrementeller Zähler
|
|
|
|
Von den oben genannten Elementen bleibt die Maschinenkennung so lange gleich, wie die Datenbank auf der gleichen physischen/virtuellen Maschine läuft. Die Prozess-ID ändert sich nur, wenn der MongoDB-Prozess neu gestartet wird. Der Zeitstempel wird jede Sekunde aktualisiert. Die einzige Herausforderung beim Raten von Object IDs durch einfaches Inkrementieren des Zähler- und Zeitstempelwerts besteht darin, dass Mongo DB Object IDs generiert und Object IDs auf Systemebene zuweist.
|
|
|
|
Das Tool [https://github.com/andresriancho/mongo-objectid-predict](https://github.com/andresriancho/mongo-objectid-predict) sendet bei Angabe einer Start-Object-ID (Sie können ein Konto erstellen und eine Start-ID erhalten) etwa 1000 wahrscheinliche Object IDs zurück, die möglicherweise den nächsten Objekten zugewiesen wurden. Sie müssen sie nur per Brute-Force ausprobieren.
|
|
|
|
## Beitrag
|
|
|
|
Wenn Sie root sind, können Sie die **mongodb.conf**-Datei **ändern**, sodass keine Anmeldeinformationen erforderlich sind (_noauth = true_) und **ohne Anmeldeinformationen** angemeldet werden kann.
|
|
|
|
***
|
|
|
|
<figure><img src="../../.gitbook/assets/image (1) (3) (1).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
Treten Sie dem [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy)-Server bei, um mit erfahrenen Hackern und Bug-Bounty-Jägern zu kommunizieren!
|
|
|
|
**Hacking Insights**\
|
|
Beschäftigen Sie sich mit Inhalten, die sich mit dem Nervenkitzel und den Herausforderungen des Hackens befassen.
|
|
|
|
**Echtzeit-Hack-News**\
|
|
Bleiben Sie mit der schnelllebigen Hacking-Welt durch Echtzeit-Nachrichten und Einblicke auf dem Laufenden.
|
|
|
|
**Neueste Ankündigungen**\
|
|
Bleiben Sie über die neuesten Bug-Bounties und wichtige Plattformupdates informiert.
|
|
|
|
**Treten Sie uns bei** [**Discord**](https://discord.com/invite/N3FrSbmwdy) bei und beginnen Sie noch heute mit Top-Hackern zusammenzuarbeiten!
|
|
|
|
<details>
|
|
|
|
<summary><strong>Lernen Sie AWS-Hacking von Null auf Held mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Andere Möglichkeiten, HackTricks zu unterstützen:
|
|
|
|
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
|
|
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
|
|
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
|
|
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegramm-Gruppe**](https://t.me/peass) bei oder folgen Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
|
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) Github-Repos senden.
|
|
|
|
</details>
|