# Basiese Tomcat-inligting
Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)! * Werk jy in 'n **cybersecurity-maatskappy**? Wil jy jou **maatskappy adverteer in HackTricks**? Of wil jy toegang hΓͺ tot die **nuutste weergawe van die PEASS of laai HackTricks in PDF af**? Kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)! * Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family) * Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com) * **Sluit aan by die** [**πŸ’¬**](https://emojipedia.org/speech-balloon/) [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** my op **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Deel jou hacktruuks deur PR's in te dien by die [hacktricks repo](https://github.com/carlospolop/hacktricks) en [hacktricks-cloud repo](https://github.com/carlospolop/hacktricks-cloud)**.
Vind kwesbaarhede wat die belangrikste is sodat jy dit vinniger kan regmaak. Intruder volg jou aanvalsoppervlak, voer proaktiewe dreigingsskanderings uit, vind probleme regoor jou hele tegnologie-stapel, van API's tot webtoepassings en wolkstelsels. [**Probeer dit vandag nog gratis**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks). {% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %} *** ### Vermy om met root te hardloop Om te verhoed dat Tomcat met root hardloop, is 'n baie algemene konfigurasie om 'n Apache-bediener in poort 80/443 in te stel en, as die versoekte pad ooreenstem met 'n regulΓͺre uitdrukking, word die versoek na Tomcat gestuur wat op 'n ander poort hardloop. ### Standaardstruktuur ``` β”œβ”€β”€ bin β”œβ”€β”€ conf β”‚ β”œβ”€β”€ catalina.policy β”‚ β”œβ”€β”€ catalina.properties β”‚ β”œβ”€β”€ context.xml β”‚ β”œβ”€β”€ tomcat-users.xml β”‚ β”œβ”€β”€ tomcat-users.xsd β”‚ └── web.xml β”œβ”€β”€ lib β”œβ”€β”€ logs β”œβ”€β”€ temp β”œβ”€β”€ webapps β”‚ β”œβ”€β”€ manager β”‚ β”‚ β”œβ”€β”€ images β”‚ β”‚ β”œβ”€β”€ META-INF β”‚ β”‚ └── WEB-INF | | └── web.xml β”‚ └── ROOT β”‚ └── WEB-INF └── work └── Catalina └── localhost ``` * Die `bin`-map hou skripte en binaire lΓͺers wat nodig is om 'n Tomcat-bediener te begin en te laat loop. * Die `conf`-map hou verskeie konfigurasie lΓͺers wat deur Tomcat gebruik word. * Die `tomcat-users.xml`-lΓͺer hou gebruikerslegitimasie en hul toegewysde rolle. * Die `lib`-map bevat die verskeie JAR-lΓͺers wat nodig is vir die korrekte werking van Tomcat. * Die `logs`- en `temp`-mappe hou tydelike loglΓͺers. * Die `webapps`-map is die verstek webwortel van Tomcat en bevat al die toepassings. Die `work`-map dien as 'n kas en word gebruik om data tydens uitvoering te stoor. Daar word verwag dat elke map binne `webapps` die volgende struktuur sal hΓͺ. ``` webapps/customapp β”œβ”€β”€ images β”œβ”€β”€ index.jsp β”œβ”€β”€ META-INF β”‚ └── context.xml β”œβ”€β”€ status.xsd └── WEB-INF β”œβ”€β”€ jsp | └── admin.jsp └── web.xml └── lib | └── jdbc_drivers.jar └── classes └── AdminServlet.class ``` Die belangrikste lΓͺer onder hierdie is `WEB-INF/web.xml`, wat bekend staan as die implementeringsbeskrywer. Hierdie lΓͺer stoor **inligting oor die roetes** wat deur die toepassing gebruik word en die klasse wat hierdie roetes hanteer.\ Alle gekompileerde klasse wat deur die toepassing gebruik word, moet in die `WEB-INF/classes`-vouer gestoor word. Hierdie klasse kan belangrike besigheidslogika sowel as sensitiewe inligting bevat. Enige kwesbaarheid in hierdie lΓͺers kan lei tot die totale kompromittering van die webwerf. Die `lib`-vouer stoor die biblioteke wat deur daardie spesifieke toepassing benodig word. Die `jsp`-vouer stoor [Jakarta Server Pages (JSP)](https://en.wikipedia.org/wiki/Jakarta\_Server\_Pages), voorheen bekend as `JavaServer Pages`, wat vergelyk kan word met PHP-lΓͺers op 'n Apache-bediener. Hier is 'n voorbeeld van 'n **web.xml**-lΓͺer. ```xml AdminServlet com.inlanefreight.api.AdminServlet AdminServlet /admin ``` Die `web.xml`-konfigurasie hierbo definieer 'n **nuwe servlet genaamd `AdminServlet`** wat gekoppel is aan die **klas `com.inlanefreight.api.AdminServlet`**. Java gebruik die puntnotasie om pakkette te skep, wat beteken dat die pad op die skyf vir die bogenoemde klas sou wees: * **`classes/com/inlanefreight/api/AdminServlet.class`** Daarna word 'n nuwe servlet-kartering geskep om versoeke na `/admin` met `AdminServlet` te **karteer**. Hierdie konfigurasie sal enige versoek wat ontvang word vir **`/admin` na die `AdminServlet.class`-klas stuur vir verwerking**. Die **`web.xml`**-beskrywer bevat baie **sensitiewe inligting** en is 'n belangrike lΓͺer om te ondersoek wanneer 'n **Local File Inclusion (LFI) kwesbaarheid** benut word. ### tomcat-gebruikers Die **`tomcat-users.xml`**-lΓͺer word gebruik om toegang tot die **`/manager` en `host-manager` administrasiebladsye** toe te laat of te verbied. ```xml !-- user manager can access only manager section --> ``` Die lΓͺer wys ons wat elkeen van die rolle `manager-gui`, `manager-script`, `manager-jmx`, en `manager-status` toegang tot bied. In hierdie voorbeeld kan ons sien dat 'n gebruiker `tomcat` met die wagwoord `tomcat` die `manager-gui` rol het, en 'n tweede swak wagwoord `admin` is ingestel vir die gebruikersrekening `admin`. ## Verwysings * [https://academy.hackthebox.com/module/113/section/1090](https://academy.hackthebox.com/module/113/section/1090)
Vind kwesbaarhede wat die belangrikste is sodat jy dit vinniger kan regstel. Intruder volg jou aanvalsoppervlak, voer proaktiewe dreigingsskanderings uit, vind probleme regoor jou hele tegnologie-stapel, van API's tot webtoepassings en wolkstelsels. [**Probeer dit vandag nog gratis**](https://www.intruder.io/?utm\_source=referral\&utm\_campaign=hacktricks). {% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %}
Leer AWS-hacking van nul tot held met htARTE (HackTricks AWS Red Team Expert)! * Werk jy in 'n **cybersekuriteitsmaatskappy**? Wil jy jou **maatskappy adverteer in HackTricks**? Of wil jy toegang hΓͺ tot die **nuutste weergawe van die PEASS of HackTricks aflaai in PDF-formaat**? Kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)! * Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFT's**](https://opensea.io/collection/the-peass-family) * Kry die [**amptelike PEASS & HackTricks-uitrusting**](https://peass.creator-spring.com) * **Sluit aan by die** [**πŸ’¬**](https://emojipedia.org/speech-balloon/) [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** my op **Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Deel jou haktruuks deur PR's in te dien by die [hacktricks repo](https://github.com/carlospolop/hacktricks) en [hacktricks-cloud repo](https://github.com/carlospolop/hacktricks-cloud)**.