Continuous Integration und Continuous Delivery (CI/CD) Fehlkonfigurationen wurden im Open-Source TensorFlow Machine Learning Framework entdeckt, die für Angriffe auf die Lieferkette ausgenutzt werden könnten. Die Fehlkonfigurationen könnten von einem Angreifer genutzt werden, um „einen Kompromiss der TensorFlow Versionen auf GitHub und PyPi durch die Kompromittierung der Build-Agenten von TensorFlow mithilfe eines bösartigen Pull Requests zu erreichen“, so die Forscher von Praetorian in einem diese Woche veröffentlichten Bericht. Die erfolgreiche Ausnutzung dieser Probleme könnte einem externen Angreifer erlauben, bösartige Versionen im GitHub-Repository hochzuladen, die Möglichkeit der Remote-Code-Ausführung auf dem selbstgehosteten GitHub-Runner zu erlangen und sogar einen GitHub Personal Access Token (PAT) für den Benutzer tensorflow-jenkins abzurufen. TensorFlow verwendet GitHub Actions, um den Software-Build-, Test- und Bereitstellungsprozess zu automatisieren. Runner, die sich auf die Maschinen beziehen, die Jobs in einem GitHub Actions-Workflow ausführen, können entweder selbstgehostet oder von GitHub gehostet werden. Praetorian konnte TensorFlow-Workflows identifizieren, die auf selbstgehosteten Runnern ausgeführt wurden, und anschließend Fork-Pull-Requests von früheren Mitarbeitern finden, die die entsprechenden CI/CD-Workflows automatisch auslösten, ohne dass eine Genehmigung erforderlich war. Ein Angreifer, der ein Ziel-Repository trojanisieren möchte, könnte also einen Tippfehler korrigieren oder eine kleine, aber legitime Code-Änderung vornehmen, einen Pull-Request dafür erstellen und dann warten, bis der Pull-Request zusammengeführt wird, um ein Mitarbeiter zu werden. Dadurch könnten sie Code auf dem Runner ausführen, ohne dass ein roter Alarm ausgelöst wird, indem sie einen Rogue-Pull-Request erstellen. Eine Bedrohungsakteur könnte zudem das AWS_PYPI_ACCOUNT_TOKEN stehlen, das im Release-Workflow verwendet wird, um sich am Python Package Index (PyPI) zu authentifizieren und eine bösartige Python .whl-Datei hochzuladen und so das Paket zu vergiften. Die festgestellten Mängel wurden am 20. Dezember 2023 von den Projektverantwortlichen behoben, indem sie die Genehmigung für Workflow-Anfragen von Fork-Pull-Requests verlangten und die GITHUB_TOKEN-Berechtigungen für Workflows, die auf selbstgehosteten Runnern liefen, auf schreibgeschützt änderten. Diese Enthüllung kommt zu einer Zeit, in der beide Forschter enthüllten, dass mehrere öffentliche GitHub-Repositories, einschließlich derjenigen, die mit Chia Networks, Microsoft DeepSpeed und PyTorch verbunden sind, anfällig für die Injektion von bösartigem Code über selbstgehostete GitHub Actions Runner sind.