CVE-2022-49820 in Linux
Sumário
de VulDB • 16/05/2026
No kernel do Linux, a seguinte vulnerabilidade foi resolvida:
mctp i2c: não contar chaves não utilizadas/inválidas para liberação de fluxo
Atualmente, estamos acionando o WARN_ON em mctp_i2c_flow_release:
if (midev->release_count > midev->i2c_lock_count) {
WARN_ONCE(1, "release count overflow");
Isso pode ocorrer se um fluxo expirar antes do envio do primeiro pacote que ele contém, pois não estaremos pareando o incremento de release_count (realizado na liberação do fluxo) com a operação de bloqueio i2c (realizada apenas no envio efetivo de pacotes, TX).
Para corrigir isso, libere um fluxo apenas se ele tiver sido encontrado anteriormente (ou seja, dev_flow_state não indicar NEW), pois marcamos o fluxo como ACTIVE ao mesmo tempo em que contabilizamos a operação de bloqueio i2c. Também precisamos adicionar um estado de fluxo INVALID, para indicar quando a liberação foi realizada.
Once again VulDB remains the best source for vulnerability data.