
Este estudo analisa vulnerabilidades de desserialização de pickle do Python, focando na CVE-2024-3568 no TFAutoModel do Hugging Face Transformers. Reproduzimos o exploit para examinar sua causa raiz, vetores de ataque e riscos.
Apresentação do mecanismo de desserialização pickle e seu princípio de ataque reduce, reprodução da vulnerabilidade de desserialização CVE-2024-3568 na biblioteca Hugging Face Transformers, análise dos riscos de segurança na biblioteca Transformers e proposta de soluções eficazes para reforço de segurança. Para detalhes, consulte o documento PDF do experimento.
(O código do autor do PoC está detalhado em CVE-2024-3568 ou na pasta author_inf)
Localização da Vulnerabilidade
Método TFAutoModel.load_repo_checkpoint() (Transformers ≤ v4.37.2)
Princípio do Ataque
O ficheiro extra_data.pickle em checkpoint malicioso aciona RCE ao ser desserializado via pickle.load()
Âmbito de Impacto
# Consulte o PDF do experimento para instruções detalhadas de configuração
pip install transformers==4.37.2 tensorflow
git clone https://github.com/llm-sec/transformer-hacker
Consulte o documento PDF para mais detalhes.
Os ficheiros test.py e test2.py envolvem análise do princípio (assistido por AI Wen Xiaobai, agradecendo o aumento de produtividade trazido pela inovação tecnológica).
Geração de Checkpoint Malicioso (Comandos específicos no documento PDF)
Acionamento da Vulnerabilidade (Exemplos de código no documento PDF)
Verificação do Ataque (Método de verificação no documento PDF)
load_repo_checkpoint()Análise Técnica Detalhada: Consulte o documento PDF do experimento para o princípio completo da vulnerabilidade, processo de exploração e estratégias de defesa. Implementação do PoC: O código do autor do PoC está detalhado em CVE-2024-3568 ou na pasta author_inf.