Skip to content

Security: DaviKdS/GenPyEXE

Security

SECURITY.md

Política de segurança

Versões suportadas

Versão Suporte
1.0.x sim

Reportar uma vulnerabilidade

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.


Decisões de segurança do projeto

Execução de comandos

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.

O código do usuário nunca é executado

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.

Nenhuma instalação automática

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.

Logs

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).

Segredos

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.


O que não é vulnerabilidade

Aviso do SmartScreen em executáveis não assinados

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.

Falso positivo de antivírus

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.

Executável construído a partir de projeto malicioso

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.

There aren't any published security advisories