Wat is FIPS 140-2-naleving?
Als u voor uw werk contact moet hebben met IT van de Amerikaanse overheid, of hardware- en / of softwareoplossingen produceren die u hoopt te leveren aan de Amerikaanse overheid, heeft u waarschijnlijk wel eens gehoord van FIPS 140-2-compliance, maar wat betekent het om FIPS-compliant te zijn en moet het voor u van belang zijn?
Waar staat FIPS voor?
Het acroniem “FIPS” verwijst naar de “Federal Information Processing Standards”. De FIPS 140-serie zijn computerbeveiligingsnormen die zijn opgesteld door het National Institute of Standards & Technologie (NIST) voor de Amerikaanse overheid.
Verklarende woordenlijst
De FIPS 140-2-nalevingsstandaard heeft veel te maken met coderingssleutels en fysieke bescherming ervan. Voor degenen die willen begrijpen wat dit allemaal betekent, maar zelf geen cryptografische professionals zijn, volgt hier een uitsplitsing van enkele essentiële termen.
- Cryptologie – houdt zich bezig met onderzoek en ontwikkeling van veilige communicatiemethoden, waaronder de ontwikkeling en vooruitgang van codering en andere methoden om gegevens privé en veilig te houden
- Cryptografische sleutel – Een reeks tekens in platte tekst die door een coderingsalgoritme wordt gebruikt om tekst te coderen of decoderen.
- Cryptografische module – Een apparaat dat codering, decodering, digitale handtekeningen, gebruikersauthenticatie en het genereren van willekeurige getallen afhandelt
- Critical Security Parameter (CSP) – Volgens de NIST-woordenlijst bevatten CSPs beveiligingsgerelateerde informatie waarvan de openbaarmaking of wijziging de beveiliging van een cryptografische module
- Common Criteria (CC) – Ook bekend als de Common Criteria for Information Technology Security Evaluation. Dient als de technische basis voor de Common Criteria Recognition Arrangement (CCRA), een internationale overeenkomst die ervoor zorgt dat beveiligingsproducten adequaat worden getest door onafhankelijke laboratoria met een licentie.
- Encryptie – Het proces waarbij een bericht of bestand wordt gecodeerd, doorgaans met een algoritme ontworpen om onpraktisch te zijn voor reverse engineering, zodat alleen geautoriseerde partijen het kunnen bekijken.
- Platte tekst – Tekst die niet is gehasht of versluierd door een versleutelingsalgoritme. Elke toevallige toeschouwer kan onbeveiligde en / of niet-versleutelde platte tekst bekijken en lezen.
Wat is de FIPS 140-serie?
FIPS 140 is de reeks vereisten en standaarden voor cryptografische modules voor zowel software- als hardwarecomponenten voor gebruik door Amerikaanse overheidsdiensten en -agentschappen. FIPS 140-2 is de tweede en huidige (vanaf de publicatiedatum van deze blog) set FIPS 140-standaarden uitgegeven door NIST. FIPS 140-2, uitgebracht op 25 mei 2001, breidt uit op FIPS 140-1 (uitgegeven op 11 januari 1994), maakt gebruik van Common Criteria (CC) Evaluation Assurance Levels (EAL) om het beveiligingsniveau te bepalen, en beschouwt feedback van de gemeenschap als nieuwe IT-ontwikkelingen en technologieën sinds 1994.
Het is belangrijk op te merken dat hoewel deze standaarden betrekking hebben op cryptografische en beveiligingsstandaarden voor zowel hardware als software, de naleving van FIPS 140-2 door een product geen garantie is voor veiligheid. FIPS 140-2 is alleen bedoeld om van toepassing te zijn op cryptografische modules die interactie hebben met werkbelastingen die gevoelige maar niet-geclassificeerde (SBU) informatie beheren.
Wat zijn de evaluatieverzekeringsniveaus?
Common Criteria stelt zeven ( 7) verschillende Evaluation Assurance Levels (EAL) met de toepasselijke naam EAL1-EAL7. Het is ook gebruikelijk om een + naast een bepaalde EAL te zien (bijv. EAL5 +) om aan te geven dat een bepaald apparaat aan bepaalde vereisten voldoet die verder gaan dan het minimum voor een bepaalde EAL. Aangezien het hoogste niveau van FIPS 140-2 alleen EAL4 vereist, zal alleen EAL1-EAL4 bespreken in deze blog.
- EAL1: bedoeld voor evaluatiedoelen (TOE) waar bedreigingen voor de veiligheid niet als ernstig worden beschouwd, maar er behoefte is aan vertrouwen in de geïmplementeerde beveiliging werkt zoals bedoeld. EAL1 is waardevol ter ondersteuning van de bewering dat een bepaalde organisatie de nodige zorg heeft besteed aan de bescherming van persoonlijke informatie.
- EAL2: ideaal voor producten die een redelijke zekerheid van beveiliging nodig hebben wanneer het ontwikkelingsrecord voor een TOE is niet beschikbaar, zoals bij reeds lang bestaande IT-omgevingen.
- EAL3: ontworpen om een gematigd niveau van gegarandeerde beveiliging te bieden. EAL3 kijkt dieper naar de TOE, inclusief de ontwikkeling ervan. Dit niveau is ideaal voor organisaties met solide beveiligingstechnische praktijken ingebakken bij het ontwerp n-niveau en die niet verwachten de TOE significant opnieuw te moeten ontwerpen
- EAL4: het hoogste niveau dat economisch haalbaar is om achteraf aan te passen aan een bestaande productlijn (dat wil zeggen, het testen en opnieuw ontwerpen van producten die niet zijn gebouwd met hogere EALs in gedachten, zal waarschijnlijk te duur en tijdrovend zijn). EAL4 is ontworpen om maximale beveiligingsgarantie te bieden op basis van best practices voor ontwikkeling.
Wat zijn de verschillende niveaus van FIPS 140-2?
De FIPS 140-2-publicatie stelt vier verschillende beveiligingsniveaus.Level 1 heeft het laagste beveiligingsniveau, terwijl Level 4 het hoogste beveiligingsniveau biedt.
FIPS 140-2 Level 1
Het laagste beveiligingsniveau dat is gespecificeerd voor een cryptografische module. Beveiligingsniveau 1 vereist geen fysieke beveiligingsmechanismen die verder gaan dan de basisvereisten voor componenten van productiekwaliteit en maakt het mogelijk om een cryptografische module uit te voeren op een computer voor algemeen gebruik met een niet-geëvalueerd besturingssysteem.
Een voorbeeld van een Beveiligingsniveau 1 cryptografische module is een coderingsbord op een personal computer (pc).
FIPS 140-2 niveau 2
Beveiligingsniveau 2 breidt uit op beveiligingsniveau 1 door drie hoofdvereisten toe te voegen:
- Fraudebestendig op cryptografische modules: dit kan onder meer fraudebestendige coatings, zegels of krasvaste sloten zijn. Fraudebestendige maatregelen moeten zodanig worden toegepast dat verzegelingen en / of coatings moeten worden verbroken om fysieke toegang te krijgen tot de cryptografische sleutels in platte tekst en kritische beveiligingsparameters (CSPs).
- Op rollen gebaseerde authenticatie: de minimumvereiste voor beveiligingsniveau 2 stelt dat een bepaalde gebruiker zijn specifieke rol en autorisatieniveau moet laten verifiëren door de cryptografische module.
- Besturingssysteemvereisten: beveiligingsniveau 2 maakt het mogelijk dat een cryptografische module wordt uitgevoerd voor een algemeen doel Pc die gebruikmaakt van een goedgekeurd of geëvalueerd vertrouwd besturingssysteem. Besturingssystemen moeten worden geëvalueerd op het Common Criteria (CC) evaluatieborgingsniveau EAL2 of hoger. Raadpleeg voor meer informatie Paragraaf 1.2 van de FIPS 140-2-publicatie.
FIPS 140-2 Level 3
De beveiligingseisen die zijn vastgesteld door Beveiligingsniveau 3 zijn een uitbreiding op die van Level 2 op vier belangrijke gebieden:
- Inbraakpreventie: verder gaan dan het fraudebewijs geïmplementeerd in beveiligingsniveau 2, vereist beveiligingsniveau 3 fysieke beveiligingsmechanismen die zijn ontworpen om te voorkomen dat een indringer toegang krijgt tot CSPs binnen de cryptografische module. Deze mechanismen zijn bedoeld om een grote kans te hebben om pogingen tot fysieke toegang tot, manipulatie of gebruik van een cryptografische module zonder autorisatie te detecteren en erop te reageren. Voorbeelden van mechanismen zijn onder meer sterke behuizingen en schakelingen die zijn ontworpen om CSPs in platte tekst op nul te zetten (wissen) wanneer met een module wordt geknoeid.
- Identiteitsgebaseerde authenticatie: een meer gedetailleerde authenticatiemethode, identiteitsgebaseerde authenticatie verbetert op rolgebaseerde authenticatievereiste in beveiligingsniveau 2. Dit wordt bereikt door de identiteit van een bepaalde gebruiker te verifiëren in plaats van de rol van die gebruiker te verifiëren. Een voorbeeld van het verschil is een netwerk dat specifieke gebruikersaanmeldingen vereist in plaats van een netwerk dat algemeen gebruik of gastaccounts plus een generiek beheerdersaccount heeft.
- Fysieke (of logische) scheiding: om te voldoen aan met beveiligingsniveau 3 moet de invoer en / of uitvoer van CSPs in platte tekst worden uitgevoerd met behulp van poorten die fysiek (of interfaces logisch gescheiden, in een virtuele omgeving) gescheiden zijn van andere poorten. CSPs in platte tekst kunnen alleen worden ingevoerd in of uitgevoerd vanuit de cryptografische module via een insluitend of tussenliggend systeem als ze in een gecodeerde vorm zijn.
- Vereisten voor het besturingssysteem: net als bij beveiligingsniveau 2, staat beveiligingsniveau 3 een cryptografische module die moet worden uitgevoerd op een pc voor algemeen gebruik met een besturingssysteem dat aan de minimumvereisten voldoet. De eisen voor beveiligingsniveau 3 zijn strenger dan niveau 2 en omvatten een CC evaluatie betrouwbaarheidsniveau EAL3 of hoger. Meer informatie over de besturingssysteemvereisten van beveiligingsniveau 3 vindt u in sectie 1.3 van de FIPS 140-2-publicatie.
FIPS 140-2 niveau 4
Beveiligingsniveau 4 voorziet in de hoogste beveiligingsniveau van de vier FIPS 140-2-beveiligingsniveaus en is ideaal voor cryptografische modules die in fysiek onbeveiligde omgevingen werken. Om een idee te krijgen van wat een fysiek onbeschermde omgeving is, kunt u overwegen waar overheidsinformatie of -communicatie kan worden verwerkt, opgeslagen of doorgelaten, zoals satellieten en onbemande luchtvaartuigen. De bedoeling van beveiligingsniveau 4 is dat fysieke beveiligingsmechanismen de cryptografische module volledig omhullen en beschermen tegen alle onbevoegde pogingen om er fysiek toegang toe te krijgen. Mechanismen moeten een zeer hoge waarschijnlijkheid bieden om een indringing te detecteren en moeten zijn ontworpen om onmiddellijk alle CSPs in platte tekst op nul te stellen in het geval dat een indringing wordt gedetecteerd.
Om te voldoen aan FIPS 140-2 Level 4, een bepaalde cryptografische De module moet ook worden beschermd tegen omgevingsfactoren die de module buiten zijn normale werkbereik zouden kunnen duwen. Het is gebruikelijk dat potentiële indringers een cryptografische module buiten de normale spanning en temperatuur duwen om de beveiliging van de module in gevaar te brengen.Voorbeelden zijn onder meer hyperverhitting of bevriezing van de modulecontainer in een poging om deze broos te maken (denk aan het populaire filmmotief van een spion die vloeibare stikstof gebruikt om een slot te bevriezen en te breken).
Milieubescherming kan in de vorm van functies die CSPs op nul stellen als de cryptografische module fluctuaties detecteert buiten het normale werkingsbereik. Gebruikmakend van het bovenstaande voorbeeld, als de spion in de film een slot op een cryptografische module zou bevriezen om het te breken, zouden de milieubeschermingsmaatregelen detecteren dat het slot wordt blootgesteld aan temperaturen onder een ingestelde drempel en de module op nul zetten. Dit maakt het onbruikbaar voor de spion, zelfs als de module uiteindelijk wordt verkregen.
Als alternatief kan aan de milieubeschermingsvereiste worden voldaan door een redelijke garantie dat fluctuaties buiten het normale werkingsbereik de beveiliging van de module niet in gevaar brengen.
Net als beveiligingsniveau 2 en 3 vereist beveiligingsniveau 4 ook een besturingssysteem dat voldoet aan een bepaald betrouwbaarheidsniveau voor CC-evaluatie. Om een cryptografische module FIPS 140-2 Level 4-compatibel te maken, moet het besturingssysteem waarop het wordt uitgevoerd een CC-evaluatie van EAL4 of hoger ontvangen.
FIPS 140-2-gecertificeerd worden
Om een bepaalde cryptografische module te valideren als compatibel met FIPS 140-2, moet een organisatie die module indienen bij het Cryptographic Module Validation Program (CMVP). De CMVP is een gezamenlijke inspanning van de NIST en de Communications Security Establishment (CSE) voor de Canadese overheid.
Om hun module te laten evalueren door de CMVP, moet een organisatie de module indienen bij een geaccrediteerde Cryptographic Module Testing Laboratorium. Geaccrediteerde laboratoria zijn externe laboratoria die zijn gecertificeerd door het National Voluntary Laboratory Accreditation Program (NVLAP).
FIPS 140-2-certificering behouden
FIPS 140-2-certificering kan lang duren en een tijdrovend proces, dat van begin tot eind gewoonlijk enkele maanden tot meer dan een jaar in beslag neemt. Bovendien moet een module opnieuw worden geëvalueerd voor elke wijziging die in de software wordt aangebracht, hoe klein ook. Als er een probleem wordt ontdekt in een FIPS-compatibele module, verliest de oplossing de FIPS-certificering totdat deze opnieuw is beoordeeld en gecertificeerd. Gedurende deze periode zal de organisatie hun module niet kunnen leveren aan leveranciers en instanties die de norm nodig hebben.
Kritiek op FIPS 140-2
Hoewel gevalideerd als FIPS 140-2-compatibel is een essentieel onderdeel van het werken met IT van de Amerikaanse overheid, het validatieproces leidt wel tot enkele geldige kritiek op FIPS 140-2.
Het belangrijkste punt van kritiek heeft betrekking op het langdurige validatieproces. Vanwege het maanden tot jaar durende validatieproces en het feit dat een organisatie hun product voor elke wijziging opnieuw moet valideren, hoe klein ook, zijn veel bedrijven terughoudend om software bij te werken of te upgraden, zelfs als er een bug wordt gedetecteerd. Dit kan resulteren in achterstand op kritieke updates en kan organisaties zelfs stimuleren om kleine bugs in hun code te verbergen.
Organisaties hebben bugs en kwetsbaarheden in hun software ontdekt, maar kregen te maken met moeilijkheden en een onduidelijk proces om snel een fix gevalideerd als FIPS 140-2-compatibel. In één voorbeeld ontdekte een organisatie een kwetsbaarheid in een gecertificeerde module en had de patch dezelfde dag klaar voor implementatie, maar kon de patch niet binnen een gepaste tijd worden gevalideerd. Het resultaat was dat de organisatie de kwetsbaarheid in hun software aankondigde en CMVP de FIPS 140-2-validatie van de module vrijwel onmiddellijk introk, waardoor zij en hun klanten in het ongewisse bleven totdat de nieuwe validatie was voltooid.
Wat maakt dit geval vooral opmerkelijk is dat de kwetsbaarheid werd gevonden in een open source-afgeleide van OpenSSL, waarop hun eigen validatie was gebaseerd. Hoewel er verschillende andere propriëtaire validaties waren op basis van dezelfde code, kregen weinigen een herroeping. Dit komt doordat andere organisaties de code enigszins hebben aangepast en opnieuw gevalideerd onder een andere naam, in plaats van gebruik te maken van de code die als open source is geïdentificeerd. Dit verborg effectief de oorsprong van de code en andere bedrijven konden intrekking vermijden als gevolg van een kwetsbaarheid in open source code.
Vragen die u zou moeten stellen
Gezien de kritiek van de FIPS 140-2 validatieproces, moet elke organisatie die wil dat hun cryptografische module door de Amerikaanse overheid wordt gebruikt, de maker van de module een paar belangrijke vragen stellen:
- Wanneer was de laatste keer dat de cryptografische module werd bijgewerkt / gevalideerd?
- Is er een nieuwe versie van de cryptografische module die momenteel wordt gevalideerd?
- Zijn er bekende bugs of kwetsbaarheden in de module of de onderliggende code die mogelijk niet zijn bekendgemaakt?
- Zijn er plannen om de cryptografische module in de nabije toekomst bij te werken en / of opnieuw te valideren?
- Hoe ziet het updateproces / de cadans voor de FIPS-compatibele module eruit?
- Is de cryptografische module getest of gevalideerd buiten de CMVP?
***
Over XMedius
XMedius is een wereldleider op het gebied van zakelijke communicatieoplossingen. De suite van enterprise-grade on-premise en cloudcommunicatieoplossingen stelt bedrijven in staat te profiteren van veilige en uniforme communicatie, en om gevoelige en vertrouwelijke gegevens uit te wisselen die voldoen aan en overtreffen de wettelijke nalevingsvereisten van de industrie. Gevestigd in Montreal (Canada), met kantoren in Seattle (VS) en Parijs (Frankrijk), bedient het bedrijf bedrijven, ondernemingen en dienstverleners via een wereldwijd team van klantgerichte medewerkers. Zijn oplossingen worden wereldwijd ingezet in een aantal sectoren, waaronder onderwijs, financiën, overheid, gezondheidszorg, productie, detailhandel en juridische dienstverlening. Ga voor meer informatie over XMedius en zijn oplossingen naar www.xmedius.com en maak verbinding op LinkedIn en Twitter.