Reading Time: 2 minutes
Um investigador descobriu uma grave vulnerabilidade RCE no LibreOffice e no Apache OpenOffice.

O investigadorAlex Inführ descobriu uma grave vulnerabilidade de execução remota de código (RCE) no LibreOffice e no Apache OpenOffice que podia ser explorada para enganar as vítimasa abrir ficheiro ODT (OpenDocument Text) com um evento malicioso incorporado.

A falha pode ter um impacto enorme porque este software é utilizado por milhões de utilizadores em todo o mundo, incluindo utilizadores do SO Windows, MacOS e Linux.

libre-office

 

O investigador descobriu que é possível abusar da estrutura de scripts OpenDocument adicionando um evento onmouseover a um link incluído no ficheiro ODT.

O investigador desenvolveu um PoC baseado na exploração de uma vulnerabilidade de traveral directory identificada como CVE-2018-16858.

Ao explorar a vulnerabilidade, é possível acionar a execução automática de uma biblioteca python específica incluída no conjunto usando um evento onmouseover.

O investigador usou um ficheiro ODT especialmente criado e com um hyperlink oculto — uma espécie de estenografia (ele utilizou a cor branca para torná-lo invisível no documento)  e que tem um evento “onmouseover” para executar um arquivo python local.

O investigador disse ainda que o ficheiro python, chamado “pydoc.py”, já está incluído no software LibreOffice. Inclusive, esse ficheiro aceita comandos arbritrários num dos parametros de entrada e executa-os, de seguida, na linha de comandos da máquina da vítima.

“The idea was to abuse the path traversal to traverse down into the users Download directory and load the ODT file as a python script (ergo creating a polyglot file, which is a python file + a working ODT file).” wrote the expert.

“For the solution I looked into the python parsing code a little more in depth and discovered that it is not only possible to specify the function you want to call inside a python script, but it is possible to pass parameters as well (this feature seems to be introduced in the 6.1.x branch) “

 

Fica em seguida o PoC da exploração executado num sistema operativo da família Windows.

 

O especialista comunicou a vulnerabilidade ao LibreOffice e ao Apache OpenOffice em 18 de outubro.

O LibreOffice corrigiu a falha no final de outubro, o OpenOffice está ainda sobre fogo, pois a falha ainda não foi corrigida.

O LibreOffice corrigiu o problema no final do mês de outubro com o lançamento do LibreOffice 6.0.7 / 6.1.3, o OpenOffice ainda parece estar vulnerável.

A RedHat, no entanto, solicitou ao investigador que só divulgasse os seus findings no dia 31 de janeiro de 2019.

RedHat assigned the flaw the CVE ID and requested the researcher to wait until January 31, 2019 for its public disclosure.

 

Aos utilizadores, sugere-se que aguardem uma correção. No entanto, podem renomear o ficheiro pythonscript.py na paste de instalação ou desativar o suporte para python.