<summary><strong>AWS hacklemeyi sıfırdan kahraman olmaya öğrenin</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* **Şirketinizi HackTricks'te reklamını görmek istiyorsanız** veya **HackTricks'i PDF olarak indirmek istiyorsanız** [**ABONELİK PLANLARI**]'na göz atın (https://github.com/sponsors/carlospolop)!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)'yi keşfedin, özel [**NFT'lerimiz**](https://opensea.io/collection/the-peass-family) koleksiyonumuzu
* **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 PR'lar göndererek** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github depolarına katkıda bulunun.
Elasticsearch, **tüm veri türleri** için **dağıtık**, **açık kaynaklı** bir arama ve analiz motorudur. **Hızı**, **ölçeklenebilirliği** ve **basit REST API'leri** ile bilinir. Apache Lucene üzerine inşa edilen Elasticsearch, ilk kez 2010 yılında Elasticsearch N.V. (şimdi Elastic olarak bilinir) tarafından piyasaya sürüldü. Elasticsearch, veri alımı, zenginleştirme, depolama, analiz ve görselleştirme için açık kaynak araçlar koleksiyonu olan Elastic Stack'in temel bileşenidir. Bu yığın genellikle ELK Yığını olarak adlandırılır ve Logstash ve Kibana'yı da içerir; şimdi ise hafif veri taşıma ajanları olan Beats de bulunmaktadır.
Bir Elasticsearch **indeksi**, **JSON** olarak depolanan **ilgili belgelerin** bir koleksiyonudur. Her belge, **anahtarlar** ve bunların karşılık gelen **değerleri** (dizeler, sayılar, boole, tarihler, diziler, coğrafi konumlar vb.) içerir.
Elasticsearch, hızlı tam metin aramaları kolaylaştırmak için verimli bir veri yapısı olan **ters indeks** kullanır. Bu indeks, belgelerdeki her benzersiz kelimeyi listeler ve her kelimenin hangi belgelerde göründüğünü belirler.
İndeksleme süreci sırasında Elasticsearch, belgeleri depolar ve ters indeksi oluşturur, böylece neredeyse gerçek zamanlı aramalar yapılabilir. **İndeks API'si**, belirli bir indeks içinde JSON belgeleri eklemek veya güncellemek için kullanılır.
Elasticsearch'e erişmek için kullanılan protokol **HTTP**'dir. HTTP üzerinden eriştiğinizde bazı ilginç bilgiler bulacaksınız: `http://10.10.10.115:9200/`
**Varsayılan olarak Elasticsearch'te kimlik doğrulama etkin değildir**, bu nedenle varsayılan olarak herhangi bir kimlik bilgisi kullanmadan veritabanındaki her şeye erişebilirsiniz.
curl -X GET "ELASTICSEARCH-SERVER:9200/_xpack/security/user"
{"error":{"root_cause":[{"type":"exception","reason":"Security must be explicitly enabled when using a [basic] license. Enable security by setting [xpack.security.enabled] to [true] in the elasticsearch.yml file and restart the node."}],"type":"exception","reason":"Security must be explicitly enabled when using a [basic] license. Enable security by setting [xpack.security.enabled] to [true] in the elasticsearch.yml file and restart the node."},"status":500}
Bu, kimlik doğrulamasının yapılandırıldığı ve elasticserach'ten herhangi bir bilgi almak için geçerli kimlik bilgilerine ihtiyaç duyulduğu anlamına gelir. Daha sonra [**bruteforce deneyebilirsiniz**](../generic-methodologies-and-resources/brute-force.md#elasticsearch) (HTTP basic auth kullanır, bu yüzden HTTP basic auth'i BF etmek için herhangi bir şey kullanılabilir).\
İşte bir **liste varsayılan kullanıcı adları**: _**elastic** (süper kullanıcı), remote\_monitoring\_user, beats\_system, logstash\_system, kibana, kibana\_system, apm\_system,_ \_anonymous\_.\_ Eski Elasticsearch sürümlerinde bu kullanıcı için varsayılan şifre **changeme**'dir.
Bu uç noktalar [**belgelerden alınmıştır**](https://www.elastic.co/guide/en/elasticsearch/reference/current/rest-apis.html) ve daha fazlasını**bulabilirsiniz**.\
**İndeks içinde hangi tür verilerin kaydedildiği hakkında bilgi** almak için şu adrese erişebilirsiniz: `http://host:9200/<index>` örneğin bu durumda `http://10.10.10.115:9200/bank`
Bir indeksin **tüm içeriğini dökmek** istiyorsanız şu adrese erişebilirsiniz: `http://host:9200/<index>/_search?pretty=true` gibi `http://10.10.10.115:9200/bank/_search?pretty=true`
Bu noktada **"hits" içinde "total" adında bir alan olduğunu fark edebilirsiniz** ve bu indeks içinde **1000 belgenin bulunduğunu ancak yalnızca 10'unun alındığını** gösterir. Bu, **varsayılan olarak 10 belge sınırı olduğu için** gerçekleşir.\
Ancak, şimdi **bu indeksin 1000 belge içerdiğini** bildiğinize göre, **tümünü dökebilirsiniz** ve **dökmek istediğiniz giriş sayısını belirterek**`size` parametresinde: `http://10.10.10.115:9200/quotes/_search?pretty=true&size=1000`\
_Not: Daha büyük bir sayı belirtirseniz tüm girişler yine dökülecektir, örneğin `size=9999` belirtebilir ve daha fazla giriş olması garip olurdu (ancak kontrol etmelisiniz)._
Tümünü dökmek için sadece **önceki indeksi belirtmeden aynı yola gidebilirsiniz**`http://host:9200/_search?pretty=true` gibi `http://10.10.10.115:9200/_search?pretty=true`\
Unutmayın ki bu durumda **varsayılan 10** sonuç sınırı uygulanacaktır. Daha fazla sonuç dökmek için `size` parametresini kullanabilirsiniz. Daha fazla bilgi için önceki bölümü okuyun.
Bir bilgi arıyorsanız **tüm indekslerde doğrudan arama yapabilirsiniz**`http://host:9200/_search?pretty=true&q=<arama_terimi>` gibi `http://10.10.10.115:9200/_search?pretty=true&q=Rockwell`
Ayrıca, bir Elasticsearch hizmetini fuzz etmek için [https://github.com/misalabs/horuz](https://github.com/misalabs/horuz) gibi bir şey kullanabilirsiniz.
Bu komut, "_bookId_", "_author_", "_publisher_" ve "_name_" özniteliklerine sahip `books` türünde bir belgeye sahip `bookindex` adında **yeni bir dizin** oluşturacaktır.
<summary><strong>AWS hackleme konusunda sıfırdan kahramana kadar öğrenin</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* **Şirketinizi HackTricks'te reklamını görmek istiyorsanız** veya **HackTricks'i PDF olarak indirmek istiyorsanız** [**ABONELİK PLANLARI**]'na göz atın (https://github.com/sponsors/carlospolop)!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family) koleksiyonumuzu keşfedin, özel [**NFT'lerimiz**](https://opensea.io/collection/the-peass-family)
* **💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) katılın veya bizi **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)** takip edin.**
* **Hacking püf noktalarınızı paylaşarak PR'lar göndererek** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github depolarına katkıda bulunun.