Magna Concursos
3261624 Ano: 2024
Disciplina: TI - Segurança da Informação
Banca: FGV
Orgão: INPE

O fragmento de código a seguir recebe o nome de um arquivo como parâmetro da linha de comando e mostra o seu conteúdo ao usuário. O script é configurado com setuid root, pois visa servir como uma ferramenta educacional para permitir que administradores de sistemas em treinamento examinem arquivos privilegiados do sistema, sem conceder-lhes a capacidade de alterá-los ou causar danos ao sistema.

int main(char* argc, char** argv) {

char cmd[CMD_MAX] = "/usr/bin/cat ";

strcat(cmd, argv[1]);

system(cmd);

}

Dado que o programa opera com privilégios de administrador, a função system() é igualmente executada com tais privilégios. Quando um usuário fornece um nome de arquivo padrão, a chamada funciona como esperado. Contudo, se um invasor inserir uma string como ";rm -rf /", a chamada system() falhará ao tentar executar o comando "cat" por falta de argumentos, resultando na tentativa subsequente de

 

Provas

Questão presente nas seguintes provas

Tecnologista Jr - Ambientes Críticos de TI

45 Questões