Tomcat
Grupo de Segurança Try Hard
Descoberta
Normalmente é executado na porta 8080
Erro comum do Tomcat:
Enumeração
Identificação da Versão
Para encontrar a versão do Apache Tomcat, um comando simples pode ser executado:
Localização dos Arquivos do Gerenciador
Identificar as localizações exatas dos diretórios /manager
e /host-manager
é crucial, pois seus nomes podem ser alterados. Recomenda-se uma busca de força bruta para localizar essas páginas.
Enumeração de Nomes de Usuário
Para versões do Tomcat anteriores à 6, é possível enumerar nomes de usuários através de:
Credenciais Padrão
O diretório /manager/html
é particularmente sensível, pois permite o upload e implantação de arquivos WAR, o que pode levar à execução de código. Este diretório é protegido por autenticação básica HTTP, sendo as credenciais comuns:
admin:admin
tomcat:tomcat
admin:
admin:s3cr3t
tomcat:s3cr3t
admin:tomcat
Essas credenciais podem ser testadas usando:
Outro diretório importante é /manager/status
, que exibe a versão do Tomcat e do sistema operacional, auxiliando na identificação de vulnerabilidades.
Ataque de Força Bruta
Para tentar um ataque de força bruta no diretório do gerenciador, pode-se usar:
Vulnerabilidades Comuns
Divulgação de Rastreamento de Senha
Acesso a /auth.jsp
pode revelar a senha em um rastreamento sob circunstâncias favoráveis.
Codificação de URL Dupla
A vulnerabilidade CVE-2007-1860 em mod_jk
permite a travessia de caminho com codificação de URL dupla, possibilitando acesso não autorizado à interface de gerenciamento por meio de uma URL especialmente elaborada.
Para acessar a interface web de gerenciamento do Tomcat, vá para: pathTomcat/%252E%252E/manager/html
/exemplos
As versões do Apache Tomcat de 4.x a 7.x incluem scripts de exemplo suscetíveis a divulgação de informações e ataques de script entre sites (XSS). Esses scripts, listados de forma abrangente, devem ser verificados quanto a acesso não autorizado e exploração potencial. Encontre mais informações aqui
/exemplos/jsp/num/numguess.jsp
/exemplos/jsp/dates/date.jsp
/exemplos/jsp/snp/snoop.jsp
/exemplos/jsp/error/error.html
/exemplos/jsp/sessions/carts.html
/exemplos/jsp/checkbox/check.html
/exemplos/jsp/colors/colors.html
/exemplos/jsp/cal/login.html
/exemplos/jsp/include/include.jsp
/exemplos/jsp/forward/forward.jsp
/exemplos/jsp/plugin/plugin.jsp
/exemplos/jsp/jsptoserv/jsptoservlet.jsp
/exemplos/jsp/simpletag/foo.jsp
/exemplos/jsp/mail/sendmail.jsp
/exemplos/servlet/HelloWorldExample
/exemplos/servlet/RequestInfoExample
/exemplos/servlet/RequestHeaderExample
/exemplos/servlet/RequestParamExample
/exemplos/servlet/CookieExample
/exemplos/servlet/JndiServlet
/exemplos/servlet/SessionExample
/tomcat-docs/appdev/sample/web/hello.jsp
Exploração de Traversão de Caminho
Em algumas configurações vulneráveis do Tomcat, você pode obter acesso a diretórios protegidos no Tomcat usando o caminho: /..;/
Portanto, por exemplo, você pode ser capaz de acessar a página do gerenciador do Tomcat acessando: www.vulnerable.com/lalala/..;/manager/html
Outra maneira de contornar caminhos protegidos usando esse truque é acessar http://www.vulnerable.com/;param=value/manager/html
RCE
Por fim, se você tiver acesso ao Gerenciador de Aplicativos Web do Tomcat, você pode fazer upload e implantar um arquivo .war (executar código).
Limitações
Você só poderá implantar um WAR se tiver privilégios suficientes (funções: admin, manager e manager-script). Esses detalhes podem ser encontrados em tomcat-users.xml geralmente definido em /usr/share/tomcat9/etc/tomcat-users.xml
(varia entre as versões) (veja POST seção).
Metasploit
Shell Reverso MSFVenom
Criar o arquivo war para implantar:
Faça o upload do arquivo
revshell.war
e acesse-o (/revshell/
):
Conexão reversa e shell com tomcatWarDeployer.py
Em alguns cenários, isso não funciona (por exemplo, em versões antigas da sun)
Download
Shell reverso
Bind shell
Usando Culsterd
Método manual - Web shell
Crie index.jsp com este conteúdo:
Método Manual 2
Obtenha um web shell JSP como este e crie um arquivo WAR:
POST
O nome do arquivo de credenciais do Tomcat é tomcat-users.xml
Outras maneiras de obter credenciais do Tomcat:
Outras ferramentas de varredura do tomcat
Referências
Grupo de Segurança Try Hard
Last updated