Het bedrijf Aqua Security heeft de resultaten gepubliceerd van een onderzoek naar de aanwezigheid van gevoelige gegevens in build-logs die openbaar toegankelijk zijn in het continue integratiesysteem Travis CI. Onderzoekers vonden een manier om 770 miljoen logs van verschillende projecten te extraheren. Bij het testuploaden van 8 miljoen logs werd ongeveer 73.000 tokens, gebruikersgegevens en toegangs-sleutels gevonden die verband houden met verschillende populaire diensten, waaronder GitHub, AWS en Docker Hub. De ontdekte informatie kan de infrastructuur van veel open projecten compromitteren; een soortgelijke lek heeft onlangs geleid tot de hack van de infrastructuur van het NPM-project.
Het lek houdt verband met de mogelijkheid om toegang te krijgen tot de gebruikerslogs van de gratis service Travis CI via de reguliere API (bijvoorbeeld, een build-log kan worden gedownload via een URL zoals “https://api.travis-ci.org/v3/job/5248126/log.txt”, waarbij 5248126 het log-id is). Om het bereik van mogelijke log-id's te bepalen, werd een andere API gebruikt (“https://api.travis-ci.org/logs/6976822”), die het mogelijk maakt om een log op volgorde van nummering te downloaden. Door middel van brute force is het in het onderzoek gelukt om zonder authenticatie ongeveer 770 miljoen logs te identificeren, die zijn aangemaakt van 2013 tot mei 2022 tijdens de builds van projecten die onder het gratis tariefplan vallen.
Analyse van een steekproef toonde aan dat in veel gevallen in de log openlijk toegangsparameters naar repositories, API's en opslagplaatsen worden weergegeven, die voldoende zijn om toegang te krijgen tot privé-repositories, wijzigingen in de code aan te brengen of verbinding te maken met cloudomgevingen die worden gebruikt in de infrastructuur. Bijvoorbeeld, in de logs werden tokens gevonden voor toegang tot repositories op GitHub, wachtwoorden voor het hosten van builds op Docker Hub, sleutels voor toegang tot Amazon Web Services (AWS), en verbindingsparameters voor de databases MySQL en PostgreSQL.
Opmerkelijk is dat soortgelijke lekken via API's ook door onderzoekers zijn geregistreerd in 2015 en 2019. Na de eerdere incidenten heeft het bedrijf Travis bepaalde beperkingen toegevoegd om massaal dataverkeer te bemoeilijken en de toegang tot de API te beperken, maar deze beperkingen konden worden omzeild. Daarnaast heeft Travis geprobeerd om gevoelige gegevens uit de logs te verwijderen, maar deze gegevens zijn slechts gedeeltelijk schoongemaakt.
De lek heeft voornamelijk gebruikers van openbare projecten getroffen die gratis toegang hebben tot de continu-integratieservice van Travis. Tijdens een controle uitgevoerd door sommige serviceproviders werd bevestigd dat ongeveer de helft van de uit de logs geëxtraheerde tokens en sleutels nog steeds werkzaam zijn. Alle gebruikers van de gratis versie van de Travis CI-service wordt aangeraden hun toegangssleutels onmiddellijk te wijzigen, evenals het instellen van het verwijderen van build-logs en het controleren van de afwezigheid van vertrouwelijke gegevens in de logs.
Bron: opennet.ru
