GCP - Artifact Registry Persistence

Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!

Outras maneiras de apoiar o HackTricks:

Registro de Artefatos

Para mais informações sobre o Registro de Artefatos, confira:

pageGCP - Artifact Registry Enum

Confusão de Dependência

  • O que acontece se um repositório remoto e padrão são misturados em um virtual e um pacote existe em ambos?

  • O que tiver a prioridade mais alta definida no repositório virtual é usado

  • Se a prioridade for a mesma:

  • Se a versão for a mesma, o nome da política em ordem alfabética primeiro no repositório virtual é usado

  • Caso contrário, a versão mais alta é usada

Portanto, é possível abusar de uma versão mais alta (confusão de dependência) em um registro de pacotes público se o repositório remoto tiver uma prioridade maior ou igual

Essa técnica pode ser útil para persistência e acesso não autenticado pois para abusar dela basta conhecer o nome de uma biblioteca armazenada no Registro de Artefatos e criar essa mesma biblioteca no repositório público (PyPi, por exemplo) com uma versão mais alta.

Para persistência, siga estas etapas:

  • Requisitos: Um repositório virtual deve existir e ser usado, um pacote interno com um nome que não existe no repositório público deve ser usado.

  • Crie um repositório remoto se ele não existir

  • Adicione o repositório remoto ao repositório virtual

  • Edite as políticas do registro virtual para dar uma prioridade mais alta (ou igual) ao repositório remoto. Execute algo como:

  • Baixe o pacote legítimo, adicione seu código malicioso e registre-o no repositório público com a mesma versão. Sempre que um desenvolvedor o instalar, ele instalará o seu!

Para mais informações sobre confusão de dependência, confira:

Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!

Outras maneiras de apoiar o HackTricks:

Última actualización