Meteen naar de inhoud

webinar: Meld je aan voor ons aankomende webinar.

Aanmelden

CI/CD-workflows: loopt uw ​​omgeving risico op een nieuwe aanval? 

CI/CD-workflow om risico's in uw omgeving te vermijden

CI / CD-pijpleidingen zijn een integraal onderdeel van moderne workflows, en de tools die ze ondersteunen breiden hun latente mogelijkheden verder uit. Teamwerk is essentieel in moderne workflows waar deadlines niet alleen urgent, maar ook regelmatig zijn. Elke seconde telt wanneer een klant aan de andere kant van de lijn zit te wachten. De beste plek om de discussie over CI/CD te beginnen, is daarom wat de tools u mogelijk maken. 

Wat is CI/CD? 

In essentie bieden CI/CD-omgevingen tools waarmee software sneller live kan gaan en het build- en releaseproces gestroomlijnd wordt. Code wordt van oudsher door aparte teams ontwikkeld en getest in eigen omgevingen; integratie kost tijd en feedback op defecte code duurt langer. Dit leidt tot lange buildcycli en een lagere efficiëntie. Het is gebruikelijk om een ​​stuk code te testen met een aantal testcases die vóór de ontwikkeling zijn ontworpen. Als de uiteindelijke code aan deze normen voldoet, zou deze eenvoudig in bestaande code moeten kunnen worden geïntegreerd.  

Maar als ontwikkelaars weten we allemaal dat dit verre van de enige mogelijke uitkomst is, zelfs met zorgvuldig ontworpen testcases. CI/CD biedt een manier om testcases op grote schaal uit te voeren, waarbij codewijzigingen in één gestroomlijnde en geautomatiseerde actie kunnen worden getest. Code wordt gepusht, ontvangen door de pipeline en getest, en als alle cases slagen, kan de build live worden gezet. Het is verbazingwekkend wat dit kan betekenen voor de wendbaarheid van uw organisatie.

Het oplossen van een bug in een handomdraai is misschien wel de toekomst van ontwikkeling. Er zijn echter belangrijke overwegingen waarmee rekening moet worden gehouden voordat de CI/CD-workflow sectorbreed wordt omarmd. We zien nu de gevolgen van de overhaaste implementatie van nieuwe technologieën zonder de juiste controle, tests, beveiliging of zelfs maar begrip van hoe de integratie werkt.

Een van de moderne gevaren in de technologiesfeer is de blinde leidt de blindeNiet-experts hebben toegang tot hetzelfde internet als experts en schrijven regelmatig tutorials en handleidingen. AI, een oprecht interessante en nuttige creatie, versterkt dit probleem enigszins. Chat GPT is voor sommigen echt overtuigend met zijn vaak gezaghebbende toon en schijnbare zelfvertrouwen, misschien zelfs charisma. Maar het put uit deze grotere pool van internetbronnen, waardoor het net zo kwetsbaar is voor het begrijpen van slechts de helft van het plaatje. Hoewel het volgende verhaal niet bedoeld is als verkooppraatje, overweeg dan de voordelen van het betrekken van een cybersecurity-adviesbureau bij het ontwerp van uw architectuur, zodat het grotere plaatje niet uit het oog wordt verloren bij het aankaarten van nieuwe en krachtige technologieën. 

De meest recente aanval 

Vandaag richten we ons op een specifieke aanval, ontwikkeld door twee onderzoekers. Deze aanval is gericht op de GitHub-acties CI/CD platform, met name zelfgehoste runners. Zelfgehoste runners bieden veel voordelen, waaronder de grotere flexibiliteit die ze bieden in functies en opties. Hoewel de aanvallen zich grotendeels richten op openbare GitHub-repositories, zijn deze niet ongebruikelijk in de branche. Zelfs als uw organisatie geen openbare repository host, bent u waarschijnlijk afhankelijk van een of meer van uw producten.

