| Versão | Suporte |
|---|---|
| 1.0.x | sim |
Use o canal privado do GitHub: Security → Report a vulnerability em https://github.com/DaviKdS/GenPyEXE/security.
Não abra uma issue pública para falhas de segurança.
Inclua: descrição, passos para reproduzir, impacto e versões afetadas. Você receberá uma resposta em até 7 dias.
Todo subprocesso é chamado com lista de argumentos e shell=False. Não há interpolação de
string em linha de comando em nenhum ponto do código, o que elimina a classe inteira de injeção de
comando — inclusive com nomes de projeto ou caminhos hostis.
A detecção de dependências analisa a árvore sintática dos arquivos (ast). O GenPyEXE nunca
importa nem executa o código do projeto alvo, então apontá-lo para uma pasta desconhecida não
dispara nada.
O GenPyEXE não instala software sozinho. Quando o Inno Setup está ausente, ele informa o
comando winget e o link oficial — a execução é decisão do usuário.
Os logs registram caminhos, versões e códigos de saída. Nunca conteúdo de arquivos do usuário nem
o dump de variáveis de ambiente. O diagnóstico expõe apenas variáveis GENPYEXE_*, e mesmo essas
são filtradas por nome contra padrões sensíveis (token, secret, password, senha, key,
credential).
Nenhuma credencial no repositório. As variáveis documentadas em .env.example são apenas caminhos de ferramentas — nenhuma aceita segredo.
Certificados de assinatura de código (.pfx, .p12, .key) estão no .gitignore e nunca devem
ser versionados nem passados por variável de ambiente compartilhada.
Comportamento normal do Windows para binários sem certificado de assinatura de código. Não é defeito do GenPyEXE e não há solução legítima além de assinar o binário. Veja docs/instalador-windows.md.
Executáveis gerados pelo PyInstaller acionam heurísticas porque o bootloader descomprime código em tempo de execução. O GenPyEXE já mitiga o que está ao seu alcance — UPX desligado por padrão e metadados completos no binário. Reporte o falso positivo ao fornecedor do antivírus.
O GenPyEXE empacota o código que você apontar. Ele não audita, não sanitiza e não julga esse código — nem poderia. Empacotar um projeto malicioso produz um executável malicioso, e a responsabilidade é de quem o construiu e distribuiu.