Pular para o conteúdo

Intermediário 8 desafios

Cadeia de suprimentos de software

Quase nenhum programa é feito só do código que você escreveu. Ele se apoia em dezenas de pacotes prontos, e cada um desses pacotes puxa outros, numa árvore que o seu app instala e executa inteira. Confiar num pacote é confiar em quem o publica, em quem publica as dependências dele, e no caminho entre o registro e a sua máquina. Esta trilha segue a falha de cadeia de suprimentos em pedaços, sempre analisando artefatos que vêm no desafio (manifestos de dependência, avisos de vulnerabilidade, a árvore de pacotes, hashes e diffs), sem rodar nada. Você acha a dependência com CVE conhecida casando a versão instalada com o aviso, reconhece um pacote de nome parecido com o certo (typosquatting), descobre uma vulnerabilidade escondida fundo na árvore e não na dependência direta, vê uma faixa de versão puxar sozinha uma versão ruim, pega um pacote trocado por um hash que não bate, lê um script de instalação malicioso como texto sem nunca executar e, no fim, junta tudo num auditoria completa. Cada desafio termina no conserto: fixar versões, versionar o lockfile, conferir integridade, revisar toda dependência nova e rodar uma ferramenta de SCA. Nada mira sistema real: a empresa, os pacotes e o registro são inventados.

O que você vai aprender

  • Cadeia de suprimentos de software
  • Aviso de vulnerabilidade
  • Typosquatting de pacotes
  • Árvore de dependências
  • Faixa de versão e versão fixa
  • Integridade de arquivos
  • Scripts de instalação (postinstall)
  • Comparar versões com diff
  1. Web Com arquivo Exemplo resolvido

    Achar a CVE no lockfile

    0% de acerto, 0 resolveram

    Disponível
  2. Web Com arquivo Exemplo resolvido

    O pacote com nome parecido

    Disponível
  3. Web Com arquivo

    A vulnerável está na árvore

    Disponível
  4. Web Com arquivo

    A faixa puxou a versão ruim

    Disponível
  5. Web Com arquivo

    O hash que não bate

    Disponível
  6. Web Com arquivo

    O script que roda sozinho

    Disponível
  7. Diversos Com arquivo

    Ler o patch da defesa

    Disponível
  8. Diversos Com arquivo

    Auditoria completa

    Disponível