Linux · Linux Kernel · CVE-2022-48806
**Nome do software vulnerável e versões afetadas**
Kernel do Linux (versões afetadas não especificadas)
**Descrição**
O problema está relacionado à função `ee1004 eeprom read()`, que não limita adequadamente o número de bytes a serem lidos de uma só vez. Especificamente, `i2c smbus read i2c block data or emulated()` considera o comprimento a ser lido como um `u8`. Se `count` for igual a 256 após considerar o deslocamento e o limite da página, a conversão para `u8` causa estouro. Isso é comum quando o espaço do usuário tenta ler toda a EEPROM de uma só vez. O problema pode ser corrigido limitando cada leitura a `I2C SMBUS BLOCK MAX` (32) bytes.
**Recomendações**
Para resolver o problema, limite cada leitura a `I2C SMBUS BLOCK MAX` (32) bytes, que já é o comprimento máximo permitido por `i2c smbus read i2c block data or emulated()`. Como solução temporária, considere restringir o uso da função `ee1004 eeprom read()` até que um patch esteja disponível.