Cackle, una herramienta para endurecer la cadena de suministro en Rust

Fuentes: Making Rust supply chain attacks harder with Cackle

Cackle, también conocido como cargo-acl, es un verificador de listas de control de acceso (ACL) sobre código Rust creado para dificultar los ataques a la cadena de suministro en el ecosistema de crates.io. La herramienta se configura mediante un archivo cackle.toml situado junto a Cargo.toml, donde el desarrollador define clases de APIs —como "net", "fs" (sistema de archivos) o "process" (procesos)— que desea restringir y especifica qué crates de su árbol de dependencias tienen permiso para utilizarlas. Al ejecutarse, Cackle detecta aquellos crates que recurren a APIs vetadas sin contar con autorización, lo que permite identificar cambios sospechosos como los que ilustra un escenario hipotético: una crate inactiva cuyo nuevo mantenedor introduce código que exfiltra datos a un servidor externo. El proyecto incluye una interfaz de terminal que guía al usuario en la generación de la configuración inicial y, en la actualidad, emplea Bubblewrap como sandbox para compilar y ejecutar pruebas. Entre las prácticas recomendadas para autores de crates, el artículo sugiere revisar con cuidado las nuevas dependencias que lleguen vía pull request y plantearse solicitar un fork en lugar de ceder el control del crate. Cackle solo está disponible en Linux y se instala con cargo install --locked cargo-acl.