CVE-2023-40547 - Prevenção de erro de confiança em cabeçalhos HTTP
- O shim tenta alocar um buffer para armazenar os dados recebidos ao buscar arquivos via HTTP ou protocolos relacionados.
- O tamanho do buffer é determinado por meio de um cabeçalho HTTP, mas esse cabeçalho pode ser manipulado para indicar um tamanho menor que o dos dados reais.
- Como resultado, a alocação é feita com base no cabeçalho, mas a cópia a partir do buffer rx usa os metadados do protocolo, causando um buffer overflow.
- Este patch adiciona uma verificação extra para garantir que o buffer rx não seja maior do que o tamanho alocado.
Revisão dos arquivos alterados
- O arquivo alterado é
httpboot.c, com 7 adições e 1 remoção.
- A principal mudança é que, dentro da função
receive_http_response, agora é retornado um erro quando buf_size é menor que rx_message.BodyLength.
Opinião do GN⁺
- Este patch corrige a vulnerabilidade de segurança CVE-2023-40547 e representa uma atualização importante para reforçar a segurança do bootloader shim.
- Um buffer overflow por meio de cabeçalhos HTTP pode causar uma séria ameaça de segurança, e prevenir esse tipo de vulnerabilidade é um elemento central da segurança de software.
- Este artigo oferece informações úteis ao relembrar aos desenvolvedores de software a importância dos patches de segurança e da necessidade de um gerenciamento adequado de buffers.
Ainda não há comentários.