Använda grundläggande säkerhet designprinciper att designa eller utvärdera säkerhetsprodukter

Använda grundläggande säkerhet designprinciper att designa eller utvärdera säkerhetsprodukter

Trots år av forskning och utveckling, har det inte varit möjligt att utveckla design och genomförande säkerhetstekniker som systematiskt utesluta säkerhetsbrister och förhindra alla obehöriga åtgärder. I avsaknad av sådan idiotsäker teknik är det bra att ha en uppsättning allmänt överenskomna principer som kan vägleda utvecklingen av skydds-mekanismer. Åtta design principer föreslås 1975 av Jerome Saltzer och Michael Schroeder av universitetar av Virginia har motstått tidens tand och är fortfarande idag i stor utsträckning betraktas som grundläggande principer för någon säkert design. Så låt oss titta på dem.

Ekonomin av mekanism

Denna princip säger att utformningen av skyddsåtgärder i både hårdvara och mjukvara bör vara så enkel och liten som möjligt. Motivationen för denna princip är att relativt enkel, liten design är lättare att testa och verifiera grundligt. Med en komplex design finns det många fler möjligheter för en motståndare att upptäcka subtila brister att utnyttja som kan vara svåra att upptäcka före tid. Ju mer komplex mekanism, desto mer sannolikt det kan äga exploaterbart brister. Enkla mekanismer tenderar att ha färre exploaterbart brister och kräver mindre underhåll. Vidare, eftersom konfigurationsfrågor förenklas, uppdaterar eller ersätter en enkel mekanism blir en mindre intensiv process. I praktiken är det kanske svåraste principen att hedra. Det finns en konstant efterfrågan på nya funktioner i både hårdvara och mjukvara, komplicerande säkerhet design uppgiften. Det bästa som kan göras är att hålla denna princip i åtanke under systemdesign att försöka eliminera onödig komplexitet.

Felsäker Defaults

Denna princip säger att tillgång beslut bör grundas på tillstånd snarare än undantag. Det vill säga standard situationen är bristande tillgång och skyddssystemet identifierar villkor under vilka tillträde är tillåten. Denna metod ställer ut en bättre felmoder än den alternativa metoden, där standard är att tillåta åtkomst. En design eller genomförandet misstag i en mekanism som ger uttryckligt tillstånd tenderar att misslyckas genom att vägra tillstånd, en trygg situation som snabbt kan upptäckas. Å andra sidan, tenderar en design eller genomförandet misstag i en mekanism som uttryckligen utesluter tillgång att misslyckas genom att tillåta åtkomst, ett misslyckande som länge kan gå obemärkt förbi vid normal användning. Till exempel de flesta filsystem tillgång som arbetar på denna princip och praktiskt taget alla skyddade tjänster på klient/server-system fungerar på detta sätt.

Komplett medling

Denna princip säger att varje tillgång måste kontrolleras mot tillträde kontrollmekanismen. System skulle inte lita på tillgång beslut Hämtad från en cache. I ett system för att arbeta kontinuerligt, kräver denna princip att om tillgång beslut är ihågkommen för framtida bruk, noggrann hänsyn tas till hur ändringar i myndigheten sprids i sådana lokala minnen. Filsystem tillgång ser ut att ge ett exempel på ett system som överensstämmer med denna princip. Dock är, när en användare har öppnat en fil, ingen kontroll gjord att se behörigheter förändring. För att fullt ut genomföra komplett medling, varje gång en användare läser ett fält eller en post i en fil eller ett dataobjekt i en databas, måste systemet ha en åtkomstkontroll. Denna resurskrävande metod används sällan

Öppen Design

Denna princip säger att utformningen av en säkerhetsmekanism bör vara öppna i stället för hemlighet. Till exempel även krypteringsnycklar måste vara hemliga, bör krypteringsalgoritmer vara öppna för offentlig granskning. Algoritmerna kan sedan ses av många experter och användare kan därför ha högt förtroende i dem. Detta är filosofin bakom National Institute of Standards and Technology (NIST) programmet för standardisering kryptering och hash-algoritmer, och har lett till utbredd antagandet av NIST-godkända algoritmer.

