LSLínguas Sem BenaventeInglês para brasileiros

Aula

Segurança B1

Nível: B1

Objetivo

Reconhecer e explicar em inglês os conceitos centrais de segurança de aplicações — authentication, authorization, encryption, token, permission, vulnerability e injection — e descrever um risco de segurança e sua mitigação básica em frases claras.

Explicação

A segurança de uma aplicação combina vários mecanismos que se complementam. Authentication confirma a identidade do usuário: *"Did the system authenticate the user with a password and a one-time code?"* Authorization decide o que esse usuário pode fazer depois de autenticado: *"Once the user is authenticated, the policy authorizes her to read the dashboard but not to export customer data."*

Encryption protege dados em trânsito e em repouso. Em trânsito, usa-se TLS sobre HTTP. Em repouso, o disco ou o banco usa algoritmos como AES. Encrypt transforma dados legíveis em ciphertext, que só pode ser lido com a chave correta.

Tokens carregam credenciais de forma temporária. Tokens de sessão expiram em minutos ou horas. JWTs podem ter um tempo de vida curto e devem ser renovados com refresh tokens. Tokens expirados ou revogados não devem ser aceitos pelo serviço.

Permissions definem ações por recurso. O princípio do least privilege diz: conceda apenas as permissões estritamente necessárias para a tarefa. Isso reduz o blast radius caso uma conta seja comprometida.

Vulnerabilities são fraquezas exploráveis. Injection é uma família: o atacante insere comandos em campos de entrada. SQL injection injeta SQL; command injection injeta comandos do sistema; XSS injeta JavaScript no navegador.

A mitigation básica inclui:

  • input validation e parameterized queries para evitar injection;
  • multi-factor authentication (MFA) para fortalecer authentication;
  • least privilege e revisão periódica de permissions;
  • encryption in transit (TLS) e at rest;
  • patch management, dependency scanning e audits regulares.

Sempre que descrever um risco, nomeie a vulnerabilidade, o impacto potencial e a mitigação. Por exemplo: *"The endpoint exposes a SQL injection vulnerability. An attacker could read the customers table. We will mitigate it with parameterized queries and input validation."*

Exemplos

InglêsTraduçãoObservação
We use multi-factor authentication for every admin account.Usamos autenticação multifator para toda conta de administrador.MFA strengthens authentication.
After authentication, the service authorizes the user to read public endpoints only.Após a autenticação, o serviço autoriza o usuário a ler apenas endpoints públicos.Authorization comes after authentication.
All API traffic is encrypted with TLS 1.3.Todo o tráfego de API é criptografado com TLS 1.3.Encryption in transit.
The access token expires after fifteen minutes.O token de acesso expira após quinze minutos.Short token lifetime reduces risk.
An SQL injection vulnerability allowed the attacker to read the customers table.Uma vulnerabilidade de SQL injection permitiu que o atacante lesse a tabela de clientes.Injection vulnerabilities expose data.
We follow the principle of least privilege when we grant permissions.Seguimos o princípio do menor privilégio ao conceder permissões.Least privilege limits the blast radius.
The security team will audit the new endpoint before the release.A equipe de segurança vai auditar o novo endpoint antes do release.An audit catches vulnerabilities early.

Erros comuns

  • Confundir authentication com authorization: a primeira verifica identidade, a segunda verifica permissões.
  • Traduzir 'injection' como 'injeção' e esquecer o contexto: em inglês técnico, mantenha 'injection' (SQL injection, command injection).
  • Usar 'encode' no lugar de 'encrypt': encode é apenas formato reversível sem chave; encrypt exige a chave para reverter.
  • Dizer 'We need a license' quando o contexto é permissão de acesso: o correto é 'We need permission to access the bucket.'
  • Esquecer o plural em 'permissions': 'The role grants many permissions', não 'many permission'.
  • Dizer 'make a login' em vez de 'authenticate' ou 'log in': prefira 'authenticate the user' ou 'log the user in'.

Prática guiada

