Fallos del tipo CWE-915
138 resultadosModificação descontrolada de atributos dinâmicos de objetos
Fraqueza em que a aplicação permite que um atacante modifique atributos de objetos através de entrada do usuário sem validação adequada. O código trata dados externos como nomes de propriedades ou métodos, permitindo acesso ou alteração de atributos que não deveriam ser expostos. Isso é particularmente perigoso em linguagens dinâmicas como PHP, Python e JavaScript, onde objetos podem ter suas propriedades modificadas em runtime.
Um endpoint de API PHP que recebe um JSON e faz `$user = (object) $_POST;` ou usa `$obj->$fieldName = $value;` onde `$fieldName` vem da requisição. Um atacante envia `{"admin":true,"role":"superuser"}` e consegue se elevar de privilégio porque o objeto foi populado sem filtro.
Valide explicitamente quais atributos podem ser modificados usando uma whitelist de campos permitidos. Nunca confie em nomes de propriedades vindos do usuário — use um mapeamento seguro (ex: um array pré-definido) ou frameworks ORM que implementem proteção nativa. Desabilite a atribuição em massa descontrolada (mass assignment) em suas configurações.