DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=26279>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=26279

execute commands on OS via listeners

           Summary: execute commands on OS via listeners
           Product: Tomcat 5
           Version: 5.0.16
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: Critical
          Priority: Other
         Component: Servlet & JSP API
        AssignedTo: [EMAIL PROTECTED]
        ReportedBy: [EMAIL PROTECTED]


sorry my english, try to translate, because it is a serius problem:

em servlets e jsp's não é permitido executar comandos externos no servidor 
(como é possível em qualquer classe java, através da java.lang.Runtime, por 
exemplo).

por exemplo: Runtime.getRuntime().exec("rm -rf /etc/lilo.conf"), se eu colocar isso 
num  servlet ou num jsp não acontece nada... ainda bem...

mas... esqueceram de implementar esta política de segurança em listeners e 
acredito também (não testei) em filters, que são classes especiais que são 
utilizadas p/ "filtrar" requisições (filters) e "escutar" eventos no contexto 
(listeners) da aplicação...

em uma classe que implementa a ServletContextListener (que "escuta" eventos no 
contexto da aplicação, quando a mesma ou o tomcat é iniciado ou finalizado) 
eu consegui executar comandos como o citado no exemplo acima!!!!

e como os "administradores de rede" geralmente executam o tomcat como root 
(ruindous então é uma piada), imaginem o estrago que dá p/ ser feito com 
isso!!!! mas p/ que isto ocorra o "atacante" tem que ter acesso a uma conta 
no server p/ poder criar um ou alterar um listener existente... o que 
dificulta o aplicação da técnica acima... mas não deixa de ser uma grande 
falha, pois com uma conta qualquer em um servidor rodando o tomcat eu posso 
criar um listener (ou filter) e executar comandos no sistema caso o tomcat 
seja executado como root!!!!

acredito que ainda ninguém tenha se tocado desse "fato", pois não encontrei na 
web nada relacionado... mas...

provavelmente por que a manipulação de listeners e filters sejam técnicas um 
pouco avançadas e poucas pessoas as utilizam em aplicações web no tomcat.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to