Das Unternehmen Aqua Security hat die Ergebnisse einer Untersuchung zur Verfügbarkeit sensibler Daten in den Build-Protokollen veröffentlicht, die im System für kontinuierliche Integration Travis CI öffentlich zugänglich sind. Forscher fanden eine Möglichkeit, 770 Millionen Protokolle verschiedener Projekte zu extrahieren. Bei einem Test-Upload von 8 Millionen Protokollen wurden in den erhaltenen Daten rund 73.000 Tokens, Zugangsdaten und Schlüssel entdeckt, die mit verschiedenen beliebten Diensten, einschließlich GitHub, AWS und Docker Hub, verbunden sind. Die entdeckten Informationen können die Infrastruktur vieler offener Projekte kompromittieren; so führte ein ähnlicher Vorfall kürzlich zum Hacken der Infrastruktur des NPM-Projekts.
Die Leckage hängt mit der Möglichkeit zusammen, über die standardisierte API (z. B. kann das Build-Protokoll über eine URL vom Typ «https://api.travis-ci.org/v3/job/5248126/log.txt» heruntergeladen werden, wobei die Zahl 5248126 der Identifikator des Protokolls ist) auf die Protokolle von Nutzern des kostenlosen Dienstes Travis CI zuzugreifen. Zur Bestimmung des Bereichs möglicher Protokoll-Identifikatoren wurde eine weitere API («https://api.travis-ci.org/logs/6976822») verwendet, die das Umleiten zum Download des Protokolls nach fortlaufender Nummer ermöglicht. Durch Ausprobieren konnte im Rahmen der Untersuchung ohne Authentifizierung etwa 770 Millionen Protokolle, die zwischen 2013 und Mai 2022 während des Builds von Projekten, die unter den kostenlosen Tarif fallen, erstellt wurden, festgestellt werden.
Die Analyse der Teststichprobe zeigte, dass in vielen Fällen im Protokoll im Klartext Zugriffsparameter für Repositories, APIs und Speicherorte reflektiert werden, die ausreichen, um auf private Repositories zuzugreifen, Änderungen am Code vorzunehmen oder eine Verbindung zu Cloud-Umgebungen herzustellen, die in der Infrastruktur verwendet werden. Beispielsweise wurden in den Protokollen Tokens für den Zugriff auf Repositories in GitHub, Passwörter für das Hosting von Builds in Docker Hub, Schlüssel für den Zugriff auf Umgebungen von Amazon Web Services (AWS) sowie Verbindungseinstellungen für die Datenbankmanagementsysteme MySQL und PostgreSQL gefunden.
Bemerkenswert ist, dass ähnliche Leckagen über APIs von Forschern in den Jahren 2015 und 2019 dokumentiert wurden. Nach früheren Vorfällen hat das Unternehmen Travis bestimmte Einschränkungen eingeführt, um das massenhafte Herunterladen von Daten zu erschweren, und den Zugang zur API eingeschränkt, doch diese Einschränkungen konnten umgangen werden. Darüber hinaus unternahm das Unternehmen Travis einen Versuch, sensible Daten in den Protokollen zu bereinigen, jedoch wurden die Daten nur teilweise bereinigt.
Die Leckage betraf hauptsächlich Benutzer offener Projekte, die von Travis kostenlosen Zugang zu seinem Continuous Integration-Dienst erhalten. Bei einer Überprüfung durch einige Dienstanbieter wurde bestätigt, dass etwa die Hälfte der aus den Protokollen extrahierten Tokens und Schlüssel weiterhin funktionieren. Allen Nutzern der kostenlosen Version des Travis CI-Dienstes wird dringend empfohlen, ihre Zugangsschlüssel zu ändern sowie die Löschung von Build-Protokollen zu aktivieren und zu überprüfen, ob vertrauliche Daten nicht in den Protokollen erscheinen.
Quelle: opennet.ru
