Reinitialization Attack

Segurança · Abismo

Uma vulnerabilidade onde um programa permite que uma conta já inicializada seja inicializada uma segunda vez, sobrescrevendo seu estado — incluindo campos de autoridade ou propriedade — com dados fornecidos pelo atacante, efetivamente permitindo que o atacante tome controle de uma conta existente sem passar pelas verificações normais de privilégio. A defesa canônica é armazenar um booleano is_initialized ou um discriminador Anchor na conta e afirmar que é falso (ou que o discriminador não está definido) no início de toda instrução de inicialização; a restrição init do Anchor impõe isso falhando se o discriminador da conta já for diferente de zero.

Termos relacionados