Separation av privilegium

Denna princip säger kan definieras som en praxis i vilka flera privilegium attribut krävs för att få tillträde till en begränsad resurs. Ett bra exempel på detta är inbegrips användarautentisering, som kräver användning av flera tekniker, till exempel ett lösenord och ett smartkort, tillåta en användare. Benämna används också nu någon teknik där ett program är uppdelad i delar som är begränsade till specifika privilegierar de behöver för att utföra en specifik uppgift. Detta används för att minska den potentiella skadan på en dator säkerhet attack. Ett exempel på denna senare tolkning av principen är att ta bort hög privilegium verksamhet till en annan process och kör processen med högre privilegier krävs för att utföra sina uppgifter. Dagliga gränssnitt körs i en lägre privilegierade process

Minsta privilegium

Denna princip säger att varje process och varje användare av systemet bör fungera med minst uppsättning privilegier krävs för att utföra uppgiften. Ett bra exempel på användning av denna princip är rollbaserad åtkomstkontroll. Säkerhetsprincipen systemet kan identifiera och definiera de olika rollerna för användare eller processer. Varje roll tilldelas endast de behörigheter som krävs för att utföra sina funktioner. Varje behörighet anger en tillåtna åtkomst till en viss resurs (såsom Läs- och skrivbehörighet till en angiven fil eller katalog, ansluta tillgång till en viss värddator och port, etc.). Om ett tillstånd beviljas uttryckligen, bör den användare eller process inte att kunna komma åt den skyddade resursen. Mer allmänt, alla passersystem bör ge varje användare endast de privilegier som är auktoriserade för användaren. Det finns också en tidsmässig aspekt till principen om minsta privilegium. Till exempel bör system-program eller administratörer som har särskilda privilegier ha dessa privilegier bara när det behövs; När de gör ordinarie verksamhet skulle privilegier återkallas. Lämnar dem på plats bara öppnar dörren för olyckor.

Minst vanligt mekanism

Denna princip säger att designen bör minimera de funktioner som delas av olika användare, vilket ger ömsesidig säkerhet. Denna princip bidrar till att minska antalet oavsiktliga kommunikationsvägar och minskar mängden av maskin- och programvara som alla användare är beroende, vilket gör det lättare att kontrollera om det finns några oönskade säkerhetsaspekter.

Psykologiska godtagbarhet

Denna princip innebär att säkerhetsmekanismerna inte bör stör onödigt arbete användare, medan samtidigt tillgodose behoven hos dem som auktoriserar åtkomst. Om säkerhetsmekanismer hindra användbarhet eller tillgänglighet av resurser, kan sedan användare välja för att stänga av dessa mekanismer. Om möjligt bör säkerhetsmekanismer vara transparent för användare av systemet eller på de flesta införa minimal obstruktion. Förutom att inte vara påträngande eller betungande, måste säkerhetsförfaranden återspegla användarens mentala modell för skydd. Om förfaranden som skydd inte vettigt att användaren eller om användaren måste översätta hans bild av skydd i ett väsentligen annat protokoll, användaren kommer sannolikt att göra fel.

Mer säkerhet designprinciper

Som konst och vetenskap till computer security har utvecklats, har nya principer för informationssäkerhet definierats. De nationella centra för akademisk excellens i Information Assurance/Cyber Defense (IA/CD), som är gemensamt sponsrad av den amerikanska National Security Agency och U. S. Department of Homeland Security, har utvecklat en lista över 13 säkerhet designprinciper som bör läras ut i en cybersäkerhet läroplan. Åtta av dessa principer är de klassiska designprinciper diskuteras här. NSA/DHS har förstärkt denna lista med 5 nya principer, som vi diskuterar i en följeslagare artikel: Moderna säkerhet Design principer hjälp i Design och utvärdering.

Om du skapar en trygghet produkt, eller utvärderar produkter för att göra ett köp val, är dessa klassiska säkerhet designprinciper oumbärlig. Du kan ha mycket större förtroende i någon säkerhetsfunktion, funktion, protokoll eller system som har utformats och genomförts i överensstämmelse med denna principer.