Responda em inglês com 1-2 frases cada:

  • Qual a diferença entre authentication e authorization?
  • O que significa 'the access token expired'?
  • Dê uma mitigação básica para SQL injection.
  • Por que o princípio de least privilege é importante para service accounts?

Tente usar pelo menos um termo técnico em cada resposta (vulnerability, mitigation, permission, etc.).

Resumo

Authentication confirma quem é o usuário; authorization decide o que ele pode fazer. Encryption protege dados em trânsito (TLS) e em repouso. Tokens carregam credenciais temporárias e devem expirar. Permissions seguem least privilege para reduzir blast radius. Vulnerabilities como injection exigem mitigação com input validation, parameterized queries, MFA, encryption e patches regulares.

Vocabulário

Palavras principais

18 itens
authenticationverificação de identidade

The system uses multi-factor authentication for admins.

O sistema usa autenticação multifator para administradores.
authorizationverificação de permissões

After authentication, the policy handles authorization.

Após a autenticação, a política cuida da autorização.
authenticateverificar a identidade

The API authenticates the user with a token.

A API autentica o usuário com um token.
authorizeautorizar, conceder acesso

The role authorizes the service to read the bucket.

A role autoriza o serviço a ler o bucket.
encryptioncriptografia

Encryption protects data at rest and in transit.

A criptografia protege dados em repouso e em trânsito.
encryptcriptografar

The service encrypts the payload with AES-256.

O serviço criptografa o payload com AES-256.
tokencredencial digital temporária

The access token expires after fifteen minutes.

O token de acesso expira após quinze minutos.
permissionpermissão, direito de acesso

The role grants read-only permissions to the report.

A role concede permissões somente de leitura ao relatório.
vulnerabilityvulnerabilidade, fraqueza explorável

The team found a critical vulnerability in the login form.

A equipe encontrou uma vulnerabilidade crítica no formulário de login.
injectioninjeção de código ou dados maliciosos

SQL injection can expose the entire database.

SQL injection pode expor todo o banco de dados.
mitigatemitigar, reduzir o risco

We mitigate the risk with input validation.

Mitigamos o risco com validação de entrada.
credentialcredencial, dados de login

Never store credentials in plain text.

Nunca armazene credenciais em texto puro.
validatevalidar, verificar

The endpoint validates all user input.

O endpoint valida toda entrada do usuário.
patchcorreção de vulnerabilidade

We applied a security patch on Monday.

Aplicamos um patch de segurança na segunda-feira.
breachincidente de segurança, violação

The breach exposed millions of customer records.

A violação expôs milhões de registros de clientes.
auditauditoria, revisão de segurança

The security audit found three high-risk issues.

A auditoria de segurança encontrou três problemas de alto risco.
least privilegemenor privilégio

We follow least privilege when we grant access.

Seguimos o menor privilégio ao conceder acesso.
multi-factor authentication (MFA)autenticação multifator

MFA adds a second factor to the login flow.

MFA adiciona um segundo fator ao fluxo de login.

História

História: Segurança B1

Nível: B1

História em inglês

A strange query

On Monday morning, Marina opened the access logs of the customer search API. She noticed a long string in one of the queries: ' OR '1'='1. The same client had sent dozens of similar requests in the last hour. "This looks like SQL injection," she wrote in the team channel. Tom, the security lead, replied within minutes.

Why it's dangerous

Tom explained that the search field concatenated user input directly into the query. "An attacker can read other tables, modify rows, or even drop the entire database," he said. Marina asked whether the problem came from weak authentication. Tom answered: "Authentication is fine. The vulnerability is in how we build the query, not in the login flow." He added: "If the service account has permissions on every table, the blast radius is much larger."

The mitigation plan

The team decided to rewrite the search using parameterized queries. They added input validation to reject unexpected characters in the search field. They also enforced HTTPS so that all API traffic is encrypted in transit. They shortened the access token lifetime from one hour to fifteen minutes. They reviewed the service account and applied the principle of least privilege. Marina opened a security patch ticket and added an audit step to the release checklist.

Tradução linha por linha

