hacktricks/network-services-pentesting/27017-27018-mongodb.md

148 lines
7.5 KiB
Markdown
Raw Normal View History

2024-02-10 18:14:16 +00:00
# 27017,27018 - MongoDB Pentesting
2022-04-28 16:01:33 +00:00
<details>
<summary><strong>AWS hacklemeyi sıfırdan kahramana öğrenin</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 18:14:16 +00:00
HackTricks'ı desteklemenin diğer yolları:
2024-01-03 10:42:55 +00:00
* **Şirketinizi HackTricks'te reklamını görmek istiyorsanız** veya **HackTricks'i PDF olarak indirmek istiyorsanız** [**ABONELİK PLANLARI**](https://github.com/sponsors/carlospolop)'na göz atın!
2024-02-10 18:14:16 +00:00
* [**Resmi PEASS & HackTricks ürünlerini**](https://peass.creator-spring.com) edinin
* [**The PEASS Family'yi**](https://opensea.io/collection/the-peass-family) keşfedin, özel [**NFT'lerimiz**](https://opensea.io/collection/the-peass-family) koleksiyonumuz
* **Katılın** 💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) veya bizi **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**'da takip edin.**
* **Hacking püf noktalarınızı paylaşarak HackTricks ve HackTricks Cloud** github depolarına PR göndererek katkıda bulunun.
2022-04-28 16:01:33 +00:00
</details>
<figure><img src="../.gitbook/assets/image (377).png" alt=""><figcaption></figcaption></figure>
2023-02-27 09:28:45 +00:00
2024-02-10 18:14:16 +00:00
Deneyimli hackerlar ve ödül avcıları ile iletişim kurmak için [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) sunucusuna katılın!
2023-02-27 09:28:45 +00:00
**Hackleme İçgörüleri**\
Hackleme heyecanını ve zorluklarını ele alan içeriklerle etkileşime geçin
2023-07-14 15:03:41 +00:00
2024-02-10 18:14:16 +00:00
**Gerçek Zamanlı Hack Haberleri**\
Hızlı tempolu hackleme dünyasını gerçek zamanlı haberler ve içgörülerle takip edin
2023-07-14 15:03:41 +00:00
2024-02-10 18:14:16 +00:00
**En Son Duyurular**\
Yeni ödül avı başlatmaları ve önemli platform güncellemeleri hakkında bilgilenin
2022-11-05 09:07:43 +00:00
**Bize katılın** [**Discord**](https://discord.com/invite/N3FrSbmwdy) ve bugün en iyi hackerlarla işbirliğine başlayın!
2024-02-10 18:14:16 +00:00
## Temel Bilgiler
**MongoDB**, çeşitli veri biçimlerini işlemek için **belge odaklı veritabanı modeli** kullanan bir **açık kaynaklı** veritabanı yönetim sistemidir. Büyük veri analitiği ve içerik yönetimi gibi uygulamalarda yapısal olmayan veya yarı yapısal verileri yönetmek için esneklik ve ölçeklenebilirlik sunar. **Varsayılan port:** 27017, 27018
```
PORT STATE SERVICE VERSION
27017/tcp open mongodb MongoDB 2.6.9 2.6.9
```
## Numaralandırma
### Manuel
```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:
2024-02-10 18:14:16 +00:00
print(db)
print(client[db["name"]].list_collection_names())
#If admin access, you could dump the database also
```
2024-02-10 18:14:16 +00:00
**Bazı MongoDB komutları:**
```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
```
2024-02-10 18:14:16 +00:00
### Otomatik
```bash
nmap -sV --script "mongo* and default" -p 27017 <IP> #By default all the nmap mongo enumerate scripts are used
```
2022-05-01 13:25:53 +00:00
### Shodan
* Tüm mongodb: `"mongodb sunucu bilgisi"`
* Tamamen açık mongodb sunucularını arayın: `"mongodb sunucu bilgisi" -"kısmen etkin"`
* Yalnızca kısmen yetkilendirme etkin: `"mongodb sunucu bilgisi" "kısmen etkin"`
2024-02-10 18:14:16 +00:00
## Giriş
2024-02-10 18:14:16 +00:00
Varsayılan olarak mongo şifre gerektirmez.\
**Admin**, yaygın bir mongo veritabanıdır.
```bash
mongo <HOST>
mongo <HOST>:<PORT>
mongo <HOST>:<PORT>/<DB>
mongo <database> -u <username> -p '<password>'
```
2024-02-10 18:14:16 +00:00
Nmap betiği: _**mongodb-brute**_, kimlik bilgilerinin gerekip gerekmediğini kontrol edecektir.
```bash
nmap -n -sV --script mongodb-brute -p 27017 <ip>
```
### [**Kaba kuvvet**](../generic-methodologies-and-resources/brute-force.md#mongo)
Gereken kimlik bilgilerinin olup olmadığını öğrenmek için _/opt/bitnami/mongodb/mongodb.conf_ dosyasına bakın:
```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
```
2024-02-10 18:14:16 +00:00
## Mongo Objectid Tahmini
Örnek [buradan](https://techkranti.com/idor-through-mongodb-object-ids-prediction/).
2024-02-08 21:36:15 +00:00
Mongo Object ID'leri **12 baytlık onaltılık** dizilerdir:
![http://techidiocy.com/\_id-objectid-in-mongodb/](../.gitbook/assets/id-and-ObjectIds-in-MongoDB.png)
Örneğin, bir uygulama tarafından döndürülen gerçek bir Object ID'yi nasıl analiz edebileceğimizi aşağıda görebiliriz: 5f2459ac9fa6dc2500314019
1. 5f2459ac: 1596217772 ondalıkta = Cuma, 31 Temmuz 2020 17:49:32
2. 9fa6dc: Makine Tanımlayıcı
2024-02-10 18:14:16 +00:00
3. 2500: İşlem Kimliği
4. 314019: Artan sayaç
Yukarıdaki unsurlardan, makine tanımlayıcısı, veritabanı aynı fiziksel/virüs makinesinde çalıştığı sürece aynı kalacaktır. İşlem Kimliği, MongoDB işlemi yeniden başlatıldığında yalnızca değişecektir. Zaman damgası her saniyede güncellenecektir. Sadece sayaç ve zaman damgası değerlerini basitçe artırarak Object ID'leri tahmin etmede tek zorluk, Mongo DB'nin Object ID'leri oluşturması ve Object ID'leri sistem düzeyinde atamasıdır.
[https://github.com/andresriancho/mongo-objectid-predict](https://github.com/andresriancho/mongo-objectid-predict) aracı, başlangıç Object ID'si verildiğinde (bir hesap oluşturabilir ve bir başlangıç ID alabilirsiniz), bir sonraki nesnelere atandığı tahmin edilebilecek yaklaşık 1000 Object ID döndürür, bu nedenle sadece onları bruteforce etmeniz gerekir.
2024-02-10 18:14:16 +00:00
## Gönderi
Root kullanıcısıysanız, **mongodb.conf** dosyasını değiştirebilirsiniz böylece kimlik bilgilerine ihtiyaç duyulmaz (_noauth = true_) ve **kimlik bilgileri olmadan giriş yapabilirsiniz**.
2022-04-28 16:01:33 +00:00
2024-02-08 21:36:15 +00:00
***
<figure><img src="../.gitbook/assets/image (377).png" alt=""><figcaption></figcaption></figure>
2023-07-14 15:03:41 +00:00
2024-02-10 18:14:16 +00:00
Deneyimli hackerlar ve hata ödül avcıları ile iletişim kurmak için [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) sunucusuna katılın!
2023-03-05 19:54:13 +00:00
**Hacking İçgörüleri**\
Hacking'in heyecanına ve zorluklarına inen içeriklerle etkileşime girin
2023-02-27 09:28:45 +00:00
2024-02-10 18:14:16 +00:00
**Gerçek Zamanlı Hack Haberleri**\
Hızlı tempolu hacking dünyasında gerçek zamanlı haberler ve içgörülerle güncel kalın
2023-02-27 09:28:45 +00:00
2024-02-10 18:14:16 +00:00
**En Son Duyurular**\
Başlatılan en yeni hata ödülleri ve önemli platform güncellemeleri hakkında bilgi edinin
2023-02-27 09:28:45 +00:00
**Bize Katılın** [**Discord**](https://discord.com/invite/N3FrSbmwdy) ve bugün en iyi hackerlarla işbirliğine başlayın!
2022-11-05 09:07:43 +00:00
2022-04-28 16:01:33 +00:00
<details>
<summary><strong>Sıfırdan kahraman olacak şekilde AWS hackleme öğrenin</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-10 18:14:16 +00:00
HackTricks'i desteklemenin diğer yolları:
2024-01-03 10:42:55 +00:00
* **Şirketinizi HackTricks'te reklamını görmek veya HackTricks'i PDF olarak indirmek istiyorsanız** [**ABONELİK PLANLARI**](https://github.com/sponsors/carlospolop)'na göz atın!
2024-02-10 18:14:16 +00:00
* [**Resmi PEASS & HackTricks ürünlerini**](https://peass.creator-spring.com) edinin
* [**The PEASS Family'yi**](https://opensea.io/collection/the-peass-family) keşfedin, özel [**NFT'lerimiz**](https://opensea.io/collection/the-peass-family) koleksiyonumuz
* **💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) katılın veya bizi Twitter'da** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)** takip edin.**
* **Hacking hilelerinizi paylaşarak HackTricks ve HackTricks Cloud github depolarına PR göndererek destek olun.**
2022-04-28 16:01:33 +00:00
</details>