# Seguranca ## Visao Geral O Neotask e construido com seguranca como principio fundamental. Cada camada, da ativacao de licenca ao armazenamento de dados e comunicacao de rede, e projetada para proteger seus dados e impedir acesso nao autorizado. ## Seguranca de Licenca - **Vinculacao de Dispositivo**: Cada licenca e criptograficamente vinculada a um unico dispositivo via impressao digital SHA-256. - **Assinatura de Requisicoes HMAC-SHA256**: Todas as requisicoes de API sao assinadas com um segredo por dispositivo, nonce e timestamp. - **Comparacao Segura por Tempo**: Todas as comparacoes de segredos usam algoritmos de tempo constante para prevenir ataques de timing. - **Ciclo de Vida de Tokens**: A expiracao de tokens de acesso e atualizacao e controlada no lado do servidor via claims JWT assinados, permitindo revogacao instantanea. - **Revalidacao Automatica**: Sua licenca e verificada a cada 6 horas. - **Periodo de Graca Offline**: 72 horas de acesso offline antes que a revalidacao seja necessaria. - **Revogacao Remota**: Licencas podem ser revogadas no lado do servidor instantaneamente. ## Autenticacao de Dois Fatores (TOTP) O Neotask suporta autenticacao de dois fatores opcional (mas recomendada) para acesso ao painel. - Compativel com Google Authenticator, Authy, 1Password e qualquer aplicativo compativel com TOTP. - Codigos de backup sao fornecidos durante a configuracao. Esses codigos sao hasheados com SHA-256 e sao de uso unico. - TOTP pode ser ativado ou desativado a qualquer momento na secao **Seguranca** nas configuracoes do seu painel. ## Criptografia ### Dados em Repouso - **AES-256-GCM**: Todos os tokens, segredos e chaves de API sao criptografados em repouso. - **Chaves Derivadas da Maquina**: Chaves de criptografia sao derivadas via scrypt da identidade do seu dispositivo. - **Sem Armazenamento em Texto Puro**: Tokens nunca sao armazenados em texto puro. ### Dados em Transito - **TLS 1.3**: Toda comunicacao de API trafega por HTTPS. - **WebSocket Secure (WSS)**: Comunicacao do gateway em tempo real e criptografada. - **Assinatura HMAC**: Toda requisicao inclui uma assinatura de nonce e timestamp. ### Segredos de Ambiente - **Criptografia de Duas Camadas**: Criptografia de ambiente em tempo de build usa chaves separadas. - **Sem Segredos Hardcoded**: Zero chaves de API ou tokens existem no codigo-fonte. - **Redacao de Logs**: Dados sensiveis sao automaticamente removidos dos logs. ## Seguranca do Aplicativo Desktop ### Endurecimento Electron O Neotask aplica configuracoes de seguranca rigorosas do Electron para proteger o aplicativo desktop: - `sandbox: true`: O processo de renderizacao roda em um ambiente sandboxed. - `contextIsolation: true`: Sem acesso direto ao processo principal a partir da UI. - `nodeIntegration: false`: Nenhuma API Node.js e exposta a UI. - `webSecurity: true`: A politica de mesma origem e aplicada. ### Content Security Policy (CSP) - `default-src 'self'`: Apenas recursos do proprio aplicativo sao carregados. - `script-src 'self'`: Nenhum script externo e permitido. - Janelas popup sao bloqueadas. - Navegacao e bloqueada para prevenir ataques de redirecionamento. - Recarregamento de pagina e bloqueado para prevenir manipulacao de estado. ### Integridade do Aplicativo - **Integridade ASAR**: Verificacao de hash SHA-256 do aplicativo empacotado. - **Atestacao de Versao**: Um manifesto assinado pelo servidor com capacidade de kill switch. - **Ofuscacao de Codigo**: Ofuscacao JavaScript e aplicada em builds de producao. - **Modo de Falha Total**: O aplicativo bloqueia completamente em qualquer falha de integridade. ## Seguranca de Rede ### Isolamento do Gateway - O gateway roda apenas em **loopback** (127.0.0.1), o que significa zero exposicao de rede externa. - Nenhuma conexao de entrada de fora da sua maquina e aceita. - Concessoes de sessao tem tempo de vida de 10 minutos, sao vinculadas ao dispositivo e assinadas com HMAC. ### Bloqueio de 3 Tentativas - Apos 3 falhas consecutivas de operacao do gateway, todas as operacoes sao bloqueadas. - Um reset manual e necessario para restaurar o acesso. - Este mecanismo previne tentativas de forca bruta. ## Seguranca de API ### Metodos de Autenticacao | Metodo | Usado Para | Nivel de Seguranca | |--------|------------|-------------------| | **JWT Bearer Token** | Painel web, chamadas de API | Padrao (expiracao de 90 dias) | | **License HMAC** | Operacoes do aplicativo desktop | Alto (segredo por dispositivo) | | **Session Grants** | Operacoes do gateway | Muito Alto (10 min, assinado com HMAC) | | **TOTP** | Login no painel | Fator adicional | ### Limites de Taxa | Endpoint | Limite | |----------|--------| | Formulario de contato | 5 requisicoes por 15 minutos | | Tentativas de login | 10 requisicoes por 15 minutos | | Analytics/rastreamento | 30 requisicoes por 60 segundos | ### Validacao de Entrada - Todos os parametros IPC sao validados antes do processamento. - Todas as entradas de API sao sanitizadas. - Protecoes contra SQL injection, XSS e command injection estao implementadas. ## Seguranca de Chaves do Provedor (BYOK) Ao usar o modo Bring Your Own Key (BYOK), o Neotask aplica salvaguardas adicionais as suas chaves de API: - Chaves de API sao criptografadas com AES-256-GCM antes do armazenamento. - Chaves nunca sao registradas ou expostas em mensagens de erro. - Chaves sao exibidas em formato mascarado no painel (apenas os ultimos 4 caracteres sao visiveis). - Exclusao segura e realizada quando uma chave e removida. ## Modo Seguro O Neotask inclui um recurso de Modo Seguro que fornece um sandbox de execucao para agentes: - Sandbox de execucao por agente isola as operacoes de cada agente. - Operacoes sensiveis requerem aprovacao explicita do usuario antes de prosseguir. - Um toggle mestre permite ativar ou desativar o Modo Seguro globalmente. - Reativacao automatica por agendamento garante que o Modo Seguro seja reativado apos alteracoes temporarias. - Sincronizacao de politicas em tempo real mantem as configuracoes consistentes em todas as conexoes. ## Auditoria e Conformidade - Todas as alteracoes de configuracao sao registradas com timestamps. - Hashing de configuracao detecta modificacoes nao autorizadas. - Telemetria de uso (opt-in) permite deteccao de anomalias. - CORS e restrito apenas a dominios autorizados. - Cabecalhos de seguranca Helmet sao aplicados em todas as respostas web. ## Melhores Praticas 1. **Ative TOTP** no seu painel para autenticacao de dois fatores. 2. **Baixe codigos de backup** e armazene-os com seguranca. 3. **Defina orcamentos diarios** para prevenir cobranças inesperadas. 4. **Use o modo BYOK** se quiser controle total sobre suas chaves de API. 5. **Mantenha o aplicativo atualizado**, pois as atualizacoes automaticas incluem patches de seguranca. 6. **Revise as permissoes dos agentes** periodicamente nas configuracoes do Modo Seguro.