Os developers do Apache Struts estão a encorajar os utilizadores da ferramenta a atualizar uma biblioteca de upload de ficheiros devido à existência de duas vulnerabilidades que podem ser exploradas em ataques de RCE e DoS.

A equipa de desenvolvimento de software do Apache Struts anunciou que a biblioteca Commons FileUpload, que é o mecanismo padrão de upload de ficheiros no Struts 2, está vulnerável a RCE e pode ser explorada in-the-wild.

A falha, identificada como CVE-2016-1000031, foi descoberta pelos investigadores da Tenable em 2016. Foi corrigida com o lançamento do Commons FileUpload versão 1.3.3 em junho de 2017.

“There exists a Java Object in the Apache Commons FileUpload library that can be manipulated in such a way that when it is deserialized, it can write or copy files to disk in arbitrary locations. Furthermore, while the Object can be used alone, this new vector can be integrated with ysoserial to upload and execute binaries in a single deserialization call,” Tenable said when it disclosed the security bug.

 

As versões 2.5.12 do Struts já estão a usar a versão 1.3.3 da biblioteca, mas as apps que usam o Struts 2.3.36 e anterior precisam atualizar a biblioteca manualmente, substituindo o ficheiro JAR commons-fileupload no WEB-INF / lib pela versão corrigida.

A versão 1.3.3 da biblioteca Commons FileUpload também inclui uma correção para uma vulnerabilidade DoS menos grave descoberta em 2014 e identificada como CVE-2014-0050.

apache-struts-vulnerability

 

Ciberatacantes podem explorar essa falha para lançar ataques DoS em websites publicamente acessíveis, alertaram os developers do Apache Struts. Esta vulnerabilidade foi corrigida pela primeira vez em fevereiro de 2014 com o lançamento da versão 1.3.1.

Johannes Ullrich, reitor do Instituto de Tecnologia SANS, também aconselhou os utilizadores a verificarem outras cópias da biblioteca nos sistemas, já que o Struts não é o único a usá-la.

Não é incomum que hackers explorem as vulnerabilidades do Apache Struts in-the-wild, mesmo um ano depois de terem sido corrigidas.

Um exemplo recente envolve o CVE-2018-11776, um bug fácil de explorar que os criminosos exploraram para injetar códigos maliciosos para minerar criptomoedas.