Um pacote Composer declara seus executáveis no campo `bin` do seu `compositor.json`. Quando o Composer instala um pacote, ele processa cada entrada `bin` e altera o modo de arquivo do arquivo correspondente para que ele seja executável. Se um item `bin` contém segmentos de caminho `..', ele pode resolver para um caminho fora do diretório de instalação do próprio pacote. Um pacote malicioso pode usar isso para fazer o Composer executar `chmod` contra um arquivo que já existe em outro lugar da máquina. O modo resultante é lísível e executável ( 0755 sob a umask comum de 022 ). Isso acontece quando o pacote está instalado, por exemplo, durante `instalar o compositor`, `actualizar o compositor' e `requerer o compositor'. Qualquer dependência pode acioná- la, incluindo uma dependência transitiva de vários níveis profundos. A vulnerabilidade * altera apenas as permissões do arquivo, e não lê, modifica ou executa o conteúdo do arquivo alvo, e não é a execução de código remoto*. O impacto é a confidencialidade: um arquivo com permissões deliberadamente restritivas, como uma chave privada no modo 0600, pode ser tornado lível por outros usuários do mesmo host.
Nós revisamos os dados do packagist.org e não encontramos evidências de que qualquer pacote publicado tenha explorado esta vulnerabilidade. Se você instalar pacotes apenas a partir do packagist.org, você não será afetado por nenhuma exploração conhecida. Você é potencialmente afetado se * todos os * dos seguintes são verdadeiros: - O projeto Composer depende, diretamente ou transitivamente, de um pacote em que você não confia plenamente. - Um arquivo em que você confia para suas permissões restritivas já existe num caminho para o qual o processo Composer pode escrever. Exemplos incluem chaves privadas SSH, arquivos `.env`, `~/.aws/credentials` e `.netrc`.
A forma mais provável de ser afetada é adicionar ou atualizar uma dependência maliciosa ou comprometida, em seguida, executar uma instalação em uma máquina que contém arquivos sensíveis, restritos de permissão. - `-- no-scripts`, `-- no- plugins`, e uma lista de permissões `allow- plugins` não impedem isso. A mudança de permissão ocorre durante a instalação binária normal, fora do modelo de confiança de plug- in e script. - Escalas de impacto com privilégio: Como usuário regular, apenas arquivos pertencentes a esse usuário podem ser afetados, o que normalmente significa que seus próprios segredos se tornam legíveis por outros usuários locais em uma máquina compartilhada. Como root (por exemplo, um container CI sem usuário não root, ou `sudo compositor install`), qualquer arquivo no sistema pode ser afetado, incluindo as lojas de credenciais do sistema.
A correção faz com que o Composer rejeite qualquer pacote cuja entrada binária contenha um segmento de caminho `...`. Durante a instalação/ atualização a operação aborta antes de qualquer permissão de arquivo ser alterada, e a mesma verificação agora também se aplica quando um pacote é publicado no Packagist.org, para que tais pacotes sejam recusados a montante. Fixado 2.2.29 ( 2.2 LTS linha) e 2.10.2 (corrente) 2 Linha.x). Composidor 1.x é o fim da vida e não será corregido. 1 Os usuários do.x devem atualizar para um correto 2.x liberação.
A atualização para uma versão correcionada é a única solução completa. Não existe nenhuma opção de configuração que desativa o comportamento vulnerável. Registro de aconselhamento: GHSA- gjfg- 22 fp- rrxx. Identificadores relacionados: CVE- 2026 - 59946.
Tempo: GitHub Advisory Database publicou este registro em 2026 - 07 - 20 T 21: 57: 40.000 Z e lista a sua última modificação como 2026 - 07 - 20 T 21: 57: 40.000 Z. Gravidade: MODERAR. Dados de pontuação publicados: CVSS_V 3: CVSS: 3.1 /AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:L/A:N.
Software afetado e informações de versão: Packagist Package Composer/ Composer — ECOSISTEM: introduzido 2.3.0, corrigido 2.10.2 ї Composidor/compositor de pacotes Packagist — ECOSISTEM: introduzido 1.0.0, corrigido 2.2.29. Classificação e evidência: identificadores de fraqueza CWE- 22, CWE- 732. O registro contém 7 suporte de referências nestes tipos: WEB, AVISO, EMBALAGAMENTO.