InglêsTradução
On Monday morning, Marina opened the access logs of the customer search API.Na segunda-feira de manhã, Marina abriu os logs de acesso da API de busca de clientes.
She noticed a long string in one of the queries: ' OR '1'='1.Ela notou uma string longa em uma das consultas: ' OR '1'='1.
The same client had sent dozens of similar requests in the last hour.O mesmo cliente tinha enviado dezenas de requisições parecidas na última hora.
"This looks like SQL injection," she wrote in the team channel.“Isso parece SQL injection”, ela escreveu no canal da equipe.
Tom, the security lead, replied within minutes.Tom, o líder de segurança, respondeu em minutos.
Tom explained that the search field concatenated user input directly into the query.Tom explicou que o campo de busca concatenava a entrada do usuário diretamente na consulta.
"An attacker can read other tables, modify rows, or even drop the entire database," he said.“Um atacante pode ler outras tabelas, modificar linhas ou até apagar o banco inteiro”, disse ele.
Marina asked whether the problem came from weak authentication.Marina perguntou se o problema vinha de uma autenticação fraca.
Tom answered: "Authentication is fine. The vulnerability is in how we build the query, not in the login flow."Tom respondeu: “A autenticação está ok. A vulnerabilidade está em como montamos a consulta, não no fluxo de login.”
He added: "If the service account has permissions on every table, the blast radius is much larger."Ele acrescentou: “Se a service account tiver permissões em todas as tabelas, o blast radius é muito maior.”
The team decided to rewrite the search using parameterized queries.A equipe decidiu reescrever a busca usando parameterized queries.
They added input validation to reject unexpected characters in the search field.Eles adicionaram input validation para rejeitar caracteres inesperados no campo de busca.
They also enforced HTTPS so that all API traffic is encrypted in transit.Eles também forçaram HTTPS para que todo o tráfego da API seja criptografado em trânsito.
They shortened the access token lifetime from one hour to fifteen minutes.Eles encurtaram o tempo de vida do access token de uma hora para quinze minutos.
They reviewed the service account and applied the principle of least privilege.Eles revisaram a service account e aplicaram o princípio de least privilege.
Marina opened a security patch ticket and added an audit step to the release checklist.Marina abriu um ticket de security patch e adicionou uma etapa de audit ao checklist de release.

Notas de vocabulário

  • SQL injection = ataque que injeta SQL malicioso em campos de input; mitigue com parameterized queries e input validation.
  • concatenated user input = junção direta da entrada do usuário com a consulta SQL; é a origem da vulnerabilidade.
  • parameterized queries = consultas com placeholders que recebem valores de forma isolada, impedindo injection.
  • input validation = checagem da entrada contra um formato esperado antes de processá-la.
  • blast radius = alcance do dano caso uma conta, credencial ou sistema seja comprometido.
  • access token lifetime = tempo de validade de um token; quanto menor, menor o risco de uso indevido.
  • principle of least privilege = conceda a cada conta apenas as permissões estritamente necessárias.
  • security patch = correção aplicada para fechar uma vulnerabilidade conhecida.

Perguntas de compreensão

  1. What did Marina see in the access logs?
  2. What was the root cause of the vulnerability?
  3. Did the issue come from a weak login?
  4. How did the team rewrite the search?
  5. What happened to the access token lifetime?
  6. Which principle did the team apply to the service account?
  7. What did Marina add to the release checklist?

Prática com a história

  1. Traduza: O atacante explorou uma vulnerabilidade de injeção.
  2. Complete: We use parameterized ___ to prevent SQL injection.
  3. Responda em 1 frase: Why is least privilege important for a service account?
  4. Corrija: The data is encoding at rest with AES-256.

Prática

Exercícios e teste

Próxima etapa
6blocos de exercícios disponíveis neste tema
10questões de teste para revisar depois da aula

A próxima melhoria é transformar esses arquivos em perguntas com resposta no navegador. Por enquanto, esta página já organiza o estudo e permite seguir a aula inteira sem abrir os arquivos manualmente.