Hoewel de belangrijkste aanval gericht was op GitHub-acties, zijn vergelijkbare kwetsbaarheden geïdentificeerd op meerdere CI/CD-platforms die in de sector worden gebruikt: Jenkins, Circle CI, Buildkite, enz. Omdat deze aanval zich richtte op openbare repositories, hadden de theoretische gevolgen ervan verstrekkend kunnen zijn als het kwaadaardig was. Om de zaken nog ingewikkelder te maken, komen deze kwetsbaarheden deels voort uit slechte standaardinstellingen.  

Op maat gemaakte encryptiediensten

Wij beoordelen, ontwikkelen strategieën en implementeren encryptiestrategieën en -oplossingen.

Om een ​​aanval uit te voeren, moet eerst de status van bijdrager worden bereikt. Een hoog gegrepen doel, zou je denken, vooral voor een groot en prestigieus project. Maar het enige wat de onderzoekers nodig hadden om deze status te verkrijgen, was een typefout corrigeren. Met deze status konden ze vervolgens een pull request indienen. Toegegeven, iedereen kan een fork pull request indienen in een openbare repository, maar wanneer een bijdrager een pull request indient, heeft hij/zij standaard de mogelijkheid om de runner te gebruiken die aan het hoofdproject is gekoppeld. Dit gebeurt volgens deze standaardinstellingen voordat de goedkeuring voor de merge is ontvangen. Als er een schadelijke workflow in de fork zit, wordt deze door de runner uitgevoerd.

Runners blijven aanwezig op de machine waarop ze draaien, waardoor deze code toekomstige builds kan blijven beïnvloeden en ononderbroken op de achtergrond kan blijven draaien. De runner kan in principe als een Trojaans paard voor de aanvaller fungeren. Als de runner een verhoogde status op de machine heeft, wat een standaardvereiste is, zal de machine deze niet herkennen of markeren vanwege verdachte activiteit. Keylogging kan vervolgens het authenticatietoken verzamelen, waarna het hele proces kan worden overgenomen. Authenticatietokens geven volledige toegang tot de repository; van daaruit kan de aanvaller doen wat hij wil.  

Veel verraderlijker dan het op zo'n zichtbare manier kapen van een openbaar project zou het misbruiken van de persistent runner om toekomstige builds stilletjes te beïnvloeden zijn. Deze repositories worden veel gebruikt; één van die repositories, PyTorch, die rechtstreeks werd aangevallen als onderdeel van het project, bezit een marktaandeel van 21% in de machine learning-sector. Stel je eens voor hoeveel projecten, bedrijven en software door een aanval gecompromitteerd zouden kunnen worden. En met de lange afhankelijkheidsketens die kenmerkend zijn voor moderne projecten, is uw organisatie zich er mogelijk niet eens van bewust dat ze afhankelijk waren van een project met een bekende inbreuk. In dit geval hebben we geluk dat de aanvallers momenteel onderzoekers waren die niet geïnteresseerd waren in het veroorzaken van schade, maar het is een goed moment om het proces en de tools die uw organisatie gebruikt voor CI/CD te herzien, en om te kijken of uw afhankelijkheden nog steeds kwetsbaar zijn voor deze aanvalsmethode. 

Conclusie 

Aanvallen zijn moeilijk te volgen, vooral in de moderne tijd, waarin de omvang van een inbreuk moeilijk te bepalen is voordat de schade is aangericht. Als uw organisatie CI/CD gebruikt en informatie nodig heeft over hoe u de pijplijn kunt beveiligen en aanvallen kunt voorkomen, neem dan contact op met Encryptie Consulting.  

Ons team van experts kan u helpen bij het opzetten van best practices voor toegangscontrole en beveiligingsbeleid op uw CI/CD-platform, en bij het evalueren van potentiële aanvalsvectoren binnen uw organisatie. Onze diensten omvatten ook: certificaatbeheer en code ondertekening, die eenvoudig kan worden geïntegreerd met uw beveiligde CI / CD en versnelt uw bouw- en testproces verder.