← Voltar ao portfólio
Segurança e conformidade

Dossiê de Auditoria para Homologação de TI

Informações técnicas para avaliação corporativa da arquitetura, superfície de rede, persistência, segurança, licenciamento e instalação do Vetorizador PRO.

Versão: 1.3.7 Plataforma: Windows 10/11 x64 Atualizado: 25/09/2026

1. Sumário executivo

O Vetorizador PRO é um aplicativo desktop para Windows, construído sobre Electron, que auxilia na extração assistida de polígonos a partir de imagens de mapa, PDFs de matrícula e shapefiles, com apoio de um núcleo determinístico em Rust/WebAssembly.

A aplicação adota persistência local-first: não há backend em nuvem próprio, telemetria enviada ao fabricante nem sincronização remota dos dados do usuário. As comunicações externas são chamadas pontuais a serviços públicos governamentais e de geocodificação, detalhadas na Seção 3.

2. Arquitetura da solução

  • Runtime: Electron 44.x, com Chromium e Node.js empacotados.
  • Frontend: HTML, CSS e JavaScript compilados via Vite, com contextIsolation: true, nodeIntegration: false e sandbox: true.
  • Núcleo geométrico: módulo Rust compilado para WebAssembly, executado localmente.
  • Backend embarcado: servidor HTTP Node.js vinculado somente a 127.0.0.1, sem exposição à rede.
  • IA assistiva local: OCR e visão computacional executados no dispositivo, sem serviço de IA em nuvem.
  • Sem backend proprietário remoto: arquivos e resultados operacionais não são enviados ao fabricante.

3. Superfície de comunicação externa

As chamadas usam a pilha de rede do Chromium por meio de electron.net, respeitando proxy e PAC configurados no Windows.

DestinoProtocoloFinalidadeDados enviados
geoserver.car.gov.brHTTPS/443Consulta WFS pública do SICARBounding box e UF
acervofundiario.incra.gov.brHTTPS/443Consulta WFS do SIGEF/INCRABounding box e UF
nominatim.openstreetmap.orgHTTPS/443GeocodificaçãoTexto de busca ou latitude/longitude
api.opentopodata.orgHTTPS/443Consulta altimétrica SRTMLista de coordenadas
  • Imagens, PDFs, shapefiles e geometrias vetorizadas não são enviados a esses serviços.
  • O servidor local não é acessível por outras máquinas da rede.
  • Não há analytics, telemetria, crash reporting ou verificação remota de licença.
  • As rotas locais /api/* validam origem e rejeitam chamadas cross-site típicas contra localhost.

4. Persistência e tratamento de dados

  • Execuções, presets, camadas e delimitações de APP são mantidos localmente em IndexedDB e localStorage.
  • Não existe sincronização, backup remoto ou banco central do fabricante.
  • GeoJSON, Shapefile, DOCX, PDF e planilhas são gerados localmente, sob ação do usuário.
  • Documentos e dados geoespaciais permanecem sob controle da instalação local.

5. Segurança do runtime Electron

ControleConfiguraçãoEfeito
contextIsolationtrueIsola a página do contexto privilegiado do Electron.
nodeIntegrationfalseImpede acesso direto do renderer às APIs Node.js.
sandboxtrueReduz a superfície de ataque do processo de renderização.
API privilegiadacontextBridgeExpõe somente operações específicas e controladas.
Navegação externaAllowlist explícitaBloqueia navegação arbitrária e abertura irrestrita de janelas externas.
DevTools em produçãoDesabilitado por padrãoEvita console aberto no pacote final, com reabertura apenas por variável de ambiente controlada.
webview e permissõesBloqueados/negadosReduz capacidades não necessárias no renderer publicado.
AtualizaçãoSem auto-updateMantém instalação e atualização sob controle de TI.

5.1 Controles adicionais do shell local

  • Respostas HTML locais incluem Content-Security-Policy, X-Content-Type-Options: nosniff, Referrer-Policy, X-Frame-Options, Cross-Origin-Opener-Policy e Cross-Origin-Resource-Policy.
  • A diretiva wasm-unsafe-eval está presente apenas para permitir a instanciação do módulo Rust/WebAssembly local; isso não amplia origens remotas permitidas.
  • Bibliotecas operacionais críticas do shell desktop são servidas localmente a partir de vendor/, sem dependência de CDN em tempo de uso.
  • Fluxos de DOM com dados externos em pontos sensíveis evitam interpolação direta com innerHTML.

6. Licenciamento e modelo comercial

  • Código-fonte próprio distribuído sob licença MIT.
  • Núcleo Rust/WASM sob dupla licença MIT/Apache-2.0.
  • Distribuição gratuita, sem bloqueio comercial ou validação remota de licença.

Consulte a relação completa de licenças e componentes.

7. Dependências principais

ComponenteLicençaUso
ElectronMITRuntime desktop
Leaflet / Leaflet.DrawBSD-2 / MITMapa e desenho de ROI
Turf.jsMITOperações geoespaciais
PDF.jsApache-2.0Renderização de PDF
shpjs / shp-writeMITLeitura e exportação de Shapefile
PaddleOCR / PaddlePaddleApache-2.0OCR e assistência local
ExcelJSMITExportação de planilhas
sharpApache-2.0Processamento de imagem local

8. Vulnerabilidades conhecidas

EscopoFerramentaResultado na data do dossiê
Aplicativo principalnpm audit --omit=dev0 vulnerabilidades
Serviço auxiliar api/npm audit --omit=dev0 vulnerabilidades

9. Instalação e privilégios

  • Instalador NSIS por usuário, sem exigir privilégios administrativos.
  • Pacote MSIX assinado disponível para Microsoft Store ou sideload corporativo.
  • Não instala serviços do Windows, tarefas agendadas ou drivers.

10. Checklist para avaliação de TI

ItemSituação
Instalação e execução sem privilégios administrativosAtendido
Somente loopback local, sem portas expostas à redeAtendido
Comunicação externa restrita a HTTPS e destinos identificadosAtendido
Proxy corporativo resolvido pela pilha do ChromiumAtendido
Sem telemetria ou envio de arquivos ao fabricanteAtendido
Operação local sem dependência de nuvemAtendido
Renderer isolado e em sandboxAtendido
Bloqueio de abuso cross-site contra localhostAtendido
Assets operacionais servidos localmente, sem CDN runtimeAtendido
DevTools fechadas por padrão no pacote finalAtendido
Sem atualização automática silenciosaAtendido
Assinatura do MSIX 1.3.5.0Válida e confiável no ambiente verificado
Pacote MSIX 1.3.x.0Gerar e validar para a próxima submissão