O cuidado com a segurança de um sistema não é restrito a uma única fase do ciclo de desenvolvimento de um sistema, embora a fase de escrita do código mereça atenção especial. Considerando os conceitos relacionados a ambiente seguro no PHP, indique a alternativa correta.
Questão
O cuidado com a segurança de um sistema não é restrito a uma única fase do ciclo de desenvolvimento de um sistema, embora a fase de escrita do código mereça atenção especial. Considerando os conceitos relacionados a ambiente seguro no PHP, indique a alternativa correta.
Alternativas
a) Um ambiente seguro é de fácil implementação, bastando seguir algumas rotinas preestabelecidas.
b) Cookies devem ser usados para garantir a segurança de sistemas web.
c) Sessões não devem ser usadas por não serem seguras.
d) Devem-se implementar soluções que avaliem a combinação entre risco e usabilidade.
e) A segurança é de responsabilidade dos usuários, que devem proteger seus dispositivos com antivírus.
Explicação
Para segurança em aplicações PHP (e em sistemas web em geral), não existe “receita pronta” simples: a proteção depende de contexto, ameaças, requisitos e do impacto no uso do sistema.
Analisando as alternativas:
a) Incorreta. Segurança não é de fácil implementação nem se resolve apenas com rotinas fixas; envolve análise de ameaças, validação de entrada, controle de acesso, criptografia quando aplicável, configuração do servidor/PHP, atualização de dependências etc.
b) Incorreta. Cookies não garantem segurança; são apenas um mecanismo de armazenamento/identificação no cliente e podem inclusive ser um vetor de risco se mal configurados (ex.: sem HttpOnly, Secure, SameSite).
c) Incorreta. Sessões podem ser usadas com segurança quando bem implementadas (ex.: regeneração de ID, tempo de expiração, proteção contra fixation/hijacking, uso de HTTPS).
d) Correta. Boas práticas de segurança recomendam equilibrar risco x usabilidade: controles muito rígidos podem inviabilizar o uso; controles fracos aumentam a superfície de ataque. O ideal é adotar mecanismos proporcionais ao risco (ex.: autenticação forte onde há maior impacto, validações e logging adequados, política de sessão compatível com o tipo de sistema etc.).
e) Incorreta. Segurança é responsabilidade compartilhada, mas não pode ser atribuída ao usuário. O sistema deve ser desenvolvido e configurado com medidas de segurança adequadas independentemente de o usuário ter antivírus.
Alternativa correta: (d).