O servidor Git do PHP hackeado para adicionar backdoors ao código-fonte PHP

Views: 450
0 0
Read Time:3 Minute, 37 Second

No mais recente ataque da cadeia de suprimentos de software, o repositório oficial PHP Git foi hackeado e a base de código adulterada.

Ontem, dois compromissos maliciosos foram levados ao repositório php-src Git mantido pela equipe do PHP em seu servidor git.php.net.

Os atores de ameaça tinham assinado esses compromissos como se estes fossem feitos por desenvolvedores e mantenedores php conhecidos, Rasmus Lerdorf e Nikita Popov.

Backdoor RCE plantado no servidor PHP Git

Na tentativa de comprometer a base de código PHP, dois compromissos maliciosos foram levados ao repositório oficial php git ontem.

O incidente é alarmante considerando que o PHP continua sendo a linguagem de programação do lado do servidor para alimentar mais de 79% dos sites na Internet.

Nos compromissos maliciosos [12] vistos pelo BleepingComputer, os atacantes publicaram uma misteriosa mudança rio acima, “corrigir o tipo” sob a pretensão de que esta era uma pequena correção tipográfica.

PHP Git Server hacked commit
Um compromisso malicioso que os atacantes assinaram como Rasmus Lerdorf (ilicitamente) planta um backdoor de execução de código remoto

No entanto, dando uma olhada na linha adicionada 370 onde zend_eval_string função é chamada, o código realmente planta um backdoor para obter fácil Execução de Código Remoto (RCE) em um site executando esta versão sequestrada de PHP.

“Esta linha executa o código PHP de dentro do cabeçalho HTTP do usuário, se a string começar com ‘zerodium'”, respondeu o desenvolvedor do PHP Jake Birchall a Michael Voříšek, que havia apontado pela primeira vez a anomalia.

Em uma entrevista por e-mail, o mantenedor do PHP Nikita Popov nos disse:

“O primeiro compromisso foi encontrado algumas horas depois de ter sido feito, como parte da revisão rotineira do código pós-compromisso. As mudanças foram obviamente maliciosas e revertidas imediatamente”, disse Popov ao BleepingComputer.

Além disso, o compromisso malicioso foi feito em nome do criador do PHP, Rasmus Lerdorf.

Mas, isso não é surpreendente, pois com sistemas de controle de versão de código fonte como o Git, é possível assinar um compromisso como vindo de qualquer outra pessoa [1, 2 ] localmente e,em seguida, carregar o compromisso falsificado para o servidor Git remoto, onde dá a impressão como se tivesse sido realmente assinado pela pessoa nomeada nele.

php security announcement
O anúncio oficial (vinculado abaixo) afirma que o incidente aponta para um compromisso do servidor

Embora uma investigação completa do incidente esteja em andamento, de acordo com os mantenedores do PHP, essa atividade maliciosa decorreu do servidor git.php.net comprometido, em vez de comprometer a conta git de um indivíduo.

Base oficial de código PHP migrou para o GitHub

Como precaução após este incidente, os mantenedores php decidiram migrar o repositório oficial de código-fonte PHP para o GitHub.

“Enquanto a investigação ainda está em andamento, decidimos que manter nossa própria infraestrutura git é um risco desnecessário para a segurança, e que vamos descontinuar o servidor git.php.net.”

“Em vez disso, os repositórios no GitHub, que antes eram apenas espelhos, se tornarão canônicos”, anunciou Popov.

Com essa mudança daqui para frente, Popov insiste que quaisquer alterações de código sejam empurradas diretamente para o GitHub, em vez do servidor git.php.net a partir deste ponto.

Os interessados em contribuir para o projeto PHP agora precisarão ser adicionados como parte da organização PHP no GitHub.

As instruções sobre as que são fornecidas no mesmo anúncio de segurança.

Para a adesão na organização, você precisaria ter autenticação de dois fatores (2FA) ativada em sua conta do GitHub.

“Estamos revisando os repositórios para qualquer corrupção além dos dois compromissos referenciados”, diz Popov.

BleepingComputer entrou em contato com popov e a equipe de segurança PHP para descobrir a extensão completa deste compromisso, e se qualquer código foi distribuído rio abaixo antes que os compromissos maliciosos fossem pegos.

“Pode ter sido clonado/bifurquedo nesse meio tempo, mas as alterações não o transformaram em marcas ou artefatos de liberação.”

“As mudanças foram no ramo de desenvolvimento do PHP 8.1, que deve ser lançado no final do ano”, disse Popov ainda ao BleepingComputer.

A equipe php confirmou ao BleepingComputer que eles planejam eventualmente desativar seu servidor git nos próximos dias e se mudar para o GitHub permanentemente.

Atualização 29-Mar-21 7:22 AM ET: Resposta adicionada do mantenedor do PHP Nikita Popov.

FONTE: BLEEPINGCOMPUTER

POSTS RELACIONADOS