Account Reloading Attack
Segurança · Abismo
Uma vulnerabilidade em programas Anchor onde um programa lê dados de uma conta antes de fazer uma chamada CPI, o CPI modifica os lamports ou dados daquela conta, mas o programa continua usando o snapshot pré-CPI obsoleto em vez de recarregar a conta do runtime. No Anchor, após um CPI a referência da conta ainda mantém os dados pré-chamada a menos que account.reload() seja explicitamente chamado, significando que verificações de saldo, afirmações de estado ou computação adicional podem operar com valores incorretos. Atacantes podem explorar isso para passar verificações usando um estado de conta inicial que o CPI subsequentemente inválida.