
Um exploit de PoC para CVE-2022-33891 - Execução Remota de Código (RCE) na interface do Apache Spark
A interface web do Apache Spark é suscetível a uma vulnerabilidade de injeção remota de comandos identificada como CVE-2022-33891. Essa falha surge devido ao tratamento inadequado da autenticação de usuários e do controle de acesso, especificamente quando as Listas de Controle de Acesso (ACLs) estão habilitadas. Com as ACLs ativadas por meio da opção de configuração spark.acls.enable, espera-se que um filtro de autenticação valide se um usuário possui as permissões necessárias para visualizar ou modificar o aplicativo. No entanto, existe uma vulnerabilidade dentro do HttpSecurityFilter que permite a suplantação de identidade por meio do fornecimento de um nome de usuário arbitrário.
Quando as ACLs estão habilitadas, um caminho de código específico dentro do HttpSecurityFilter falha ao verificar adequadamente as identidades dos usuários. Essa falha permite que um atacante contorne o mecanismo de autenticação e alcance uma função de verificação de permissões. Essa função inadvertidamente constrói e executa um comando shell Unix com base na entrada fornecida pelo usuário, levando à execução arbitrária de código no servidor que hospeda a interface web do Apache Spark.
A vulnerabilidade afeta as seguintes versões do Apache Spark:
Uma Prova de Conceito (PoC) foi desenvolvida para demonstrar a explorabilidade dessa vulnerabilidade. Esta PoC destina-se estritamente a fins educacionais e de pesquisa em segurança, para auxiliar na compreensão e mitigação dessa falha.
A PoC fornecida é apenas para fins educacionais e de hacking ético. O uso da PoC para ataques contra aplicações web ou servidores sem consentimento mútuo prévio é ilegal. O autor não assume nenhuma responsabilidade e não se responsabiliza por qualquer uso indevido ou dano causado por este material. Os usuários são instados a usar estas informações de forma responsável e ética.