Close

Beveiliging tijdens softwareontwikkeling bij Atlassian


Bij Atlassian is beveiliging in elke fase van de ontwikkelingscyclus geïntegreerd om ervoor te zorgen dat onze code, producten en klanten beschermd blijven. We hanteren veilige ontwikkelingsmethoden in alle fasen van de ontwikkelingscyclus.

  • De ontwikkeling wordt ondersteund door trainingsprogramma's voor applicatiebeveiliging en een kennisdatabase voor beveiliging die wordt onderhouden door het beveiligingsteam;
  • Tijdens de ontwerpfase worden dreigingsmodellering, ontwerpbeoordeling en onze regelmatig bijgewerkte bibliotheek met beveiligingsnormen ingezet. Dat zorgt ervoor dat er rekening wordt gehouden met de juiste beveiligingsvereisten;
  • Tijdens de ontwikkeling vertrouwen we op een verplicht peer review-proces als eerste lijn van beveiligingsbeoordeling. Dit proces wordt ondersteund door geautomatiseerde statische analysecontroles (SAST) en handmatige beveiligingstests (zowel door interne teams als externe experts, zoals bepaald door ons risicobeoordelingsproces);
  • Formele operationele gereedheid en veranderingscontroleprocessen zorgen er vervolgens voor dat alleen goedgekeurde wijzigingen in productie worden geïmplementeerd. Na de implementatie maken we regelmatig gebruik van geautomatiseerde scans van kwetsbaarheden en een toonaangevend bug bounty-programma om continue zekerheid van onze toepassingen te bieden. We meten continu de beveiligingspostuur van onze producten door de tijd heen met een beveiligingsscorekaartsysteem.
Jersey

Cultuur

Betrokkenheid

Training

Normen

Klembord met lijst

Werkwijzen

Controlepunten

Beveiligingsbeoordeling

Verbetering van beveiliging

Bouwen aan een beveiligingscultuur

Atlassian bouwt een beveiligingscultuur op door onze teams te versterken via ons Security Champions-programma en robuuste beveiligingstraining.

Security champions-programma

Atlassian heeft securityleiders - ook wel "security champions" genoemd - binnen al onze product- en serviceteams. Deze zijn verantwoordelijk voor het doorlopend leveren van belangrijke beveiligingsinitiatieven onder hun collega's en voor een zo open mogelijke communicatie met ons centrale beveiligingsteam. Hierdoor kunnen we de beveiliging centraal houden in onze hele organisatie.

De security champions van Atlassian komen regelmatig bij elkaar om tools en kennis te delen over de nieuwste beveiligingsproblemen en de uitdagingen waarmee ze worden geconfronteerd, zodat alle teams daar hun voordeel mee kunnen doen. Het programma diende als springplank om van de beveiliging een nóg integraler onderdeel van onze cultuur te maken.

Beveiligingstraining voor ontwikkelaars

We gebruiken zowel intern ontwikkelde content als content van derden voor training om ervoor te zorgen dat onze ontwikkelingsteams over de nodige beveiligingskennis beschikken om veilige toepassingen te bouwen. Ons trainingsprogramma wordt continu gecontroleerd om de status van het programma te waarborgen en ontwikkelt mee met het veranderende dreigingslandschap.

Ontwerpfase

Tijdens de ontwerpfase worden dreigingsmodellering, ontwerpbeoordeling en onze regelmatig bijgewerkte bibliotheek met beveiligingsnormen ingezet om ervoor te zorgen dat er rekening wordt gehouden met de juiste beveiligingsvereisten.

Bedreigingsmodellering

We maken gebruik van dreigingsmodellering om beveiligingsrisico's beter te begrijpen wanneer projecten worden geconfronteerd met complexe bedreigingen of wanneer kritieke beveiligingsfuncties wijzigen. Er wordt een brainstormsessie georganiseerd tussen onze engineers, beveiligingstechnici, architecten en productmanagers om relevante dreigingen in kaart te brengen en prioriteit te geven. Deze informatie wordt meegenomen in het ontwerpproces en zorgt dat de juiste controles worden ingevoerd. Bovendien ondersteunt het gerichte beoordelingen en tests in latere ontwikkelingsfasen.

