Inicie a máquina, hackeie o sistema e encontre as flags escondidas para completar este desafio e ganhar XP!
Execução Remota de Código (RCE) está entre as vulnerabilidades mais graves em segurança de aplicações web. Ela permite que um atacante execute comandos arbitrários no servidor que hospeda a aplicação, potencialmente levando ao comprometimento completo do sistema. Vulnerabilidades RCE em aplicações PHP são particularmente comuns devido às numerosas funções da linguagem que podem executar comandos do sistema ou avaliar código dinamicamente.
O PHP fornece várias funções perigosas que podem levar à execução remota de código quando combinadas com entrada do usuário não sanitizada. Funções como system(), exec(), shell_exec(), passthru() e o operador backtick executam comandos do sistema operacional. Da mesma forma, eval(), assert() e preg_replace() com o modificador /e podem avaliar código PHP a partir de strings. Quando qualquer uma dessas funções processa entrada controlável pelo usuário sem validação adequada, um atacante pode injetar e executar comandos arbitrários no servidor.
Compreender injeção de comandos requer conhecimento de como aplicações web interagem com o sistema operacional subjacente. Em um cenário típico, uma aplicação PHP pode passar a entrada do usuário para um comando do sistema - por exemplo, usando ping ou nslookup para verificar conectividade de rede. Um atacante pode escapar do comando pretendido injetando metacaracteres de shell como ponto e vírgula (;), pipes (|) ou sintaxe de substituição de comandos ($(command)) para anexar comandos adicionais. Os comandos injetados são executados com os mesmos privilégios do processo do servidor web.
A exploração bem-sucedida de RCE dá aos atacantes um ponto de apoio no servidor, a partir do qual podem ler arquivos sensíveis, acessar bancos de dados, pivotar para redes internas ou instalar backdoors persistentes. A prevenção requer evitar funções perigosas quando possível, usar comandos parametrizados, implementar validação estrita de entrada com whitelists e executar aplicações web com privilégios mínimos. Testes de segurança devem especificamente visar qualquer funcionalidade onde a entrada do usuário possa alcançar funções de execução de comandos.
Crie uma conta gratuita e pratique cibersegurança.
Inicie sua máquina dedicada para começar a hackear
Crie uma conta gratuita para iniciar seu próprio servidor dedicado, enviar flags e ganhar XP no ranking.
Começar a Hackear GrátisLabs que compartilham habilidades semelhantes
Escolha como deseja começar
Entre na sua conta