ReparAuto

Segurança

1. Arquitetura e Stack Tecnológica

A ReparAuto é uma aplicação web de página única (SPA) construída com React 19 e Vite 8, alojada no Firebase Hosting. O backend é inteiramente gerido pelo ecossistema Firebase / Google Cloud (plataforma como serviço — PaaS), não existindo servidores próprios ou APIs personalizadas. Esta arquitetura minimiza a superfície de ataque e transfere grande parte das responsabilidades de segurança de infraestrutura para a Google, que dispõe de certificações ISO 27001, SOC 1/2/3 e está em conformidade com o RGPD.

2. Segurança da Rede e Transporte

  • HTTPS Obrigatório: Todo o tráfego entre o navegador e o Firebase Hosting é encriptado com TLS 1.2+ (TLS 1.3 sempre que suportado pelo cliente).
  • Certificados SSL/TLS: Geridos automaticamente pelo Firebase Hosting através da infraestrutura Google (certificados renovados automaticamente).
  • Content Security Policy (CSP): A aplicação implementa headers CSP restritivos para mitigar ataques de Cross-Site Scripting (XSS) e de injeção de conteúdo, permitindo apenas a execução de scripts das origens confiáveis (firebaseapp.com, gstatic.com, apis.google.com, e o próprio domínio).

3. Autenticação e Controlo de Acesso

  • Firebase Authentication: O sistema de autenticação gerido pelo Firebase suporta email/password (com hash bcrypt do lado do servidor Firebase) e Google OAuth 2.0 (via popup, com tokens de acesso JWT).
  • Tokens de Sessão: As sessões são geridas através de tokens JWT (ID Tokens) emitidos pelo Firebase, com renovação automática e expiração configurada para segurança máxima.
  • Atualização de Password: A alteração de password é tratada diretamente pelo Firebase Auth, que exige reautenticação para operações sensíveis e notifica o utilizador por email em caso de alteração.

4. Segurança na Base de Dados (Firestore)

  • Firebase Security Rules: O acesso à base de dados Firestore é protegido por regras de segurança declarativas. Apenas utilizadores autenticados podem ler e escrever nas coleções, com validações específicas (ex.: apenas o criador pode editar ou eliminar o seu anúncio).
  • Validação no Servidor: As regras de segurança do Firestore incluem validação de tipos de dados, tamanhos e estrutura dos documentos, impedindo a inserção de dados malformados ou não conformes.
  • Auditoria: O Firebase dispõe de logs de auditoria (Cloud Audit Logs) para operações de administração e acesso aos dados.

5. Segurança no Armazenamento de Ficheiros (Storage)

  • Firebase Security Rules: O acesso ao Firebase Storage é protegido por regras que restringem a leitura a utilizadores autenticados e a escrita apenas ao proprietário do ficheiro.
  • Validação de Upload: As regras do Storage verificam o tipo MIME e o tamanho máximo dos ficheiros (10 MB por imagem), impedindo o upload de ficheiros executáveis ou maliciosos.
  • Encriptação: Todos os ficheiros armazenados no Firebase Storage são encriptados em repouso com AES-256, gerido pela Google Cloud.

6. Proteção contra Vulnerabilidades Comuns (OWASP Top 10)

  • XSS (Cross-Site Scripting): Mitigado através de CSP (Content Security Policy), sanitização de input no cliente (React escapa automaticamente conteúdo JSX) e validação no servidor via Firestore Security Rules. O conteúdo gerado pelos utilizadores (descrições de anúncios) é processado com renderização segura que restringe HTML a tags seguras.
  • Injection: O Firestore é uma base de dados NoSQL que utiliza consultas parametrizadas, eliminando o risco de SQL Injection. Não existem consultas SQL nem ORM na stack.
  • Cross-Site Request Forgery (CSRF): O Firebase Authentication utiliza tokens de ID JWT que são verificados em cada operação. Como não existem cookies de autenticação tradicionais nem formulários HTML submetidos a servidor próprio, o risco de CSRF é inerentemente baixo. Para operações sensíveis (eliminar conta, alterar email), o Firebase exige reautenticação recente.
  • Broken Authentication: Gerido pelo Firebase Authentication, que implementa boas práticas de segurança (rate limiting automático, proteção contra brute force, bloqueio de contas após múltiplas tentativas falhadas).
  • Sensitive Data Exposure: Não são armazenados dados de cartões de crédito, passwords em texto limpo ou dados biométricos. As passwords são geridas exclusivamente pelo Firebase Auth.

7. Minimização de Dados

A ReparAuto aplica o princípio da minimização de dados (art. 5.º, n.º 1, al. c) do RGPD): apenas são recolhidos os dados estritamente necessários ao funcionamento da plataforma. Não é solicitada documentação pessoal (CC, NIF), morada completa, dados bancários ou de pagamento.

8. Plano de Resposta a Incidentes

  • Deteção e Notificação: Na eventualidade de uma violação de dados pessoais, a ReparAuto notificará a CNPD no prazo máximo de 72 horas (art. 33.º do RGPD) e os titulares dos dados afetados sempre que a violação represente um risco elevado para os seus direitos e liberdades (art. 34.º do RGPD).
  • Correção: As equipas da Google Cloud / Firebase são responsáveis pela segurança da infraestrutura subjacente. Em caso de vulnerabilidade ao nível da aplicação, a ReparAuto compromete-se a corrigi-la num prazo razoável.
  • Contacto de Segurança: Para reportar vulnerabilidades ou incidentes de segurança, contacte: garagerecar@gmail.com.

9. Boas Práticas para o Utilizador

  • Utilize uma password única e forte para a sua conta ReparAuto (recomendamos um gestor de passwords).
  • Não partilhe as suas credenciais de acesso com terceiros.
  • Verifique se o URL do site começa por "https://reparauto-site.firebaseapp.com" ou o domínio personalizado associado.
  • Mantenha o seu navegador e sistema operativo atualizados.
  • Em caso de suspeita de acesso não autorizado à sua conta, altere a password e contacte-nos imediatamente.

10. Conformidade e Certificações

A infraestrutura Google Cloud / Firebase, que suporta a ReparAuto, dispõe das seguintes certificações e conformidades: ISO 27001, ISO 27017, ISO 27018, SOC 1/2/3, PCI DSS, FedRAMP, e está em conformidade com o RGPD (incluindo Certified SCCs para transferências internacionais de dados). A ReparAuto compromete-se a manter a plataforma em conformidade com a legislação aplicável, incluindo o RGPD, o DSA e a legislação nacional portuguesa.

11. Contacto

Para reportar vulnerabilidades de segurança, solicitar informações sobre as medidas implementadas ou qualquer outra questão de segurança, contacte: garagerecar@gmail.com.