Koodaajat kuriin Defender for DevOpsin avulla

Koodaajat kuriin Defender for DevOpsin avulla

Microsoft muutti useimpien tietoturvapalveluidensa nimiä suunnilleen vuosi sitten. Kaikissa näissä palveluissa on nyt sana Defender mukana, ja ihan syystä – tavoitteena on suojata palveluita ja dataa. Mietimme pitkään yrityksemme nimeen Defender-sanan sisällyttämistä, mutta lopulta ’Security’ voitti.

Vanhat Azure Defender-palvelut saivat samalla uudet nimet, ja niitä onkin nyt iso liuta – Defender for Storage, Defender for DNS, Defender for Servers ja niin edelleen. Tähän listaan saatiin uusi tulokas syksyllä, kun Defender for DevOps tuli koekäyttöön.

Mistä on kyse?

Defender for DevOps suojaa julkaisu-pipelinejä, ja suojaa samalla repositoryjä jossa lähdekoodit majailevat. Tuettuja lähteitä on kaksi – Azure DevOps ja GitHub. Sovelluskehittäjä voi jatkaa kehittämistyötä projekteissa normaalisti vaikka Defender for DevOpsin ottaakin perusominaisuuksiltaan käyttöön.

Palvelu tuo näkyvyyden lähdekoodeihin Azuren puolella. Defender for DevOps skannaa deployment-vaiheessa (esimerkiksi kun verkkopalveluprojektiin ajetaan uusi release GitHubissa majailevasta reposta) mahdolliset tietoturvariskit, ja tuo samalla kokonaisnäkyvyyden DevOps-konfiguraatioihin.

Näitä havaintoja ja hälytyksiä voidaan integroida kätevästi valvontakonsoleihin, ja erilaisista tietoturvariskeistä voidaan tehdä hälytys Microsoft Sentineliin (ja/tai Defender for Cloudiin).

Peruskäytössä Defender for DevOps liitetään haluttuihin repositoryihin kiinni – ja näitä voidaan siis hakea joko Azure DevOpsista tai GitHubista. Liitoksen jälkeen saadaan näkyvyys horisontin taakse, kun toisaalla majailevat lähdekoodit saadaan Defender for DevOpsin valvovan silmän alle.

Esimerkin kuvassa Defender for DevOpsiin on liitetty parikymmentä repoa GitHubista. Nämä on skannattu Defender for DevOpsin toimesta, eikä suuria uhkia – kuten vaikkapa salasanoja tai tunnettu haavoittuvuuksia – ole tunnistettu. Sen sijaan 36 erilaista suositusta on kyllä nostettu esiin. Nämä olisivat jääneet todennäköisesti reposta vastaavan kehitystiimin hoideltavaksi (ja huomaamaksi) ilman Defender for DevOpsia.

Yksittäisistä lähdekoodi-repoista voidaan tarkastella tilannetta tarkemmin:

Esimerkin kuvassa repo (TenantIDLookup – pieni työkalu jolla Azure AD-tenantteja voi kaivella esiin) on noussut esiin suositusten osalta. Koska kyseessä on GitHub-repo, tulisi repoon kytkeä GitHubin Advanced Security-ominaisuudet kuten salaisuuksien ja lähdekoodin skannaus. Dependabot on jo kytketty käyttöön, eli riippuvuuksien osalta tilanne on valvonnassa ja kunnossa tämän repon osalta.

Code scanning voidaan kytkeä manuaalisesti nyt käyttöön repoon (esimerkiksi kehittäjätiimin toimesta), tai keskitetystä Logic Apps-integraation avulla. Tärkein, eli varsinainen havainto tietoturvakonfiguraatioiden puutteesta on kuitenkin nyt saatu esiin.

Tässäkö kaikki?

Vihjasin aiemmin tekstissä, että peruskäytössä Defender for DevOps on tässä. Sen lisäksi palvelun käyttöä voidaan tiiviimmiin integroida kehittäjätiimin arkeen lisäämällä CI/CD-pipelineen staattinen analysointi. Tämän analyysin avulla voidaan suoraan repossa (jälleen siis GitHub tai Azure DevOps) vilkuilla lähdekoodia ja tukitiedostoja useammalla eri avoimen lähdekoodin työkalulla. 

Olennainen hyöty tässä saadaan siitä, että ennen mitään deploymenttia voidaan julkaisuprosessissa validoida lähdekoodi erilaisten tietoturvariskien ja uhkien varalta. Toiminto edellyttää GitHubin (tai Azure DevOpsin) konfigurointia julkaisu-pipelinen osalta.

Lisäksi Defender for DevOps voi tarkistella pull requestit, ja hylätä esimerkiksi build-prosessin löydettyjen riskien perusteella.

Defender for DevOps osaa myös workbookien avulla rakentaa todella kattavaa raportointia ja näkyvyyttä läpi repojen. Ylläolevassa kuvassa on nostettu esiin aiemmat repot, ja tuotu niistä löytyneet potentiaaliset tietoturvaan vaikuttavat uhat selkeästi esille.

Lopuksi

Defender for DevOps on mielenkiintoinen lisä laajaan Defender-palveluiden tarjoomaan. Tämän palvelun avulla voidaan osaltaan toteuttaa DevSecOps-ajattelun mukaista tietoturvan lisäämistä jo kehitystyön varhaisessa vaiheessa.

Entä mitä se maksaa? Tässä vaiheessa ei mitään, koska palvelu on vielä koekäytössä.

Yhteenvetona, Defender for DevOps vaikuttaa todella hyödylliseltä, kun tarvitaan kokonaiskuva tietoturvasta erityisesti ohjelmistoprojektien ja lähdekoodien osalta. Ole yhteydessä, jos voimme olla avuksi asian hoitamisessa kuntoon!