Zabezpečení Manager aplikace u Tomcatu

publikováno: 11.3.2014

Čirou náhodou jsem webu narazil na zmínku o worm Java.Tomdep, který byl objeven koncem minulého roku a napadá Tomcaty, které mají nainstalovanou Manager aplikaci a jednoduchá uživ. jména a hesla (jako je admin / admin, manager / admin, root / tomcat apod.):

Upozornění: Nemusíte se děsit, podle Symantecu to není moc rozšířené. Každopádně mě to donutilo sepsat best practice zabezpečení (nejenom) Manager aplikace.

Pokud Manager aplikaci nepotřebujete, tak ji smažte. To samé se týká dalších web. aplikací, které jsou na Tomcatu ve výchozím nastavení nainstalované. Pokud ji používat chcete, pak je důležité zabezpečení:

  • Samozřejmostí je, aby Tomcat neběžel pod uživatelem root / Administrator. Když ostatní selže, tak tím minimalizujete škody.
  • Pomocí Valve RemoteAddrValve povolte k Manager aplikaci přístup pouze z vybraných IP adres. Nebo to samé pomocí firewallu / předřazeného Apache HTTPD. http://tomcat.apache.org/tomcat-7.0-doc/manager-howto.html
  • Používejte kombinaci dostatečně dlouhého uživ. jména a hesla. Nepoužívat uživ. jména admin, manager, tomcat, root atp. Používejte LockOutRealm pro zabránění brute-force útoku.
  • Nastavte HTTPS tak, aby komunikace mezi Manager aplikací a klientem probíhala zašifrovaně. K tomu je nutné nastavit v [apache-tomcat]/conf/server.xml SSL Connector a v [apache-tomcat]/webapps/manager/WEB-INF/web.xml dovnitř tagu <security-constraint>:
<user-data-constraint>
   <transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>

Reference

Líbilo se mi celé pojetí kurzu - možná trošku netradiční, nicméně dělané ajťákem pro ajťáky. :-) ("normální" člověk, který by se na kurzu náhodou ocitl, by asi nechápal). Vše bylo

Martin

Školení pro nás bylo velice přínosné. Ocenil jsem zejména konzultace vhodnosti použití přímo nad reálnými problémy v našem projektu. Výklad byl plně customizovaný našim potřebám a znalostem. Celkově velká spokojenost.

Jiří

Školení se mi opravdu líbilo. Jako vždy bylo vidět, že pan Pinkas se v dané oblasti dobře orientuje a ví jak se Docker používá v praxi. Vysvětlení pojmů vždy prijde

Zdeněk


Novinky

9.5.2019: Plánovaný přechod Java EE -> Jakarta EE
Posledních několik měsíců intenzivně sleduji plánovaný přechod z Java EE na Jakarta EE. A musím říct, že to je shit-show :-(

22.3.2019: Termíny Java školení léto 2019
Nové termíny!!!

22.3.2019: Vyšla Java 12!
Java 12 je venku!!!