Onze dreigingsmodellering omvat:

  • Een op risico's gebaseerde aanpak om de noodzaak voor dreigingsmodellering te bepalen
  • Een gedegen proces voor het uitvoeren van dreigingsmodellering, inclusief ondersteunende materialen en gereedschappen
  • Trainingsvideo's en leesmateriaal om softwareteams te helpen bij het modelleren van bedreigingen

Ontwikkelingsfase

Tijdens het ontwikkelingsproces gebruiken we een aantal beveiligingsprocessen en -methoden om ervoor te zorgen dat onze code beveiligd blijft.

Beveiligingsbeoordeling

Het beveiligingsteam voert ook een beveiligingscontroleproces uit om beveiligingsgarantie te leveren voor alle softwareprojecten bij Atlassian. Er wordt een proces op basis van risico's gebruikt om prioriteit toe te kennen aan de beveiliging en om vast te stellen welke acties vereist zijn om projectrisico's te beperken. Garantieactiviteiten zijn afhankelijk van het vastgestelde risiconiveau en omvatten een combinatie van:

  • Beoordeling van ontwerpen en modelleren van bedreigingen;
  • Codebeoordeling en beveiligingstests;
  • Onafhankelijke garantie met deskundige externe onderzoekers en consultants.

Peerreview

Tijdens de ontwikkeling wordt alle code onderworpen aan ons "peer review green build"-testproces (PRGB). Dit proces vereist dat meerdere senior of lead ontwikkelaars alle commits beoordelen voordat ze naar productie worden gepusht. Dit proces wordt verder ondersteund door geautomatiseerde statische analysecontroles (SAST) en handmatige beveiligingstests (zowel door interne teams als externe experts, zoals bepaald door ons risicobeoordelingsproces). De ontwikkeling wordt ook ondersteund door trainingsprogramma's voor applicatiebeveiliging en een kennisdatabase voor beveiliging die wordt onderhouden door het beveiligingsteam.

Scheiding van omgevingen

We handhaven logische en fysieke scheiding van productie- en ontwikkelingsomgevingen voor al onze kritieke services. Onze staging-omgeving is logisch gescheiden - maar niet fysiek gescheiden - en wordt beheerd onder controle- en toegangsprocessen van productiekwaliteit.

Atlassian heeft ook beveiligingsbeleid dat het gebruik van productiegegevens in niet-productieomgevingen verbiedt. We hanteren richtlijnen voor het verwijderen of beschermen van beperkte gegevens - inclusief persoonsgegevens - met behulp van anonimisering, hashing en tokenisatietechnieken.

Onderhoudsfase

Voordat we code naar productie pushen, moet deze onze formele controleprocessen voor operationele gereedheid en verandering doorlopen.

Nadat een systeem is geïmplementeerd, voeren we regelmatig geautomatiseerde kwetsbaarheidsscans uit. Zoals we in onze beveiligingspraktijken bespreken, hebben we een toonaangevend bug bounty-programma dat voortdurende borging van de continue beveiliging biedt voor onze systemen met behulp van een vertrouwde, crowd-sourced groep beveiligingsonderzoekers.

Beveiligingsscorekaarten

We hebben een geautomatiseerd verantwoordings- en monitoringsysteem ontwikkeld dat bekend staat als "productbeveiligingsscorekaarten", dat wordt gebruikt om de beveiligingspostuur van alle producten bij Atlassian te meten. We gebruiken een breed scala aan beveiligingsgerichte criteria, zoals huidige kwetsbaarheden, training, recente beveiligingsincidenten en behandeling door security champions, om een algemene dagelijkse beveiligingsscore voor elk van onze producten te bieden.

Dit scoreproces geeft elk van onze productteams een objectieve weergave van welke beveiligingsgebieden extra aandacht nodig hebben en stelt vast waar hiaten bestaan die aangepakt moeten worden, met acties om ze aan te pakken. Het proces met beveiligingsscorekaarten maakt het bovendien mogelijk voor het Atlassian-beveiligingsteam om eenvoudig bij te houden hoe alle producten het gedurende bepaalde tijd doen vanuit beveiligingsperspectief, vooral omdat ons productassortiment blijft schalen.