Category Archives: Security

Security zal ons “worst” zijn

Indien u mijn artikels leest of mijn Twitter tweets volgt, dan is u duidelijk dat (ICT) security mijn interesse heeft. Dat is overigens al jaren het geval. Jaren geleden beheerde ik een bedrijfsnetwerk met een 6 tal (Linux) firewalls met 8 fysieke netwerkinterfaces ieder, en met talloze subnetten en tientallen VPN verbindingen elk. Toen was ik er verantwoordelijk voor.

Inmiddels doe ik geen technisch inhoudelijk werk en komt IPTABLES alleen nog aan bod in de (Linux) training die ik geef. De interesse voor met name netwerk-security is gebleven en dan vooral het idee dat iemand op afstand een machine van je “over neemt” en daar informatie af kan halen of voor diens eigen doelen kan inzetten.

“Van mij en alleen van mij”

Op mijn eigen machines (webservers, latptops en desktops) neem ik dan ook uitgebreide maatregelen om misbruik te voorkomen. Zo maak ik gebruik van IPTABLES firewall, inloggen met SSH keys only, Fail2ban, scripts die logfiles “doorspitten” etc. Ik maak me geen enkele illusie, mijn maatregelen zijn niet voldoende. Mijn punt is, dat ik alle maatregelen tref die ik (in alle redelijkheid en binnen mijn kennis) kan treffen.

“Van jou of van mij?”

De maatregelen die ik tref maken me natuurlijk nieuwsgierig naar hoe anderen dit doen. Als ik met collega-vakbroeders praat die verstand hebben van beveiliging dan stel ik ze altijd dezelfde vraag. “Hoe weet je zeker dan jouw systeem echt van jouw alleen is?” Steevast krijg ik hetzelfde onbevredigende antwoord, “dat weet je niet”. Soms voegt men daar nog aan toe dat het meest verstandige wat je kan doe is de netwerkkabel los te trekken. Hoewel dat een machine volstrekt nutteloos maakt, kan zelfs deze maatregel in twijfel worden getrokken. Zo verscheen er een paar maanden geleden een artikel over een security specialist die meent malware (BadBIOS) te hebben gevonden dat een “air gap” kon overbruggen omdat het geluid gebruikte om te communiceren.

Deze zaken blijven knagen bij me.

 Edward Snowden

Het afgelopen jaar zijn we “verrast” door de onthullingen van Edward Snowden. Deze waren voor mij dan ook buitengewoon interessant. Van alle akelige dingen die ik me eerder kon voorstellen is inmiddels aangeven dat die ook daadwerkelijk plaats vinden. Bij elke onthulling dacht ik dan ook, “het verbaast me eigenlijk niets”. Ik zou er bijna cynisch van worden, maar ik sta nu op het standpunt, dat je dus inderdaad van het ergste uit moet gaan. Niet alleen criminelen proberen rottigheid uit te halen, maar onze eigen overheid en “bevriende” overheden ook.

Koude drukte

Zoals eerder gesteld, de onthullingen hebben me dus niet echt verbaast, maar hebben mijn ergste vermoedens bevestigd. Maar wat mij wel bevreemd is de gelatenheid van mijn ICT collega’s. Zo wordt netwerk apparatuur uit USA voorzien van standaard hardware waarmee de NSA zich toegang kan verschaffen. Als netwerkspecialist zou mij dat mateloos irriteren. Als ik verantwoordelijk ben voor een netwerk (van mijzelf of van een betalende klant), dan zou ik zeker willen weten dat de NSA – of wie dan ook – daar niet binnen kan komen. Ik zou alle maatregelen treffen die ik binnen redelijke grenzen kan realiseren. Ik bemerk echter een gelatenheid bij mijn collega’s. Ze reageren vaak met, “Tja wat kan je eraan doen?”, of “Ik heb toch niets te verbergen”.

Wake up call

Naar mijn idee kan – en moet – je er juist heel veel aan doen. Neem alle maatregelen die je kan treffen, ga altijd van het slechtste scenario uit (zie Snowden) en gebruik zoveel mogelijk Open Source Software. Natuurlijk zit ook in deze software fouten en exploits, maar het is de beste garantie dat fouten gevonden, en snel gefixed worden. Wees achterdochtig en controleer zaken, gaat het zoals ik verwacht of zie ik bijvoorbeeld netwerk verkeer dat ik niet kan verklaren? Maar bovenal, leg je er niet bij neer. Een “Big Brother” maatschappij laat je zelf gebeuren of niet..

Open Source Software tussen wal en schip bij Architectuur denken

Het is voor bedrijven noodzakelijk om de snelle veranderingen in onze maatschappij te volgen. Consequentie  hiervan is dat zij hun ICT voorzieningen snel aan moeten kunnen passen zonder daarmee consessies te doen aan de beschikbaarheid en veiligheid van systemen en gegevens. Om dit te bereiken worden er afspraken gemaakt over waaraan dergelijke veranderingen moeten voldoen of onder welke condities deze uitgevoerd mogen worden. Deze afspraken, of wel principes, worden architectuur genoemd. Het architectuur denken is heel gebruikelijk bij grote bedrijven en organisaties omdat niemand alleen in staat is deze complexiteit te overzien. De interne IT organisatie, externe leveranciers en dienstverleners hebben zich allen te conformeren aan deze (enterprise) architectuur, het zogenaamde: werken onder architectuur.

Architectuur als middel
Voor wat betreft de (infrastructurele) architectuur kunnen dit afspraken zijn over, gegevens, informatie beveiliging, applicaties, interfaces en de infrastructuur zelf. Zo kunnen bijvoorbeeld het aantal operating systemen of databases beperkt worden. Met dergelijke beperkingen wordt de infrastructuur beter te overzien en de organisatie is daardoor beter in staat het beheer uit te voeren. Ook consequenties van wijzigingen zijn zo beter te overzien. Architectuur is daarmee geen doel op zich, maar heeft tot doel een consistente en veilige ICT te realiseren waarop efficiënt wijzigingen doorgevoerd kunnen worden. De architectuur ontwikkelt zich ook in de tijd en zal kan niet statisch zijn. Enterprise architecten zijn verantwoordelijk voor het naleven van de bestaande architectuur en het ontwikkelen daarvan.

Enterprise architecten
Veel enterprise architecten zijn echter onbekend met Open Source Software en de (detail) mogelijkheden die dit biedt voor de architectuur. Als Linux al een platform binnen de architectuur is (en dat komt steeds vaker voor) dan is het een uitzondering op verschillende vlakken. De meeste organisaties hebben bijvoorbeeld centraal gebruiker beheer ingericht op basis van Microsoft Active Directory. Linux servers worden veelal niet gekoppeld (maar kunnen dat overigens wel). Linux gebruikers worden of lokaal aangelegd, of er wordt een LDAP gebaseerde structuur naast Microsoft Active Directory gebouwd. Deze Linux systemen worden dan meestal gebruikt voor web sites of content management systemen zodat er geen noodzaak is voor eindgebruikers daarop in te loggen. Het wordt als platform toegestaan, maar het is wel een uitzondering. Je zou kunnen stellen dat het geïsoleerd ingezet wordt.

Gemiste kansen
Naar mijn idee past Open Source Software juist heel goed binnen het architectuur denken. Er zijn talloze tools die het naleven van afspraken juist veel makkelijker maken. Er zijn tools waarmee het management van Linux systemen gestandaardiseerd en geautomatiseerd kunnen worden zoals bijvoorbeeld, Red Hat Satelite voor deployment en Puppet voor management. Standaard biedt Linux talloze bouwblokken om systemen te hardenen zoals bijvoorbeeld Secure Shell (SSH) dat encrypted toegang tot systemen kan geven, of Secure Copy (SCP) waarmee bestanden encryped tussen Linux systemen gekopieerd kunnen worden. SSH en SCP kunnen eenvoudig verder beveiligd worden door root acces te weigeren en gebruikers alleen met een RSA of DSA key te laten inloggen. Beiden maken standaard deel uit van ieder Linux installatie. Verder kunnen middels het SUDO mechanisme (sudoers file) root rechten aan users gegeven worden op specifieke commando’s. Wanneer men echt hecht aan sucurity (en dat doen enterprise architecten) dan mogen zeker Security Enhanced Linux (SELinux) en AppArmour niet vergeten worden. Op basis hiervan kunnen de rechten van processen op systemen verder beperkt worden. Als laatste zou ik de CIS Benchmark voor Red Hat systemen willen noemen. Dit is een uitgebreide beschrijving van (mogelijk) te nemen maatregelen die een Red Hat Linux systeem veiliger maken. Van iedere maatregel is beschreven hoe deze geïmplementeerd moet worden, waarom het systeem veiliger wordt en bovenal hoe het gecontroleerd (audit) kan worden.

Een veiliger infrastructuur
De beschreven mogelijkheden zijn maar een greep uit de mogelijkheden die Open Source Software biedt om een IT omgeving veilig en beheersbaar te houden. Bedrijven die al bekend zijn met Linux en Open Source Software kennen deze mogelijkheden ongetwijfeld. Ik zou daarom graag een pleidooi willen houden voor Linux en Open Source Software bij enterprise architecten. Verdiep U in de mogelijkheden en probeer ze toe te (laten) passen. Maak ze in al haar mogelijkheden onderdeel van de (enterprise) architectuur. De organisatie waarvoor u werkt zal u dankbaar zijn.

Dit artikel is ook gepubliceerd op de Computable site op d.d. 29 november 2013

“Het PRISM dilemma”

De onthullingen rond PRISM doen ons geloven dat ook op internet het “recht van de sterkste” geldt. In dit voorbeeld is het de Amerikaanse NSA die massaal telefoongesprekken en internet communicatie tapt en opslaat. Andere geheime diensten doen dit ongetwijfeld eveneens. Dit voorval staat niet op zichzelf, er zijn vele voorbeelden waarin de security van computersystemen in het geding is. Wat kan je hier als bedrijf of individu aan doen? Kan Linux / Open Source Software ons hierbij behulpzaam zijn?

Geen eigenaar, geen bedrijf, geen deals

Commerciële software bedrijven hebben twee nadelen, ten eerste zijn ze gevestigd in een specifiek land en ten tweede worden ze (deels) “geregeerd” door commercie. Doet een Europees bedrijf zaken met een Amerikaans bedrijf dan is de kans groot dat Amerikaanse geheime diensten toegang hebben tot hun systemen en data. Zou het uitmaken dat de specifieke vestiging van dit Amerikaanse bedrijf zich op Europees grondgebied bevind? PRISM leert ons dat de Patriot Act voor alle Amerikaanse bedrijven geldt, waar zij zich ook vestigen. Men kan zich terecht afvragen of dit wenselijk is voor (o.a.) Europese overheidsdiensten. Stellen zij hiermee gegevens van hun burgers aan de Amerikaanse overheid ter beschikking?Prism

Een ander nadeel is het commerciële karakter van veel software bedrijven. Naast – voordelen – strookt de aandacht (en prioriteit) voor security niet altijd met de commerciele belangen van deze bedrijven. Zo worden exploits liefst niet meteen bekend gemaakt. Naast dat bedrijven niet graag “de vuile was” buiten hangen kan een fix meestal niet snel worden gemaakt. De rechtvaardiging hiervan is vaak dan ook dat de onbekendheid van een exploit voorkomt dat daarvan misbruik wordt gemaakt. In de “Open Source wereld” weten we dat deze “Security through obscurity” niet werkt. Mensen die misbruik willen maken van computer systemen zijn gewoon op de hoogte van deze exploits. Microsoft bijvoorbeeld, informeert de NSA over dergelijke exploits zo blijkt nu. Eindgebruikers zijn zo niet in staat hiertegen maatregelen te treffen omdat de exploits voor hen wel onbekend zijn. In tegenstelling, binnen de communities van Open Source Software worden exploits onmiddellijk bekend gemaakt zodat gebruikers maatregelen kunnen treffen en er snel een patch / fix gemaakt kan worden.

