Em sistemas Web utilizados por universidades, como Sistemas Integrados de GestãoAcadêmica, o protocolo HTTP é utilizado para comunicação entre navegadores dos usuários eservidores da aplicação. Métodos HTTP como GET e POST são empregados para envio dedados, enquanto cookies e sessões são utilizados para manter informações entrerequisições. Cookies podem incluir atributos de segurança adicionais, como HttpOnly e SameSite.
Considere o seguinte trecho de código em PHP, utilizado em um módulo de autenticação de umsistema acadêmico:
<?php
session_start();
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$matricula = $_POST['matricula'];
$_SESSION['aluno_logado'] = $matricula;
setcookie(
"ultimo_acesso",
date("Y-m-d H:i:s"),
[
'expires' => time() + 3600,
'httponly' => true,
'samesite' => 'Strict'
]
);
echo "Acesso registrado para o aluno: " . htmlspecialchars($matricula);
} else {
echo '<form method="POST">
Matrícula: <input type="text" name="matricula">
<input type="submit" value="Entrar no sistema">
</form>';
}
?>
Fonte: dados do elaborador
Com base no funcionamento do protocolo HTTP, no uso de sessões e cookies e nos atributos desegurança aplicados no código apresentado, analise as afirmações a seguir.
I. O atributo HttpOnly, configurado no cookie ultimo_acesso, impede que scriptsexecutados no navegador, como JavaScript, acessem diretamente o valor desse cookie.
II. O atributo SameSite=Strict restringe o envio do cookie em requisições originadas deoutros domínios, contribuindo para reduzir ataques de CSRF.
III. Uma vez criada, a variável de sessão $_SESSION['aluno_logado'] pode ser acessada apenas em requisições HTTP do tipo POST, pois foi definida em uma requisição desse tipo.
IV. Caso o formulário utilizasse o método GET em vez de POST, o valor da matrícula poderia aparecer na URL da requisição, o que pode ser indesejável em cenários em que o programador não quer deixar explícitos os valores dos parâmetros que estão sendo passados no formulário.
Assinale a alternativa CORRETA: