‫Als we verder gaan, hebben we slecht gedrag
‫tijdens de runtime.
‫Ik zal hier niet veel over vertellen, maar dit is de
‫nieuwste op mijn lijst.
‫De Sysdig Falco is een tool die, er zijn andere
‫soortgelijke tools, maar geen die ik
‫heb gezien die zo eenvoudig of zo ontworpen voor containers als Falco.
‫Falco neemt in wezen een gewone kleine lijst
‫van slecht gedrag, of wat ik zou zeggen,
‫gedrag dat verdacht is, toch.
‫Dingen die niet per se veel zouden moeten gebeuren, zoals het
‫uitvoeren van een lopende container op een productieserver.
‫Of het kopiëren van bestanden naar die containers op actieve servers.
‫Of bind het monteren van gevoelige gegevens van
‫het hostbesturingssysteem in de container zelf,
‫toch.
‫Ze laten je hier een klein voorbeeld zien van
‫wat je precies doet. Ze gebruiken in
‫feite Falco-agenten op elke server en doen dan bepaald gedrag
‫in containers die verdacht kunnen zijn.
‫Het doel van Falco is om dat gedrag voor u te controleren en
‫te loggen om in principe elk
‫slecht gedrag te volgen en indien nodig te waarschuwen voor die
‫logs. Je kunt
‫ze hier bepaalde dingen zien uitvoeren en zien
‫wat de logs uitvoeren. Het coolste hiervan is
‫dat het wordt geleverd met een standaardset.
‫Omdat velen van ons niet al het
‫slechte gedrag kennen. We weten niet alles wat je zou kunnen
‫doen als je een slechte acteur bent.
‫Het leuke van Falco is dat het met
‫een standaardlijst komt, en dan kun je zelf meer regels toevoegen aan je
‫applicaties. U kunt een aangepaste lijst
‫maken, deze toevoegen aan Falco wanneer deze wordt uitgevoerd.
‫Dat is een gratis open source tool.
‫Dat, zou ik zeker zeggen, wordt steeds
‫geavanceerder, toch. Zoals u kunt zien, wordt deze
‫lijst, terwijl we door de lijst gaan, geavanceerder.
‫Maar ik denk dat het de moeite waard is om aan je
‫productieservers toe te voegen.
‫Zelfs als je die logboeken niet constant in de gaten houdt en
‫je er geen melding van maakt, heb je alleen die logboeken zodat wanneer je iets
‫hebt dat problematisch is, je terug kunt gaan om te zien of er
‫enig gedrag was en wat dat gedrag was om te sorteren
‫van het traceren van uw stappen, rechts.
‫Ik zou dat zeker in je gereedschapskist zetten.
‫De volgende stap is inhoudsvertrouwen. Ik heb niet echt een demo
‫of een manier om inhoudsvertrouwen te tonen, omdat het een set tools is.
‫Docker biedt er veel. Om ervoor te
‫zorgen dat alles in je pijplijn, van code-ondertekening in je git-repo's,
‫helemaal tot aan het ervoor zorgen dat in productie
‫alleen afbeeldingen die door
‫je team zijn ondertekend op servers mogen draaien.
‫Dat hele proces staat bekend als inhoudsvertrouwen.
‫Het is een pijplijn van vertrouwen.
‫Het is een pijplijn van het ondertekenen
‫van verschillende delen van de tooling, uw afbeeldingen,
‫uw code om ervoor te zorgen dat niets in Docker op uw servers draait, tenzij u dit
‫specifiek toestaat door middel van ondertekening.
‫OKE. Zo, dat is een project.
‫Dat is zeker een project, toch?
‫We gaan naar de onderkant van deze lijst.
‫Wanneer u begint te praten over veilige ontwikkeling en
‫veilige implementaties, is dit een van die meer
‫geavanceerde functies omdat uw ontwikkelaars, uw beveiligingsteam,
‫erbij moeten worden betrokken.
‫Het vereist het ondertekenen van codes en het ondertekenen van afbeeldingen, wat
‫de tooling van Docker zeker gemakkelijker maakt, maar ze zullen het niet allemaal
‫voor je doen. Oke. Je zult deze dingen
‫in je teams moeten implementeren.
‫De volgende stap is
‫iets dat veel werk kost en u misschien niet
‫veel voordelen oplevert.
‫Dat is het nemen van al die standaardprofielen waar
‫ik het eerder over had en het nemen van
‫al die standaardprofielen van AppArmor, SELinux,
‫Seccomp en "Linux-mogelijkheden". Zet dat tussen aanhalingstekens, want
‫dat is eigenlijk een functie in de kernel. Er zijn ongeveer 300 mogelijkheden
‫of zoiets, en Docker zal er bepaalde nemen en
‫ze verwijderen.
‫Maar die kun je veranderen. Die kun
‫je on-the-fly aanpassen. Je kunt eigenlijk meer vergrendelen of
‫je kunt Docker openen, afhankelijk van je behoeften.
‫Als u meer te weten komt over uw specifieke toepassingen, als u er diep
‫in duikt, kunt u leren hoe
‫u deze meer kunt vergrendelen.
‫Je zou zelfs kunnen ontdekken dat sommige van
‫je applicaties die je koopt of van open source krijgt, zoals
‫Nginx, aangepaste sjablonen voor deze tools hebben
‫die je specifiek kunt downloaden en toepassen wanneer je die
‫afbeelding uitvoert. Omdat Docker zelf niet
‫weet wat er in uw container draait. Het weet niet dat
‫je mijn MySQL gebruikt, toch. Het kan dus
‫geen MySQL-specifiek beleid toepassen. Maar misschien vind je
‫er wel een. U kunt misschien een betere maken
‫die een beetje veiliger is.
‫Dat is behoorlijk geavanceerd. Je moet behoorlijk
‫goed geïnformeerd zijn over systemen, internals en hoe dat
‫allemaal werkt. Maar Docker ondersteunt het allemaal.
‫Dit is een functie per container, wat betekent dat u deze kunt wijzigen voor
‫elke container die u gebruikt,
‫afhankelijk van uw vereisten.
‫Moet je dat zien.
‫Je beveiligingsteam zal daarom van je houden.
‫Als je dit spul geïmplementeerd kunt krijgen en niets kapot kunt maken,
‫is dat de sleutel. Breek niets.
‫Uw beveiligingsteam zal daar grote fans van zijn.