Assinale a opção que indica o tipo de vulnerabilidade que é geralmente associada à função javascript eval( )
- A)Cross-origin resource sharing (CORS)
CORS é um mecanismo de controle de origem entre sites, não a vulnerabilidade tipicamente associada ao uso de eval().
- B)Cross-site request forgery (CSRF)
CSRF é um ataque de falsificação de requisição, sem relação direta com a execução de código por eval().
- C)Cross-site scripting (XSS)
Correta, porque eval() pode executar conteúdo inserido pelo usuário e abrir espaço para injeção de script, típico cenário de XSS.
- D)Server-side request forgery (SSRF)
SSRF ocorre quando o servidor faz requisições indevidas para recursos internos, o que não é o caso do eval() no navegador.
- E)Cross Site History Manipulation (XSHM)
XSHM não é a associação clássica cobrada aqui; a banca procura o risco de execução de script no contexto do navegador.
Gabarito: C
A função eval() do JavaScript pega uma string e tenta executá-la como código. Isso pode parecer útil em alguns cenários, mas costuma ser um convite para problemas, porque qualquer entrada mal controlada pode virar script rodando no navegador da vítima. Em prova, quando aparece eval(), a banca quer que você pense imediatamente em risco de injeção de código no lado do cliente. O problema mais clássico ligado a isso é o Cross-site scripting (XSS). Se um atacante consegue inserir conteúdo que será passado para eval(), ele pode fazer o navegador executar comandos indesejados, roubar cookies, sequestrar sessão ou alterar a página. Em outras palavras: a aplicação vira uma máquina de rodar código alheio, e isso nunca termina bem. Por isso, o gabarito é a alternativa C. O uso inseguro de eval() é frequentemente apontado na literatura de segurança web e em guias como os da OWASP como uma prática que facilita XSS, especialmente quando recebe dados vindos do usuário sem validação e sem escape adequado. Resumo de concurso: eval() não é uma vulnerabilidade em si, mas é uma ferramenta que, se usada de forma insegura, abre a porta para XSS. Se a questão citar execução de string como código no navegador, acenda o alerta vermelho.