
Segurança no Rails
Proteção CSRF, injeção SQL, XSS, mass assignment, gerenciamento de secrets, HTTPS
1Qual mecanismo o Rails usa por padrão para proteger contra ataques CSRF?
Qual mecanismo o Rails usa por padrão para proteger contra ataques CSRF?
Resposta
O Rails gera um token CSRF único por sessão e o inclui automaticamente nos formulários por meio de um campo hidden. Esse token é verificado no lado do servidor para cada requisição não-GET. O helper form_with insere esse token automaticamente, e protect_from_forgery vem ativado por padrão em ApplicationController.
2Como desativar a proteção CSRF para uma ação específica em um controller de API?
Como desativar a proteção CSRF para uma ação específica em um controller de API?
Resposta
O método skip_before_action :verify_authenticity_token desativa a verificação CSRF para ações específicas. Isso é comum em APIs que usam autenticação baseada em token (JWT, API key) em vez de sessões. Recomenda-se limitar essa exceção às ações estritamente necessárias usando a opção only.
3Qual vulnerabilidade é explorada neste código: User.where("name = '#{params[:name]}'")?
Qual vulnerabilidade é explorada neste código: User.where("name = '#{params[:name]}'")?
Resposta
A interpolação direta de params em uma consulta SQL permite a injeção SQL. Um atacante pode enviar name="'; DROP TABLE users; --" para executar código SQL arbitrário. Use os placeholders do ActiveRecord em vez disso: User.where(name: params[:name]) ou User.where("name = ?", params[:name]).
Qual método do ActiveRecord protege automaticamente contra a injeção SQL?
Como o Rails protege automaticamente contra ataques XSS nas views ERB?
+19 perguntas de entrevista
Outros temas de entrevista Ruby on Rails
Fundamentos de Ruby
Programação orientada a objetos em Ruby
Fundamentos do Rails
Routing & Controllers
Fundamentos do ActiveRecord
Views e templates ERB
Associações do ActiveRecord
Consultas avançadas do ActiveRecord
Formulários Rails
Autenticação e Autorização
Asset Pipeline moderno e frontend
Modo API do Rails
Testes com RSpec
ActiveJob & Background Jobs
ActionCable & WebSockets
ActionMailer
ActiveStorage
Estratégias de caching
Migrações avançadas
Rails Engines e apps modulares
Otimização de desempenho
Padrões de projeto no Rails
Metaprogramação em Ruby
GraphQL com Rails
Implantação e Produção
Monitoring & Logging
Estratégias de upgrade do Rails
Domine Ruby on Rails para sua proxima entrevista
Acesse todas as perguntas, flashcards, testes tecnicos, exercicios de code review e simuladores de entrevista.
Comece gratis