Evitando vazamento de informações pessoais em blogs
Categories:
A plataforma gratuita e de código aberto GitHub Pages é bastante popular, e muitos blogs a utilizam para publicação.
No entanto, a versão gratuita exige que o repositório seja público para permitir acesso público. Quando o repositório é tornado público, alguns artigos marcados como rascunho também podem ser acessados a partir do repositório Git.
Embora os artigos públicos raramente contenham informações sensíveis, o repositório-fonte do blog de código aberto pode vazar informações pessoais. Abaixo estão algumas palavras-chave comuns de vazamento de informações, sinta-se à vontade para comentar e complementar.
Palavras sensíveis
| Palavra-chave em chinês | Palavra-chave em inglês |
|---|---|
| Senha | password |
| Conta | account |
| Carteira de identidade | id |
| Cartão bancário | card |
| Alipay | alipay |
| Número de telefone | phone |
| Endereço residencial | address |
| Empresa de trabalho | company |
| Cartão de previdência social | card |
| Carteira de motorista | driver |
| Passaporte | passport |
| Cartão de crédito | credit |
| Chave | key |
| Arquivo de configuração | ini |
| Credencial | credential |
| Nome de usuário | username |
Pesquisa com expressão regular:
(senha|conta|carteira de identidade|cartão bancário|alipay|weChat|número de telefone|endereço residencial|empresa de trabalho|cartão de previdência social|carteira de motorista|passaporte|cartão de crédito|username|password|passwd|account|key\s*:|\.ini|credential|card|bank|alipay|wechat|passport|id\s*:|phone|address|company)
Se usar o VSCode como editor de blog, pode usar a pesquisa com expressão regular para realizar rapidamente uma busca completa no site e verificar possíveis locais de vazamento de informações.

Histórico do Git
O histórico do Git pode conter vazamento de informações, e é possível escanear o histórico de commits de blogs de código aberto com scripts simples.
Se for seu próprio repositório, pode limpar o histórico usando o seguinte método. Se precisar preservar o histórico, não limpe.
Certifique-se de entender o significado dos comandos, pois eles limparão o histórico. Por favor, seja cauteloso e faça backup dos dados importantes antes de operar.
git reset --soft ${first-commit}
git push --force
Outros métodos de varredura de repositório
https://github.com/trufflesecurity/trufflehog
- Encontrar, verificar e analisar credenciais vazadas
17.2kestrelas1.7kforks
Outros métodos de publicação de blog
- O GitHub Pro permite publicar repositórios privados no Pages, custando 4 dólares mensais
- Definir como repositório privado e publicar no Cloudflare Pages
- Repositórios separados: um repositório privado para artigos em edição e um repositório público para artigos publicáveis
Se o seu blog usar sistemas de comentários dependentes do GitHub, como giscus, ainda precisará de um repositório público.
Bom hábito vs bom mecanismo
Ao discutir o problema de vazamento de informações pessoais em blogs de código aberto, muitas pessoas acreditam que, contanto que não sejam enviadas informações sensíveis ao repositório, não haverá problemas.
Essa é uma frase inútil, assim como exigir que programadores não escrevam bugs, correta mas inútil. Confiar nos hábitos para proteger informações pessoais é confiável. Não acredite facilmente nos hábitos de alguém, ele pode esquecer a qualquer momento.

Às vezes, a escrita contém algumas sentenças temporárias, especialmente blogs técnicos de programadores. Scripts curtos podem ser escritos rapidamente, sem necessariamente lembrar de usar variáveis de ambiente, portanto, a possibilidade de deixar informações sensíveis certamente existe.
Acredito que a maioria das pessoas entenda o que são bons hábitos, portanto não discutirei bons hábitos aqui, mas principalmente compartilharei como evitar o vazamento de informações pessoais através de mecanismos.
Primeiro, separar repositórios: o repositório de manuscritos e o repositório de publicação são separados. Todos os artigos publicados no Github Pages passam por revisão e não haverá artigos no estado de rascunho vazados.
Também é possível usar Github Action para escanear informações sensíveis a cada commit. Se houver informações sensíveis, o commit não será permitido, consulte trufflehog
A expressão regular compartilhada neste artigo é apenas um exemplo simples, não integrada a nenhum fluxo. Você pode, de acordo com suas necessidades, fazer mais personalizações e integrá-la ao fluxo de trabalho.