Community development

Open Source Software, zoals Linux bijvoorbeeld, kent geen eigenaar die in een specifiek land is gevestigd. Hierdoor is het lastig voor een nationale overheid – Amerikaans of anderzins – hierop grip te krijgen. Bovendien zijn de mensen die aan deze software programmeren vaak wars van dergelijk invloed en zullen zij om die reden daartegen verzetten. Ook is de bron code inzichtelijk voor iedereen die dat wil en vormt daarmee een extra zekerheid dat daarin geen opzettelijke “achterdeurtjes” gemaakt zijn. Het is geen garantie, maar waar zou je voorkeur naar uitgaan?

De bovenstaande punten betekenen niet dat commerciële software slecht is, 
dergelijke bedrijven niet te vertrouwen zijn of dat Open Source Software 
geen exploits zou bevatten. Er zijn voldoende legitieme redenen om wel 
commerciële software te gebruiken. Het is geen argument waarom het 
produceren van commerciële software illegaal of immoreel zou zijn. 
Het is dan ook geen onwil bij commerciële software bedrijven, maar 
eerder een "handicap".

Eerste-hulp

Wanneer bedrijven en eindgebruikers eenmaal met Linux / Open Source Software aan de slag gaan, dan blijkt dat daarvoor een eindeloze hoeveelheid tools (hulpprogramma’s) beschikbaar zijn. De toegankelijkheid is groot omdat ze makkelijk geïnstalleerd kunnen worden (via internet) en er (meestal) geen kosten aan verbonden zijn. Een aanzienlijk deel van deze tools kunnen gebruikt worden om de security van systemen, communicatie en data te verhogen.

Om een indruk te geven, OpenVPN kan gebruikt worden om VPN tunnels te bouwen, iptables is een standaard firewall in Linux, SELinux is een (overigens door de NSA ontwikkelde) methodiek om het security niveau van Linux te verhogen. Mail systemen kunnen beveiligd worden met ClamAV (een virusscanner) en Spamassassin (Spam filter).

Maar ook zijn er: Tripwire (een systeem waarmee wijzigingen van configuratiebestanden gedetecteerd kan worden), Snort (een intrusion detection system) en Fail2ban (een systeem waarmee onterechte inlogpogingen op systeem processen geweerd kunnen worden).

Bovenstaande producten zijn kosteloos te gebruiken, op een paar is commerciële (betaalde) support te verkrijgen en de meesten zijn prima gedocumenteerd. Ze zijn vaak onderling te combineren en deze lijst is verre van compleet!

Ladder en breekijzer

Linux / Open Source Software “gedraagt” zich eerder als een gereedschapskist met onderdelen, dan een “kant en klaar product”. Het nadeel hiervan is dat er meer kennis en ervaring nodig is om daarmee te bereiken wat je wil. Daar staat tegenover dat systemen volledig naar behoefte te configureren zijn. Dit stelt bedrijven en gebruikers in staat bijvoorbeeld alle potentiële hulpmiddelen voor hackers te verwijderen. Een systeem kan worden teruggebracht tot de basisonderdelen die echt nodig zijn. Alle overbodige software en services voor het specifieke toepassingsgebied zijn te verwijderen. In vergelijk, wie laat er een ladder en breekijzer bij zijn voordeur liggen?

Wie niet sterk is…

Voorbeelden zoals PRISM kunnen ons het gevoel geven dat het “recht van de sterkste” geldt. Wie kan er op tegen de financiële kracht en kennis van de NSA? Linux / Open Source Software geeft ons gelukkig de mogelijkheden daar het “recht van de slimste” tegenover te zetten. Het is aan ons eindgebruikers (en bedrijven / zakelijke gebruikers) om deze handschoen op te pakken of ervoor te kiezen ons over te geven aan een ieder die misbruik wil maken van onze systemen.

update d.d. 26-08-2013

Interessant AIVD rapport over dit onderwerp… AIVDrapport2013