
Análise e reprodução da vulnerabilidade de estouro de buffer no heap do notepad++ CVE-2023-40031
Análise e reprodução da vulnerabilidade de estouro de buffer de heap no Notepad++ (CVE-2023-40031)
O Notepad++ é um conhecido editor de código aberto, executado no sistema Windows, que suporta várias linguagens de programação. Recentemente, pesquisadores de segurança examinaram o Notepad++ e encontraram várias vulnerabilidades de segurança. Entre elas, a vulnerabilidade de estouro de buffer de heap CVE-2023-40031, com pontuação 7,8 (CVSS3, pontuação máxima 10), é classificada como de alta gravidade. Essa vulnerabilidade está localizada na função Utf8_16_Read::convert. Ao realizar a conversão de UTF-16 para UTF-8, o tamanho do buffer de heap UTF-8 resultante é calculado incorretamente, fazendo com que a área de memória fora desse buffer seja sobrescrita, o que pode levar à execução arbitrária de código.
<=8.5.6
Sistema operacional: Win7 sp1. Ferramentas de análise: IDA, WinDbg, OLLYDBG.
Pesquise no WeChat: WebRAY_BTL
Este artigo tem como finalidade apenas o intercâmbio técnico, aprendizado e pesquisa. É estritamente proibido usar as técnicas apresentadas no artigo para fins ilegais ou destrutivos; caso contrário, o autor do artigo não se responsabiliza por quaisquer consequências.
Este aviso legal tem como objetivo deixar claro que este artigo é apenas para intercâmbio técnico, aprendizado e pesquisa, e o uso das técnicas do artigo para qualquer finalidade ilegal ou atos destrutivos é estritamente proibido. O autor deste artigo não se responsabiliza por qualquer uso ilegal das técnicas ou por danos causados a terceiros ou a sistemas.
Ao ler e consultar este artigo, você deve reconhecer e se comprometer a não utilizar as técnicas fornecidas no artigo para realizar atividades ilegais, violar os direitos de terceiros ou atacar sistemas. Qualquer acidente, perda ou dano decorrente do uso das técnicas deste artigo, incluindo, mas não se limitando a perda de dados, danos materiais, responsabilidades legais, etc., não está relacionado ao autor do artigo.
As informações técnicas fornecidas neste artigo são apenas para fins de aprendizado e referência e não constituem qualquer forma de garantia ou segurança. O autor deste artigo não faz declarações ou garantias quanto à precisão, eficácia ou aplicabilidade das técnicas.
Este aviso legal tem como objetivo declarar claramente que este artigo é exclusivamente para fins de intercâmbio técnico, aprendizado e pesquisa, sendo estritamente proibido o uso das técnicas mencionadas no artigo para quaisquer fins ilegais ou ações destrutivas. O autor deste artigo não se responsabiliza por quaisquer consequências resultantes do uso indevido das técnicas mencionadas.
Ao ler e consultar este artigo, você deve reconhecer e se comprometer a não explorar as técnicas fornecidas no artigo para atividades ilegais, violação dos direitos de terceiros ou ataques a sistemas. O autor deste artigo não assume responsabilidade por quaisquer acidentes, perdas ou danos causados pelo uso das técnicas mencionadas neste artigo, incluindo, mas não se limitando a perda de dados, danos materiais, responsabilidades legais, etc.
As informações técnicas fornecidas neste artigo são apenas para fins de aprendizado e referência e não constituem qualquer forma de garantia ou segurança. O autor deste artigo não faz declarações ou garantias quanto à precisão, eficácia ou aplicabilidade das técnicas mencionadas.