No kernel Linux, a seguinte vulnerabilidade foi resolvida. iio: adc: ad_sigma_delta: corrigir o evento clear_pending_ para dispositivos sem registro ad_sigma_delta_clear_pending_event() entra no caminho de leitura do registro de status para dispositivos com has_regists = false e sem rdy_gpiod. Para tais dispositivos, ad_sd_read_reg() ignora completamente o byte do endereço e reloja os bytes MISO crus sem fase do endereço — tornando- o idêntico ao byte para o byte para a leitura dos dados de conversão. Se um resultado de conversão pendente estiver presente, este o consome parcialmente e corrompe o fluxo de dados para a chamada subsequente ad_sd_read_reg() em ad_sigma_delta_single_conversion(). Além disso, com num_resetclks = 0 nestes dispositivos, data_read_len avalia para 0. Se o byte cronometrado tiver bit 7 claro, o evento_pendant está definido e o código tenta memset( dados + 2, 0 xff, 0 - 1 ), transbordando para SIZE_ MAX e corrompendo o montão.
Corrigir retornando 0 imediatamente quando nem rdy_ gpiod nem has_ registers estiverem definidos. Isto é seguro para todos os dispositivos sem registro atuais: anúncio 7191 e anúncio 7780 (com o GPIO de desactivação) são reajustados entre conversões por CS dessertion, por isso não há nenhum resultado estável para drenar; anúncio 7780 (sem GPIO) e max 11205 estão continuamente convertindo e ciclo ~DRDY na taxa de dados de saída, independentemente de o resultado anterior ter sido lido, então o próximo incêndios de borda caindo naturalmente. Um dispositivo futuro sem registro que mantenha ~DRDY afirmado até que os dados sejam lidos seria quebrado por este retorno precoce e exigiria ou o conjunto num_ resetclks ou um rdy- gpio.
A mesma corrupção de pilha é alcançada em qualquer dispositivo com o conjunto rdy_gpiod mas num_resetclks = 0: se o GPIO indicar um evento pendente, o caminho de drenagem executa memset( dados + 2, 0 xff, 0 - 1 ) independentemente de has_ registers. Adicione um dado_lendo_lem explícito == 0 guardem após a verificação do evento pendente; o resultado estável é consumido pela primeira chamada de ad_sd_read_reg() em ad_sigma_delta_single_conversion(). Registro de aconselhamento: GHSA- 2 vpq-. 89 rm- wm 52. Identificadores relacionados: CVE- 2026 - 64502.
Tempo: GitHub Advisory Database publicou este registro em 2026 - 07 - 25 T 12: 31: 38.000 Z e lista a sua última modificação como 2026 - 07 - 27 T 06: 30: 40.000 Z. Severidade: ALTAMENTE. Dados de pontuação publicados: CVSS_V 3: CVSS: 3.1 /AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H.
Software afetado: o registro de aconselhamento não fornece um pacote normalizado ou faixa de versões. Classificação e evidência: nenhum identificador CWE está listado. O registro contém 4 suporte de referências nestes tipos: AVISO, WEB.