O fragmento de código a seguir recebe o nome de um arquivo c...
Próximas questões
Com base no mesmo assunto
Ano: 2024
Banca:
FGV
Órgão:
INPE
Prova:
FGV - 2024 - INPE - Tecnologista Júnior I - Ambientes Críticos de Tecnologia da Informação em Centro de Dados |
Q2515481
Segurança da Informação
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.

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

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