Segurança
Segurança e proteção de dados
O que realmente acontece com os seus arquivos no PuffinKit, como o site é protegido e onde estão os limites.
Tradução não oficial. A versão em inglês é a versão de referência.
Versão em inglês: Security and data protection
Visão geral da segurança
As ferramentas do PuffinKit que trabalham com os seus arquivos funcionam no seu navegador. O seu arquivo não é enviado, então não existe uma cópia em um servidor para proteger, vazar ou apagar. O restante desta página explica como isso funciona e como é garantido.
Processado no seu dispositivo
As duas ferramentas de CSV leem e alteram o seu arquivo dentro do seu navegador. O arquivo não é enviado.
Rede bloqueada enquanto você trabalha
As páginas das ferramentas instruem o seu navegador a recusar toda conexão de saída que a página ou o worker em segundo plano tentar fazer.
HTTPS em todas as páginas
As páginas chegam até você criptografadas, e os navegadores são instruídos a usar somente HTTPS.
Sem rastreamento
Sem contas, análises de uso, publicidade ou scripts de terceiros.
O que acontece com cada tipo de dado
| Dado | Onde fica | Quem pode ver | Por quanto tempo |
|---|---|---|---|
| Conteúdo do arquivo | Na memória da aba do seu navegador, no seu dispositivo | Só você. Nem o PuffinKit, nem a nossa hospedagem | Até você fechar ou recarregar a aba |
| Detalhes do arquivo (nome, tamanho, número de linhas e colunas) | Na aba do seu navegador, usados para mostrar os resultados e dar nome ao download | Só você | Até você fechar ou recarregar a aba |
| Registros de solicitações ao site | Cloudflare, o nosso provedor de hospedagem | Cloudflare, para entregar e proteger o site. Os registros mostram quais páginas foram solicitadas, nunca o conteúdo de arquivos | Definido pelo nosso provedor de hospedagem (a confirmar) |
| Modelos e mapeamentos salvos | No armazenamento local do seu navegador, somente se você clicar em Salvar | Só você, naquele dispositivo e navegador | Até você apagá-los ou limpar os dados do site |
| Pagamentos de contribuições | Na página de pagamento da Cashfree (não em puffinkit.com) | A Cashfree processa os dados do cartão e da conta bancária. Recebemos registros de pagamento, como valor, data e o nome e os dados de contato que você informar | Dados do cartão/da conta bancária: nunca ficam com o PuffinKit. Registros de pagamento: a confirmar |
Certificações
Ainda não há certificações listadas. Cada certificação vai aparecer aqui com o número do certificado, o órgão emissor, o escopo e as datas de validade, para que você possa conferi-la.
Proteção de dados desde a concepção
As ferramentas são feitas para que os dados pessoais dos seus arquivos nunca sejam coletados pelo PuffinKit, para começo de conversa. Essa é a proteção mais forte que existe: dados que nunca recebemos não podem ser expostos por nós.
Como as leis de proteção de dados se aplicam ao restante do site, como registros de solicitações, e-mail e contribuições, está descrito na Política de Privacidade.
Como funciona o processamento local no navegador
Quando você abre o CSV Import Error Repair ou o CSV Import Mapper & Converter, puffinkit.com envia ao seu navegador o código da ferramenta. A partir daí, tudo acontece no seu dispositivo.
- Você escolhe um arquivo. O navegador o lê do seu disco. Escolher um arquivo não o envia para lugar nenhum.
- Um worker em segundo plano o processa. A leitura, a verificação e a conversão rodam em um Web Worker dentro da mesma aba, para que a página continue respondendo.
- Você revisa cada alteração. Os resultados aparecem na página, e nada é alterado sem estar listado.
- O navegador salva o resultado. O download é montado na memória e entregue ao processo normal de download do seu navegador.
Detalhes técnicos
O arquivo é lido com a File API do navegador e transferido para um Web Worker de módulo dedicado, servido por puffinkit.com. O worker faz a leitura com um parser de CSV incluído no próprio código do site, mantém os dados na memória e responde às solicitações da página por troca de mensagens. A página e o worker recebem, cada um, uma Content Security Policy com connect-src 'none'.
Os downloads são criados com URL.createObjectURL a partir de um Blob na memória, que é um endereço local que nunca sai do navegador. Ele é revogado pouco depois de o download começar. Os arquivos ZIP são montados no worker por uma biblioteca incluída no site.
Os arquivos são enviados ou armazenados nos servidores do PuffinKit?
Não. O PuffinKit não tem upload de arquivos, armazenamento de arquivos nem servidor que processe arquivos.
puffinkit.com é um conjunto de páginas e scripts estáticos entregues pelo nosso provedor de hospedagem. Não há servidor de aplicação nem banco de dados por trás dele, nem código que receba arquivos. O nome e os detalhes do seu arquivo também nunca entram em um endereço web, então nunca aparecem nos registros de solicitações.
O que fica guardado está sempre no seu próprio dispositivo, e só quando você pede:
- um modelo ou mapeamento em que você clicar em Salvar (veja armazenamento no navegador);
- os arquivos que você baixar, incluindo arquivos de modelo ou de mapeamento exportados.
Ferramentas futuras: as ferramentas de PDF listadas como “em breve” ainda não foram criadas. O método de processamento delas aparece como “a confirmar”. Se alguma ferramenta futura precisar de um servidor, a página dela e esta página vão informar isso antes do lançamento, incluindo o que é enviado, para onde e por quanto tempo.
HTTPS e segurança no transporte
Todas as páginas e scripts são servidos por HTTPS, então são criptografados e protegidos contra adulteração entre o nosso provedor de hospedagem e o seu navegador. Solicitações por HTTP simples são redirecionadas para HTTPS. O site envia um cabeçalho Strict-Transport-Security, então um navegador que já visitou o site usa somente HTTPS, por um ano.
O HTTPS protege o código que você executa. Isso importa porque a segurança das ferramentas depende de o seu navegador executar o código legítimo do PuffinKit. Os seus arquivos em si não dependem de HTTPS, porque nunca são transmitidos. Pelo mesmo motivo, não dizemos que o PuffinKit tem “criptografia de ponta a ponta”.
Detalhes técnicos
O TLS é fornecido e os certificados são gerenciados por Cloudflare. O cabeçalho enviado é Strict-Transport-Security: max-age=31536000. Ele não inclui subdomínios e o site não está na lista de pré-carregamento (preload) dos navegadores, então a primeira visita depende do redirecionamento para HTTPS.
Content Security Policy e proteções do navegador
Toda resposta traz cabeçalhos de segurança que dizem ao seu navegador o que a página pode fazer. Eles valem para o site inteiro e são verificados por testes automatizados antes de cada versão.
| Cabeçalho | Valor | O que faz |
|---|---|---|
| Content-Security-Policy (páginas das ferramentas) | connect-src 'none' | Bloqueia solicitações fetch, XHR, WebSocket, EventSource e beacon feitas pela página. |
| Content-Security-Policy (workers das ferramentas) | connect-src 'none' | O mesmo bloqueio para o worker em segundo plano que processa o seu arquivo. |
| Content-Security-Policy (todas as páginas) | script-src 'self' 'unsafe-inline' | Os scripts só podem vir de puffinkit.com. Scripts de terceiros são recusados. |
| Content-Security-Policy (todas as páginas) | object-src 'none'; base-uri 'self'; form-action 'self' | Sem plugins, sem reescrita do destino dos links, e formulários só podem ser enviados para puffinkit.com. |
| Content-Security-Policy + X-Frame-Options | frame-ancestors 'none' · DENY | Outros sites não podem incorporar o PuffinKit em um frame (protege contra clickjacking). |
| Strict-Transport-Security | max-age=31536000 | Navegadores que já visitaram o site usam somente HTTPS em puffinkit.com por um ano. |
| Cross-Origin-Opener-Policy | same-origin | Páginas abertas a partir de outros sites não conseguem acessar uma janela do PuffinKit. |
| X-Content-Type-Options | nosniff | Os navegadores precisam tratar cada arquivo como o tipo que declaramos. |
| Referrer-Policy | strict-origin-when-cross-origin | Links para outros sites revelam no máximo “puffinkit.com”, nunca o endereço da página. |
| Permissions-Policy | camera=(), microphone=(), geolocation=(), payment=(), usb=() | O site não pode pedir acesso à sua câmera, microfone, localização, pagamentos ou dispositivos USB. |
O que essas proteções não cobrem
connect-src 'none' bloqueia solicitações de rede feitas por código. Não bloqueia navegação, links nem o carregamento de imagens. É uma rede de segurança por trás da garantia principal, que é o código das ferramentas nunca enviar os seus dados, para começo de conversa.
'unsafe-inline' é permitido para scripts porque o framework do site usa um pequeno carregador inline. Scripts externos de outros sites continuam sendo recusados.
Os cabeçalhos protegem o site. Eles não protegem contra malware ou extensões não confiáveis no seu próprio dispositivo.
Retenção de dados e armazenamento no navegador
Seus arquivos: ficam só na memória da aba e somem quando você fecha ou recarrega a aba. O PuffinKit não tem nenhuma cópia para guardar.
Armazenamento no navegador: o PuffinKit não define cookies próprios. Ele grava no armazenamento local do seu navegador somente quando você clica em Salvar:
- O CSV Import Error Repair salva o seu modelo de importação: nomes de colunas, tipos, regras e os valores permitidos que você tiver informado.
- O CSV Import Mapper & Converter salva até 50 mapeamentos: nomes de colunas, destino e configurações de conversão. Para campos com um conjunto fixo de valores (como yes/no), ele também guarda as traduções de valores que você escolheu, por exemplo “Y → yes”. Ele nunca salva linhas.
Você pode apagá-los na ferramenta ou limpando os dados deste site nas configurações do navegador. Em uma janela anônima, os navegadores os apagam quando a janela é fechada.
Registros de solicitações: o nosso provedor de hospedagem processa informações padrão das solicitações, como endereço IP, tipo de navegador e a página solicitada, para entregar e proteger o site. Por quanto tempo elas são guardadas é definido por Cloudflare e será confirmado na Política de Privacidade.
Serviços de terceiros e provedores de pagamento
Cloudflare: hospedagem
Serve o site e o protege contra abusos. Recebe informações padrão das solicitações, mas nunca os seus arquivos. Política de privacidade de Cloudflare
Cashfree Payments: contribuições opcionais
Se você decidir apoiar o PuffinKit, o pagamento é feito na própria página da Cashfree. A Cashfree cuida dos dados do seu cartão ou da sua conta bancária; o PuffinKit nunca os vê. Recebemos registros de pagamento, como o valor, a data e o nome e os dados de contato que você informar. Política de privacidade da Cashfree
Essa é a lista completa. O PuffinKit não usa análises de uso, publicidade, widgets de redes sociais, avaliações incorporadas, fontes externas nem bibliotecas de scripts de terceiros. As fontes e o código são servidos por puffinkit.com. Os links para outros sites, como páginas de ajuda das plataformas, são links comuns que você decide seguir.
Integridade do processamento de arquivos e limitações
Uma ferramenta que altera dados sem avisar já é um risco por si só, por isso as ferramentas de CSV são feitas para proteger a integridade dos seus dados:
- Nada muda sem avisar. Cada alteração fica listada para você revisar, e você pode desfazê-la antes de baixar.
- Trechos ambíguos ficam retidos, não são adivinhados. Se parte de um arquivo não puder ser lida com certeza, ela é separada para você decidir.
- Exportação exata por padrão. Os valores que você não alterou são gravados exatamente como estavam, incluindo identificadores, zeros à esquerda, Unicode e textos com várias linhas.
- Testes de regressão. Cada versão é verificada com um conjunto fixo de arquivos de exemplo cujo resultado esperado não pode mudar.
Limitações
- O tamanho do arquivo depende do seu dispositivo. O processamento acontece na memória do seu dispositivo, então o limite é de 50 MB em computadores, 15 MB em celulares e tablets que informam a própria memória, 10 MB nos que não informam e 8 MB em dispositivos com 2 GB de memória ou menos.
- Fechar a aba faz perder o trabalho não salvo, e não temos como recuperá-lo, porque ele nunca esteve com a gente.
- Os arquivos não passam por antivírus. Arquivos CSV são texto simples e as ferramentas nunca executam nada que esteja dentro deles. Tenha cuidado ao abrir arquivos de origem desconhecida em outros programas.
- O seu dispositivo também conta. Extensões do navegador podem ler qualquer página que você abre, incluindo as ferramentas. Em um computador compartilhado, apague os downloads e os modelos salvos quando terminar.
- Confira os resultados antes de importar. As ferramentas ajudam você a preparar um arquivo. O sistema para o qual você importa tem a palavra final sobre o que aceita.
Segurança dos arquivos baixados
Os downloads são criados no seu dispositivo e salvos pelo navegador como qualquer outro download. Eles nunca ficam em um servidor, então não existe um link de download que outra pessoa possa encontrar.
Fórmulas em planilhas: um valor que começa com =, +, - ou @ pode ser executado como fórmula quando um CSV é aberto no Excel ou no Google Sheets. Isso é conhecido como injeção de CSV ou de fórmulas. As duas ferramentas oferecem a opção de download Seguro para planilhas, que coloca um apóstrofo na frente desses valores para que não possam ser executados, e o CSV Import Error Repair informa quantos valores seriam alterados. Ela vem desativada por padrão porque altera esses valores, incluindo números de telefone como +44…, o que quebraria uma importação.
Depois de baixado, o arquivo fica sob a sua responsabilidade. Guarde-o com o mesmo cuidado que o original, principalmente se ele contiver dados pessoais.
Como relatar uma vulnerabilidade
Se você acredita ter encontrado um problema de segurança em puffinkit.com, avise a gente de forma privada pelo e-mail O e-mail de contato será adicionado antes do lançamento. Inclua:
- a página ou ferramenta afetada e o que um invasor poderia fazer;
- os passos para reproduzir o problema, usando dados de teste em vez de dados pessoais reais.
Por favor, não:
- acesse nem altere dados de outras pessoas;
- faça ataques de negação de serviço nem testes automatizados de alto volume;
- use engenharia social.
Lemos todos os relatos, vamos trabalhar com você para entender cada um e vamos corrigir os problemas confirmados. No momento, o PuffinKit não tem um programa de recompensas pagas por bugs (bug bounty).
Perguntas frequentes sobre segurança
O PuffinKit faz upload dos meus arquivos?
Não. O CSV Import Error Repair e o CSV Import Mapper & Converter processam os arquivos inteiramente no seu navegador. O arquivo nunca é enviado ao PuffinKit nem a mais ninguém, e as páginas das ferramentas bloqueiam conexões de rede de saída enquanto você trabalha.
A equipe do PuffinKit pode ver os meus dados?
Não. Como o arquivo nunca sai do seu dispositivo, não há nada do nosso lado para ver. Os registros de solicitações do nosso provedor de hospedagem mostram quais páginas foram carregadas, não o que você fez com um arquivo.
O que acontece com o meu arquivo quando eu fecho a aba?
Ele desaparece. O arquivo só existe na memória da aba. Só um modelo ou mapeamento que você decidiu salvar continua neste navegador, e ele guarda configurações de colunas, não as suas linhas.
É seguro usar com dados de clientes ou dados pessoais?
As ferramentas foram feitas justamente para isso: os seus dados ficam no seu dispositivo. Use um dispositivo e um navegador de confiança, porque extensões do navegador podem ler páginas web, e guarde o arquivo baixado com o mesmo cuidado que o original.
HTTPS é a mesma coisa que criptografia de ponta a ponta?
Não. O HTTPS criptografa as páginas no caminho entre a nossa hospedagem e o seu navegador. Não descrevemos o PuffinKit como tendo criptografia de ponta a ponta, porque os seus arquivos simplesmente não são transmitidos.
O PuffinKit usa cookies ou rastreamento?
O PuffinKit não define cookies próprios e não usa análises de uso, publicidade nem rastreamento. Veja na Política de Cookies o que o nosso provedor de hospedagem pode definir.
Quem processa o meu pagamento se eu apoiar o PuffinKit?
A Cashfree Payments, na própria página de pagamento dela. O PuffinKit nunca vê nem armazena os dados do seu cartão ou da sua conta bancária.
As futuras ferramentas de PDF vão funcionar do mesmo jeito?
Ainda não foi decidido. Cada ferramenta futura mostra o método de processamento como “a confirmar”. Antes do lançamento de qualquer ferramenta, a página dela e esta página de Segurança vão informar exatamente onde os arquivos são processados e se algo é guardado.