“Veilig Virtualiseren” Een visie op virtualisatieregels binnen de Rijksoverheid. Ir. Sander Nieuwenhuis (Harteveld Security Solutions, s.nieuwenhuis at harteveld.nl) Matthijs Claessen BPM (Logius, matthijs.claessen at logius.nl) Met medewerking van: Ir. Raymond Groenewoud (raymond.groenewoud at logica.com) Drs. Jeroen Zonnenberg MSSM (jeroen.zonnenberg at ordina.nl) 29 maart 2011 (versie 1.00)
1. Inleiding Vandaag de dag zijn informatiesystemen onmisbaar voor overheden. Daarom moeten de informatiesystemen betrouwbaar zijn, hetgeen onder meer betekent dat de beveiliging van de informatiesystemen goed geregeld moet zijn. Vaak wordt hierbij gesproken over informatiebeveiliging: het beschermen van de informatie die opgeslagen, verwerkt en getransporteerd wordt door informatiesystemen. Historisch gezien wordt informatiebeveiliging binnen de Rijksoverheid aangepakt op de wijze waarop fysieke beveiliging wordt aangepakt: het fysiek scheiden van ICT systemen om de informatie in die systemen van elkaar te scheiden. Tegenwoordig worden ICT systemen (bijvoorbeeld vanwege eisen aan efficiency en flexibiliteit) vaak gemeenschappelijk gebruikt. ICT leveranciers leveren meerdere diensten aan meerdere klanten, waarbij bijvoorbeeld verschillende gebruikersgroepen met verschillende applicaties op dezelfde server draaien. Of waarbij gegevens van verschillende gebruikersgroepen op dezelfde harddisk worden opgeslagen of over hetzelfde netwerk worden verstuurd.
Veilig Virtualiseren
Door dit in toenemende mate gemeenschappelijk gebruik van ICT systemen door verschillende gebruikersgroepen, is het noodzakelijk de strikte regels voor fysieke scheiding te herzien. Steeds meer wordt logische scheiding toegepast: via software worden gebruikersgroepen en de gegevens van de gebruikersgroepen van elkaar gescheiden, ook wel bekend als virtualisatie. De regelgeving voor het logisch scheiden van gegevens of gebruikersgroepen binnen de Rijksoverheid loopt achter op deze ontwikkelingen. Er zijn wel diverse regelgevingen (zoals het VIR-BI of de AV23), maar die doen geen of beperkt uitspraken over het mogen toepassen van virtualisatie. Terwijl deze uitspraken in de praktijk wel hard nodig zijn, gezien de ontwikkelingen dat ministeries steeds vaker van elkaar of met elkaar ICT systemen gebruiken. Dat heeft ons aan het denken gezet, met als resultaat dit paper, waarin een aantal generieke ideeën met betrekking tot rubricering van gegevens en virtualisatie van systemen is uiteengezet. Met als doel beleidsmakers en uitvoerenden binnen de Rijksoverheid te
Ir. Sander Nieuwenhuis & Matthijs Claessen BPM
helpen een gewogen beslissing te nemen over het wel of niet bundelen van ICT systemen. 2. Virtualisatie De term virtualiseren wordt binnen de ICT gebruikt voor het loskoppelen van de fysieke en de logische wereld. Via virtualiseren kunnen meerdere logische representaties van eenzelfde fysiek ICT middel worden gemaakt. Zo kunnen meerdere onafhankelijke opererende Operating Systems naast elkaar worden gedraaid op één fysieke server, of kan één fysiek netwerk worden opgedeeld in een veeltal separate, logische netwerken. Hierbij komt de vraag naar boven: hoe (on)veilig is deze logische scheiding in vergelijking tot de fysieke scheiding van systemen? Onze verwachting is dat naarmate men verder i van de fysieke wereld verwijderd raakt de risico’s geassocieerd met virtualisatie toenemen (met name: het doorbreken van de logische scheiding). Dus dat het logisch scheiden van netwerken in essentie veiliger is dan het logisch scheiden van Operating Systems.
Pagina 1 van 5
De reden waarom we dit verwachten is tweeledig: ten eerste geldt dat naarmate men verder van de fysieke wereld verwijderd raakt, de implementatie van virtualisatie lastiger is en dus de kans op fouten toeneemt. Het scheiden van netwerken via verschillende lichtkleuren in de glasvezels (DWDM) is nog bijna fysiek te noemen, terwijl het scheiden van meerdere Operating Systems op één fysieke server compleet virtueel is (bijvoorbeeld via VMWare). En ten tweede zijn de netwerken en opslagsystemen ‘verder weg van de eindegebruiker’, waardoor toegang tot de middelen lastiger wordt en daarmee mogelijk misbruik ook. Vergelijk dit met het scheiden van gebruikersgroepen in eenzelfde applicatie: dit wordt vaak alleen afgeschermd door een username/password combinatie waar de eindgebruiker makkelijker doorheen kan breken dan door een logisch gescheiden netwerk (VLAN). In de praktijk lijkt deze verwachting ook wel te kloppen: het gemeenschappelijk gebruiken van netwerken is gemeengoed en levert zelden problemen op (denk aan de netwerkcarriers die verkeer van diverse klanten over dezelfde netwerkkabels versturen). Het delen van storage wordt binnen bedrijven ook steeds vaker toegepast (SAN/NAS). Maar veel bedrijven zijn nog terughoudend om de gegevens ‘in de wolk’ op te slaan bij bijvoorbeeld Google. En het gebruik van dezelfde applicatie op dezelfde server voor verschillende klanten wordt vaak niet gedaan, maar het gebruik van verschillende virtual machines voor verschillende klantgroepen op dezelfde fysieke servers weer wel. Veilig Virtualiseren
3. Model Om het verhaal rondom virtualiseren niet te ingewikkeld te maken, hebben we voor een model gekozen, waarin onze richtlijnen op het voor virtualisatie worden gepresenteerd. 3.1. Lagen Het eerste element in dit model zijn de lagen waarop gevirtualiseerd kan worden: • • • •
Laag 4: applicatie Laag 3: operating system Laag 2: storage Laag 1: netwerk
Hierbij kan aangetekend worden dat per laag vaak meerdere mogelijkheden tot virtualisatie mogelijk zijn. Zo kan op diverse niveaus binnen het netwerk virtualisatie gerealiseerd worden (denk aan VLAN’s, gerouteerde IP-netwerken en scheiding via firewalls). En voor storage zijn diverse methoden mogelijk, bijvoorbeeld als virtuele harddisks of via gescheiden databases.
zijn vastgelegd in het Voorschrift Informatiebeveiliging Rijksdienst (VIR) en lopen synchroon met de niveaus zoals gehanteerd door de NATO: • • • • •
Niveau A: Staatsgeheim Zeer Geheim Niveau B: Staatsgeheim Geheim Niveau C: Staatsgeheim Confidentieel Niveau D: Departementaal Vertrouwelijk Niveau E: Ongerubriceerde informatie
In het kader van de Wet op de Bescherming van Persoonsgegevens (WBP) wordt ook een aantal niveaus van bescherming onderkend. Via een vergelijking van de maatregelen ii voorgeschreven via de VIR-BI en in de AV23 zijn deze niveaus ongeveer als volgt te koppelen aan de hierboven genoemde niveaus: • • • •
Niveau C: Persoonsgegevens klasse III Niveau D: Persoonsgegevens klasse II Niveau D: Persoonsgegevens klasse I Niveau E: Persoonsgegevens klasse 0
Voor het gemak en het overzicht hebben we ervoor gekozen deze verschillende technieken samen te voegen. Ook denken we dat het voor de beveiliging geen groot verschil maakt welke technieken worden toegepast binnen een laag, als deze maar effectief geïmplementeerd worden. Het gaat namelijk om de laag waarin de virtualisatie plaatsvindt, niet zozeer de wijze waarop.
3.3. Partijen Tot slot kan er onderscheid gemaakt worden tussen de partijen die systemen beheren waar de gegevens met een bepaald rubriceringniveau worden opgeslagen, getransporteerd of verwerkt. Voor het overzicht wordt ook hier een vereenvoudigd model gehanteerd:
3.2. Niveaus Daarnaast gaan we in ons model uit van een vijftal niveaus van rubricering van informatie. Deze niveaus gelden binnen de Rijksoverheid,
• • • •
Ir. Sander Nieuwenhuis & Matthijs Claessen BPM
Het eigen ministerie binnen Nederland Een ander ministerie binnen Nederland Een andere partij binnen Nederland Een andere partij buiten Nederland Pagina 2 van 5
Als eerste richtlijn geldt daarom: systemen met een bepaald rubriceringsniveau mogen informatie met hetzelfde of een lager rubriceringsniveau verwerken. De motivatie voor deze richtlijn is triviaal: een systeem met beveiliging die voldoende is voor beveiligingsniveau B, is zeker veilig genoeg voor informatie met beveiligingsniveau C, omdat de regels voor niveau C minder streng zijn dan voor niveau B. Veilig Virtualiseren
E J J J J J
In bovenstaande tabel zijn de consequenties van deze richtlijn gegeven. Hierbij is het rubriceringsniveau van de informatie in de kolommen neergezet en het rubriceringsniveau van de systemen in de rijen. Zo mag informatie van niveau A alleen op systemen met rubricering van niveau A worden verwerkt, maar niet op een lager gerubriceerd systeem. Dat is ook logisch, want voor lager gerubriceerde systemen zijn minder beveiligingsmaatregelen geïmplementeerd. Andersom mag op het systeem met beveiligingsniveau A in principe wel informatie worden verwerkt van alle rubriceringsniveaus, want het hoogste niveau van beveiliging is ook genoeg voor lager gerubriceerde informatie. 4.2. Richtlijn 2 Ten tweede is er het vraagstuk welk soort informatie door welke partij mag worden behandeld. Er is voor te stellen dat niet elk soort informatie een ministerie mag verlaten, bijvoorbeeld bij outsourcing naar een externe partij. Als tweede richtlijn geldt dan ook: hoe hoger het rubriceringsniveau van de informatie, hoe dichter deze informatie bij de bron moet blijven.
Ir. Sander Nieuwenhuis & Matthijs Claessen BPM
De motivatie voor deze richtlijn is dat hoe dichter de verwerkende partij bij de bron zit, hoe betrouwbaarder deze partij is. Want deze partij is beter op de hoogte van de belangen en de risico’s geassocieerd met de informatie. En ook: hoe makkelijker ook de verwerkende partij te beheersen en controleren is (als een ministerie zijn eigen informatie verwerkt is dat beter te vertrouwen dan dat een hosting partner in bijvoorbeeld Noord Korea dat doet).
Eigen Ministerie
D J J J J x
Ander ministerie
Informatie C J J J x x
Partij binnen NL
iv
B J J x x x
Partij buiten NL
4.1. Richtlijn 1 Ten eerste is het van belang om te weten welk soort informatie op welk systeem mag worden verwerkt. Systemen worden ingericht met beveiligingsmaatregelen die geassocieerd worden met een bepaald rubriceringsniveau. En dan geldt natuurlijk: hoe hoger het rubriceringsniveau, hoe strenger de beveiligingsmaatregelen moeten zijn
A B C D E
A J x x x x
Systeem
4. Voorstel tot regelgeving virtualisatie Door bovenstaande lagen, niveaus en partijen via richtlijnen te combineren, ontstaan tabellen waarin de regelgeving rondom virtualisatie is af te leiden. De uiteindelijke tabel voor deze regelgeving wordt stap voor stap opgebouwd.
Systeem
De keuze van deze partijen is enigszins arbitrair, maar vanuit het gezichtspunt van de Rijksoverheid wel reëel. Zeker als gekeken wordt naar samenwerkingsverbanden tussen ministeries binnen Nederland of het uitbesteden (sourcen) van overheidsdiensten naar de (al dan niet buitenlandse) private iii sector . En dat is ook de context waarbinnen onze visie rondom virtualisatie is ontstaan.
A B C D E A B C D E A B C D E A B C D E
A J x x x x x x x x x x x x x x x x x x x
Eigen ministerie Informatie B C D J J J J J J x J J x x J x x x x J J x J J x J J x x J x x x x x J x x J x x J x x J x x x x x x x x x x x x x x x x x x
E J J J J J J J J J J J J J J J J J J J J
In bovenstaande tabel zijn de eerste twee richtlijnen samengebracht. De informatie van
Pagina 3 van 5
is, hoe hoger het rubriceringsniveau is waarop de vorm van virtualisatie mag worden toegepast.
De derde richtlijn die we hanteren is: hoe hoger het rubriceringsniveau en/of hoe verder van de bron, hoe minder vormen van virtualisatie zijn toegestaan. De motivatie voor deze richtlijn is eenvoudig: hoe betrouwbaarder de vorm van virtualiseren Veilig Virtualiseren
Ander ministerie Partij buiten NL
4.3. Richtlijn 3 Tot slot wordt de tweede tabel uitgebreid met waar het ons eigenlijk om gaat: wanneer mag op welke wijze virtualisatie worden toegepast? Uitgaande van voorgaande tabel kan per situatie worden aangegeven welke soort van virtualisatie is toegestaan. Hierbij is virtualisatie sowieso niet toegestaan als de informatie niet verwerkt mag worden (dus een X staat in de tabel). In de andere gevallen kunnen bepaalde vormen van virtualisatie worden toegepast.
Systeem
Maar als de informatie binnen een ander ministerie zal worden verwerkt, dan mag informatie van niveau A en B het eigen ministerie niet verlaten en dus ook niet binnen een ander ministerie verwerkt worden. En zo mag informatie van niveau C niet door derde partijen verwerkt worden en informatie van niveau D Nederland niet verlaten.
Eigen Ministerie
Deze tweede tabel is een uitbreiding voor de eerste tabel. Het bovenste gedeelte is exact hetzelfde: informatie mag binnen het eigen ministerie conform de eerste richtlijn worden verwerkt.
Partij binnen NL
het eigen ministerie telkens uitgangspunt en wordt gekeken bij welke partijen deze informatie verwerkt mag worden op welk soort systemen.
A B C D E A B C D E A B C D E A B C D E
A 1xxx x x x x x x x x x x x x x x x x x x x
Eigen ministerie Informatie B C D 1xxx 12xx 123x 1xxx 12xx 123x x 12xx 123x x x 123x x x x x 12xx 123x x 12xx 123x x 12xx 123x x x 123x x x x x x 123x x x 123x x x 123x x x 123x x x x x x x x x x x x x x x x x x x
E 1234 1234 1234 1234 1234 1234 1234 1234 1234 1234 1234 1234 1234 1234 1234 1234 1234 1234 1234 1234
In bovenstaande tabel is de derde richtlijn toegepast op de tweede tabel. De derde tabel is hetzelfde als de voorgaande tabel, maar elke J is nu telkens uitgesplitst in vier cijfers, voor de vier lagen waarin virtualisatie mag worden toegepast. Zo staat 12xx voor: virtualisatie op niveau 1 en 2 (netwerk en storage) zijn toegestaan en virtualisatie op niveau 3 en 4 (platform en applicatie) zijn niet toegestaan. In de tabel is het resultaat van de drie richtlijnen te lezen. Zo mag informatie van het eigen ministerie op het hoogste niveau (A) alleen op eigen systemen worden verwerkt, dat Ir. Sander Nieuwenhuis & Matthijs Claessen BPM
beschermd is op het hoogste niveau (A). Hierbij zou alleen virtualisatie van netwerken mogen worden toegepast (1xxx). Ander voorbeeld is dat informatie van niveau C binnen het eigen ministerie en binnen andere ministeries mag worden verwerkt op systemen van niveau C of hoger. En hierbij mag zowel netwerk als storage gevirtualiseerd worden (12xx).
5. Discussie Dit document bevat geen reguliere regelgeving, maar een visie op de wijze waarop de regelgeving rondom virtualisatie zou kunnen worden vormgegeven. Op deze visie zijn natuurlijk wel wat zaken aan te merken, maar de auteurs willen het denken een duw in de goede richting geven, zodat beleidsmakers en uitvoerenden binnen de Rijksoverheid (en wellicht ook daarbuiten) weloverwogen beslissingen op het gebied van virtualisatie kunnen nemen. En dat lijkt ons nodig, niet alleen vanwege het toenemend aantal publiekprivate samenwerkingen (PPS-en), maar ook bijvoorbeeld vanwege de opkomst van cloudcomputing. 5.1. Informatie van anderen De derde tabel geeft aan hoe op welke wijze een ministerie haar informatie bij anderen mag onderbrengen, en welke mate van virtualisatie daarbij mag worden gehanteerd. Op een vergelijkbare wijze kan er – met behulp van de gepresenteerde richtlijnen – ook een tabel worden opgesteld, waarin wordt aangegeven op welke wijze een ministerie moet omgaan
Pagina 4 van 5
met informatie van anderen (die wordt verwerkt op haar eigen systemen). Hoewel het vaak niet de kerntaak is van een ministerie, is het waarschijnlijk dat in het kader van schaalvergroting gemeenschappelijke diensten over meerdere ministeries worden gehost binnen een enkel systeem. Vandaar dat een dergelijke tabel ook interessant is (denk aan de EASI programma’s, of het voornemen om binnen de Rijksoverheid de tientallen datacenters te consolideren naar enkele datacenters). 5.2. Technische veiligheid De gekozen indeling van de niveaus waarop gevirtualiseerd kan worden is niet uitgebreid onderzocht voor dit paper. Op basis van ervaring is deze indeling ontstaan. Maar de technologische ontwikkelingen gaan snel. Het gebruik van gevirtualiseerde platformen begint gemeengoed te worden. En dat betekent dat de technologie ook steeds meer als veilig wordt gezien. Misschien ondertussen wel bijna net zo veilig als het virtualiseren van storage of zelfs netwerken. Of dit ook daadwerkelijk technisch te onderbouwen is, is voor dit paper niet v diepgravend onderzocht . Wat onafhankelijk van de veiligheid van de techniek en de implementatie blijft staan is onze hypothese ‘hoe dichter bij de eindgebruiker, hoe minder veilig’, zoals uiteengezet in hoofdstuk 2. 5.3. Informatie op systemen Via richtlijn 1 is het strikt genomen mogelijk om op een systeem dat beveiligd is op niveau A informatie te verwerken van niveau E. In de Veilig Virtualiseren
praktijk zal dat alleen voorkomen met informatie van niveau E dat direct te maken heeft of nodig is op het systeem dat beveiligd is op niveau A. Dergelijke informatie zou tijdsinformatie kunnen zijn: deze informatie is niet gerubriceerd, maar wordt wel op het systeem gebruikt (bijvoorbeeld voor synchrone logging). Wat in de praktijk zelden gebeurd is dat de menukaarten van de kantine worden geprint vanaf een systeem dat beveiligd is op niveau A. Simpelweg omdat er dan teveel mensen met het hoog beveiligde systeem gaan werken en daarmee het risico wordt verhoogd dat (ondanks alle beveiliging) hoog gerubriceerde informatie van niveau A bekend raakt bij mensen die daar niets mee te maken hebben. vi Dus in theorie is richtlijn 1 in orde , maar in de praktijk wordt laag gerubriceerde informatie alleen op een hoog beveiligd systeem verwerkt als daar noodzaak toe is (“need-to-know”).
6. Nawoord De auteurs hebben elkaar gevonden via een probleem dat speelde bij Logius en waar de betrokkenen vanuit hun vakgebied ook al tegenaan gelopen waren. Dit paper is het resultaat van een paar brainstormsessies en moet ook in deze context gelezen worden: een eerst aanzet tot regelgeving rondom virtualisatie. Maar wel met voldoende basis in de bestaande regelgeving en in huidige praktijk om reëel te zijn. Het gedachtegoed in dit paper is vrij te gebruiken, onder voorwaarde van verwijzing naar dit paper en de auteurs. Sander Ir. Sander Nieuwenhuis & Matthijs Claessen BPM
Nieuwenhuis is security consultant bij HSS en heeft onder meer jarenlange ervaring met informatiebeveiliging binnen het Ministerie van Defensie en diverse multinationals. Matthijs Claessen is projectmanager bij Logius en heeft in die rol dagelijks te maken met keuzes op het gebied van informatiebeveiliging. Dit paper is mede tot stand gekomen met de inhoudelijke bijdragen van Raymond Groenewoud (senior consultant bij Logica) en Jeroen Zonneberg (security consultant bij Ordina). Allen zijn te benaderen via de e-mail adressen gegeven op de eerste pagina van dit paper.
i Voor ICT-ers onder de lezers: “naarmate men omhoog gaat in de OSI lagen”. ii Het VIR-BI gaat worden opgevolgd door het VIR-GI, maar voor dit paper is nog naar het VIR-BI gekeken. iii En waarschijnlijk is er ook vanuit juridisch oogpunt een goede case: buitenlandse partijen hebben eigen wet- en regelgeving, waarin de veiligheid van de Nederlandse gegevens wel eens niet geborgd zou kunnen zijn. iv “the code is more what you'd call ‘guidelines’ than actual rules”, Captain Barbossa [Pirates of the Caribbean: The Curse of the Black Pearl, 2003]. In dit paper geven we een voorzet voor de regels; richtlijnen dus ;-) v Een onderzoek naar de technische gevaren wordt wel ten harte wordt aanbevolen overigens. Dit zou een boel koudwatervrees op het gebied van virtualisatie kunnen wegnemen. vi Denk hierbij aan The Red Book van het Amerikaanse Derpartment of Defence, het Bell-LaPadula model of het Biba model die alleen write up, read down voorschrijven.
Pagina 5 van 5