SE523953C2 - System för databehandling av säkerhetskritisk aktivitet - Google Patents
System för databehandling av säkerhetskritisk aktivitetInfo
- Publication number
- SE523953C2 SE523953C2 SE9900051A SE9900051A SE523953C2 SE 523953 C2 SE523953 C2 SE 523953C2 SE 9900051 A SE9900051 A SE 9900051A SE 9900051 A SE9900051 A SE 9900051A SE 523953 C2 SE523953 C2 SE 523953C2
- Authority
- SE
- Sweden
- Prior art keywords
- switch
- resources
- switches
- computer
- safety device
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims description 9
- 230000000694 effects Effects 0.000 title description 21
- 230000004044 response Effects 0.000 claims abstract description 3
- 230000015654 memory Effects 0.000 claims description 32
- 230000009471 action Effects 0.000 claims description 2
- 230000005055 memory storage Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 14
- 230000001010 compromised effect Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 101100016034 Nicotiana tabacum APIC gene Proteins 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 241000699666 Mus <mouse, genus> Species 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000000034 method Methods 0.000 description 2
- 241000699670 Mus sp. Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- ZXQYGBMAQZUVMI-GCMPRSNUSA-N gamma-cyhalothrin Chemical compound CC1(C)[C@@H](\C=C(/Cl)C(F)(F)F)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 ZXQYGBMAQZUVMI-GCMPRSNUSA-N 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 210000000056 organ Anatomy 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/72—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Alarm Systems (AREA)
- Storage Device Security (AREA)
- Mobile Radio Communication Systems (AREA)
Description
25 30 . , . - .- 523 953 .. -i-u tillgängliga nätverket, vilket är öppet för alla inkräktare. Sådana brandväggar filtrerar kommunikationen mellan det lokala nätverket och omvärlden genom att endast tillåta vissa valda tjänster att passera genom. Om andra tjänster efterfrågas kommer passeringen genom brandväggen endast att rnöjliggöras om ett giltigt lösenord framställes.
Kommunikationen når sedan antingen en persondator eller en server inuti det lokala nätverket. Denna säkerhetsåtgärd kommer naturligtvis att öka säkerheten men kommer ändock inte att garantera att de säkerhetskritiska åtgärder utförs på det sätt som användaren avser.
Sårbarheter i implementeringen av de tillåtna, icke-filtrerade, tjänsterna kan tillåta en inkräktare att invadera persondatorn.
En annan möjlig säkerhetsåtgärd är att införa säkerhetsmekanismer i operativsystemet, som att kräva lösenord för tillgång till vissa tjänster.
Huvudanledningen till att de ovan nämnda säkerhetsmekanísmerna inte är helt säkra är att de är mjukvarubaserade. Då mjukvara alltid innehåller buggar, kan de korrumperas, och kan därför komprometteras genom utnyttjade säkerhetshål, illvilliga koder, residenta trojanska hästar och annan mjukvara. Mjukvarubaserade säkerhetslösningar är även för sköra, d v s om operativsystemets säkerhet komprometteras kommer all data och alla applikationer som utförs av denna att också komprometteras.
En annan men liknande infallsvinkel för att öka operativsystemets säkerhet är att bygga så kallade operativsystem med flera nivåer av säkerhet (Multi level security MLS). Sådana system märker objekt enligt en säkerhetsklassificeringskod och definierar regler för hur information tillåts att flöda genom systemet. Denna klassificering av olika säkerhetsnivåer och registerhällandet av vilka användare som har tillgång till olika säkerhetsnivåer och objekt är mycket tidsödande att upprätthålla. Dessutom är inte konventionella persondatorapplikationer kompatibla med MLS-systemens operativsystem, och alla applikationer . ø ~ - -~ 10 15 20 25 30 523 953 u. .nu måste vara skräddarsydda för MLS-systemet. Detta är naturligtvis mycket kostsamt.
En metod för att utföra eller exekvera säkerhetskritiska aktiviteter i en dator beskrivs i WO 98/ 19243 med samma uppfinnare som för föreliggande uppfinning, vilket dokument härvid inkorporeras som referens. Systemet innefattar en säkerhetsanordning som skall anslutas till kommunikationsorganen hos en persondator, såsom en serieport eller PCI-bussen. Säkerhetsanordningen innefattar en processor, minne och kryptoorgan. Vissa valda IO-anordníngar hos datorn, såsom i skärmen, tangentbordet , musen och kortläsaren är anordnade med växlar och kryptoorgan.
Vid vanlig aktivitet (normal mod) är säkerhetsanordningen inte aktiv och datorn fungerar som normalt. Närvaron av säkerhetsanordningen och växlings- och kryptoorganen är transparenta för datorn.
När en säkerhetskritisk aktivitet initieras av en signal från datorns processor, kopplas datorn om till säker behandlingsmod.
Säkerhetsanordningen tar kontroll över de valda användar- IO- anordningarna genom växlings- och kryptoorganen och stänger ute datorns processor från tillgång. Exekveringen av den säkerhetskritiska aktiviteten överförs till säkerhetsanordningen och exekveras med lämplig inblandning av användaren. Data skyddas från datorns processor under överföring mellan säkerhetsanordningen och användarens IO-anordningar.
Säkerhetsanordningen måste vara konstruerad så att exekveringen av den säkerhetskritiska aktiviteten kan utföras säkert utan någon möjlighet för datorns processor att kompromettera exekveringen. Det ovan beskrivna systemet uppfyller detta genom att ha en separat processor, separat programminne, separat dataminne och flera andra anordningar och kontrollorgan separata. . . - . »- 10 15 20 25 30 523 953 Olyckligtvis är detta en dyrbar lösning, då så många funktionella kretsar behöver dupliceras. Det skulle vara att föredra om exempelvis tillgång till delar det existerande PC-minnet kunde avdelas för säkerhetsanordningen. Detta skulle vara en stor kostnadsbesparing, då lämpliga minneskretsar vanligtvis endast tillhandahålles i stora storlekar. Detta skulle även tillåta flexibilitet, då säkerhetsanordningen kunde avdela så mycket minne från det stora PC-minnet som krävs för säkerhetsaktiviteten.
Det finns flera andra resurser i en PC som skulle kunna avdelas från PC'ns normala kontroll och användning, för skyddad användning av säkerhetsanordningen; anordningar på specifika kortplatser på PCI- bussen eller ISA-bussen, hela lagringsanordningar eller sektorer på lagringsanordníngar på en IDE-buss, logiska anordningar på en USB- buss.
Det är viktigt för säkerheten hos säkerhetsanordningen att minimera antalet hårdvarumekanisrner som både datorns processor och säkerhetsanordningen kan kontrollera, då oväntade och farliga interaktioner kan utföras av datorns processor. Ä andra sidan kan vi klart se kostnadsfördelarna som uppstår genom möjligheten för skyddad användning för säkerhetsanordningen av befintliga PC- resurser. Närvaron av säkerhetsanordningen skulle även förorsaka minimala förändringar hos datorns normala mod, av kompatibilitetsorsaker.
SAMMANFATTNING AV UPPFINNINGEN Ändamålet med uppfinningen är att tillhandahålla ett system för att utföra säkerhetskritiska aktiviteter på ett säkert sätt enligt metoden beskriven ovan på ett kostnadseffektivt sätt genom att utnyttja många av minnesorganen och IO-anordningarna som förekommer i en persondator. » . . . ._ 10 15 20 25 30 . u - . .n 523 953 i f " »n .m- Enligt en aspekt av uppfinningen uppnås detta med ett system enligt ingressen, innefattande en säkerhetsanordning som innefattar en processor och signalgeneratorer, ett antal kontrollorgan, härefter benämnda växlar, med signalmottagare anordnade mellan säkerhetsanordningen och de förvalda resurserna, att växlarna innehåller information angående tillgänglighet till och från resurserna, eller delar av resurserna, härefter benämnda resursområden, varvid växeln kontrollerar begäran från datorns processor till resursen eller resursomrädet beroende på informationen som innehålles i växeln, och varvid, som svar på ett anrop från datorns processor eller hanteringsanordningarna, växlarna aktiveras genom att motta en signal från säkerhetsanordningen, vilket möjliggör tillgång för säkerhetsanordningen till och från resurserna eller resursområdena som valts av säkerhetsanordningen, och nekar tillträde för datorns processor till och från resurserna eller resursområdena som valts av säkerhetsanordningen.
Enligt en ytterligare aspekt av uppfinningen kännetecknas denna av att informationen som innehålles i växlarna kontrollerar andra möjliga processorer anordnade i, eller anslutna till, datorn.
Enligt ytterligare en aspekt av uppfinningen kännetecknas denna av att säkerhetsanordningen innefattar en signalgenerator, varvid, när en växel mottar en signal, säkerhetsanordningen är i stånd att ändra informationsinnehållet hos den växeln.
Enligt en annan aspekt av uppfinningen kännetecknas denna av att informationen i växeln möjliggör för växeln att kontrollera vissa delar av minnesorganet som är allokerade att endast vara tillgängliga för säkerhetsanordningen och av att informationen i växeln möjliggör för växeln att kontrollera att vissa resurser är tillgängliga för datorns processor när den inte är i den säkra hanteringsmoden, och endast 10 15 20 25 30 - . ø . n. 523 953 tillgänglig för säkerhetsanordningen när den är i den säkra hanteringsmoden.
Enligt ytterligare en aspekt av uppfinningen kännetecknas denna av att växlarna är hårdvaruväxlar.
Fördelen med systemet enligt uppfinningen är att säkerhetskritiska aktiviteter kan utföras säkert och att utnyttja existerande minnes- och anordningsorgan som redan föreligger i datorn. Genom att arrangera växlarna vid vissa positioner, såsom anslutningspunkter till olika resurser, det faktum att växlarna innehåller information angående tillgänglighet från processorerna vid olika situationer, och genom att kontrollera växlarna med hjälp av säkerhetsanordníngen, har säkerhetsanordningen full kontroll över datorn när en säkerhetskritisk aktivitet skall utföras. Samtidigt tillåter växlarna datorns processor att ha tillgång till vissa resurser som säkerhetsanordningen inte använder.
Säkerhetsanordningen kan välja de lämpliga resurserna, exempelvis endast aktivera de växlar som tillhör de resurser som behövs för den aktuella operationen. Kontrollen av resurserna med hjälp av växlarna möjliggör en konfigurering där vissa minnesområden är allokerade endast för säkerhetsanordníngen, genom vilket det tillförsäkras att inga komprometterade data någonsin kan nå säkerhetssystemet.
Säkerhetsanordningen är även i stånd att ändra informationen som innehålles i växlarna beroende på aktiviteterna som skall utföras, vilket ger en större grad av flexibilitet.
Genom att använda hårdvaruväxlar kan säkerhetssystemet byggas in "från början", d v s till stor del integrerad i datorns hårdvara såsom bryggorna. Allt som allt uppnås ett kostnadseffektivt och säkert system med föreliggande uppfinning. 10 15 20 25 30 . - ~ » .- ut a.. 523 953 Dessa och andra aspekter på, och fördelar med, föreliggande uppfinning kommer att framgå av den detaljerade beskrivningen av en utföringsform och av patentkraven.
KORT BESKRIVNING AV RITNINGSFIGURER I den följande beskrivningen av ett exempel på en utföringsform kommer hänvisning at göras till de medföljande ritningarna, där Fig. 1 visar ett blockdiagram över arkitekturen hos en pentium pro- dator, Fig. 2 visar konfigureringen hos en växel som innefattas i systemet enligt uppfinningen, Fig. 3 visar ett exempel på minneshantering av ett huvudminne i en dator enligt uppfinningen, Fig. 4 visar ett exempel på hantering av en PCI-buss enligt uppfinningen, och Fig. 5 visar ett exempel på hantering av en USB-buss enligt uppfinningen.
DETALJERAD BESKRIVNING AV UTFÖRINGSFORMER I Fig. 1 anger hänvisningssiffran 10 en processorenhet.
Processorenheten är utrustad med ett internt cache-minne på ett konventionellt sätt. I detta avseende skall det noteras att även om en processorenhet visas i Fig. 1 kan ett antal processorer arbeta parallellt.
Processorenheten är sígnalansluten till en Host-buss 12. Till Host- bussen är en Host/ PCI-brygga 14 ansluten, i en del applikationer hänvisad till som North Bridge. I en del applikationer kan denna vara delad i två bryggor, hänvisade till som kompatibilitets- och hjälp- bryggorna. I detta avseende fungerar bryggorna som mellanled vid kommunikationen mellan anordningarna på olika bussar och processorn. Till Host/ PCI-bryggan är ett huvud-DRAM 16 (Dynamic Random Access Memory) anslutet för tillfälliga läs/ skriv-instruktioner till och från processorenheten. Minnet är även anslutet till, och . . . . n. 10 15 20 25 30 . . - - .n u. n.. 523 953 kontrolleras av, två datavägar 17, vilka i sin tur är anslutna till Host/PCI-bryggan och Host-bussen.
En AGP-anslutning 18 (Advanced Graphics Port) är anordnad mellan Host/PCI-bryggan och en skärmkontroller och en monitor 20.
En PCI-buss 22 är ansluten till Host/PCI-bryggan och till PCI-bussen är en E/ ISA-brygga 24 ansluten, i en del applikationer hänvisad till som South bridge. Till E /lSA-bryggan kan ett antal olika bussar anslutas. I Fig. 1 visas ISA-bussen 26 till vilken ett antal kortplatser 28 är anslutna, vilka kortplatser kan användas för ljudkort, nätverkskort och liknande; USB-bussen 30 till vilken exempelvis tangentbord 32, diskettdrive 34, mus 36 och kortläsare 38 är anslutna; IDE-bussen 40 till vilken exempelvis hårddiskar 42 år anslutna, och X-bussen 44. I det fallet med ett multiprocessorsystem, d v s med mer än en processor, är en buss även anordnad mellan E /ISA-bryggan och processorenheten, APIC-bussen (Advanced Programmable Interrupt Controller).
Funktionen hos APIC-bussen är att avbryta begäran från IO- anordníngar till processorerna.
Till PCI-bussen är en säkerhetsanordning 50 ansluten.
Säkerhetsanordningen innefattar en processor 54 i stånd att utföra vissa kommandon, vilka kommer att beskrivas i detalj nedan. Ett ROM- minne 54 är anslutet till processorn. Säkerhetsanordningen är vidare anordnad med signalgeneratorer SGA och SGpM, vars funktion kommer att förklaras nedan. Vid vissa positioner är kontrollorgan, härefter benämnda växlar 60, anordnade i datorns hårdvara. Enligt uppfinningen är en växel anordnad vid anslutningspunkten för huvudminnet till l-Iost/ PCI-bryggan. Andra växlar kan vara anordnade vid anslutníngspunkten mellan bryggorna och bussarna och/ eller olika anordningar hos datorn såsom grafikkortet, tangentbordet, hårddisken och liknande. Lämpligen kan växlarna som är anslutna till olika bussar vara integrerade i bryggorna. Exempelvis för en hårddisk ansluten till . . . . -. 10 15 20 25 30 . . . . .n 523 953 IDE-bussen, är växeln anordnad på E/ ISA-bryggan vid anslutningen av bussen.
Fig. 2 visar ett exempel på en växel inkorporerad i ett system. En växel 60 är ansluten till adress- och operationsledningarna ADR, OP hos en buss. ADR- och OP-ledningarna är vidare anslutna till en "riktare" 68.
Växeln är vidare anordnad med ett antal signalmottagare SRA (ändra, alter), SRpM (källa, source) och SRpM (skyddsmod, protection mode).
Funktionen hos riktaren och signalmottagarna kommer att beskrivas nedan. En möjliggör/ avbryt-ledning 66 är anordnad mellan växeln och ríktaren 68. Riktaren är vidare ansluten till olika resurser eller resursområden 74. I detta avseende skall det förstås att ordet resurser avser anordningar såsom hårddisken, tangentbordet och liknande, och ordet resursområden betyder exempelvis delar av ett minne.
Växeln innehåller en tabell T med adresser till de olika resurserna och en jämförare C vars funktion kommer att beskrivas nedan. Tabellen innehåller även information angående tillgång till de olika resurserna.
Som ett exempel kan resursen vara ett minne. Om datorn körs i normal mod är datorns processor aktiv och säkerhetsanordningens processor är passiv, vilket avkännes av växeln via signalmottagaren SRS som mottar en källsignal. När datorns processor begär tillgång till minnet, kontrolleras adresserna av växeln och källorna till begäran jämförs med källornas signal av jämföraren C. Det finns sedan två scenarier angående tillgången. Antingen är endast en del av minnesområdet, ett resursområde, allokerat till säkerhetsanordningen, vilket specificeras i tabellen T, varvid växeln då nekar datorns processor tillträde till dessa områden, eller så kan datorns processor ha tillträde om den är i normal mod. Beroende på begäran från datorns processor och tillgängligheten som ges av växeln, riktas data- och operationssignaler till och från den begärda resursen eller nekas helt. 10 15 20 25 30 . . . ~ .- 523 953 10 Om en säkerhetskritisk aktivitet begärs, och säkerhetsanordningen begär att systemet går in i en säker behandlingsmod, sänds en signal av säkerhetsanordningen från signalgeneratorn SGPM till signalmottagaren för säker mod SRPM hos växeln. Beroende på informationen i växeln kan tillgången för datorns processor till resurser som kontrolleras växeln ytterligare dras tillbaka när man går in i den säkra behandlingsmetoden. Dessa resurser kommer sedan att endast vara tillgängliga för säkerhetsanordningens processor, enligt informationen i växeln. Växeln kontrollerar, i utföringsformen som visas i Fig. 2, tillgängligheten till de olika resurser 74 med riktaren 68 beroende på begäran via möjliggör/ avbryt-ledningen 66. I en del fall behöver enheten som begär en operation, som nekas av växeln, veta att tillgång nekades.
Därför är en ledning 67 ansluten mellan möjliggör/ avbryt-ledningen 66 och operationsledningarna för att tillhandahålla information som sänds tillbaka till enheten.
Beroende på den säkerhetskritiska aktivitet som skall utföras, kan innehållet i tabellen T hos växeln behöva ändras. Det kan antingen vara så att säkerhetsanordningen inte behöver en viss resurs för aktiviteten och kan tillåta datorns processor att använda den, eller neka datorns processor tillgång till en resurs. I detta fall sänds en signal från en ändra-signal-generator (Alter Signal Generator) SGA hos säkerhetsanordningen till ändra-signal-mottagaren (Alter Signal Receiver) SRA hos vederbörande växel, tillsammans med adresser, operationer och data. Det skall förstås att endast säkerhetsanordningen är i stånd att ändra innehållet i växeln på detta sätt.
Ett exempel på minnestillgång visas i Fig. 3. Här är en växel ansluten till RAM-kontrollerarens funktionsblock 80. Om den är i normal mod fungerar växeln enligt innehållet i tabellen för att tillåta säkerhetsanordningens processor tillgång till minnesområdet allokerat endast till säkerhetsanordningen medan resten av minnesomrädet är tilgängligt för datorns processor. En del minnesområde som är 10 15 20 25 30 » - . - .u »n ..- 525 953 ll tillgängligt i normal mod för datorns processor kan bli allokerade endast till säkerhetsanordníngens processor i säker mod. Växeln hanterar minnesbegäran från olika källor SC och tillåter eller nekar tillträde enligt moden och källan. Till skillnad mot växeln enligt Fig. 2 behövs ingen riktare då det endast finns en källa, DRAM, och växeln möjliggör eller avbryter tillgång via linjerna 66.
Samma huvudsakliga operation som beskrivits ovan kan erhållas med andra typer av resurser såsom skärmkontrolleraren. In normal mod har datorns processor full tillgång till skärmkontrolleraren, men kan nekas tillträde helt i säker mod, för att tillförsäkra att endast "säker" data visas på skärmen.
I exemplet som visas i Fig. 2 aktiveras växeln genom fysiskt separata signaler från SGpM och SGA till SRPM respektive SRA vilket kan erhållas enkelt med multi-linjebussar. Dock behöver fysiskt separata signaler via ledningar inte propageras mellan olika busstyper genom kontrollerare såsom exempelvis North och South bridges. Dessa kontrollerare kan även behöva översätta signalen mellan olika format för olika bussar eller paketformat. Kontrollerarna/ översättarna är företrädesvis anordnade vid anslutningspunkten mellan PCI-bussen och North respektive South bridges. Det skall även förstås att de kan anordnas i växlarna.
Figur 4 visar ett exempel på en växel som kontrollerar PCI-bussen 22. I detta fall är växeln en del av PCI-kontrollerarens funktionsblock 82.
Växeln är inte placerad mellan den begärande källan och resursen.
Istället "övervakar" den PCI-bussen. Om, enligt innehållet i växeln, en begäran för tillgång till en resurs begärs av en källa, som inte är tillåtet, genererar växeln en "illegal" signal via linjen 84 till bussen, vilken därvid nekar tillgång till denna resurs. På samma sätt som ovan sänds signaler av säkerhetsanordningen till växeln för att gå in i en skyddsmod eller för att ändra innehållet i växelns tabell. 10 15 20 25 30 » . » . .u v. o." 523 953 12 En del anordningar som säkerhetsanordningen vill kontrollera i skyddsmod kan vara anslutna till seriella bussar, såsom tangentbord, mus, kortläsare och liknande. I dessa fall, beroende på hur informationen överförs på bussen, kan signalerna från säkerhetsanordningen sändas tillsammans med resten av informationen. Om informationen sänds i paket innehållande adress, operation och data, innehåller en del av paketet signalerna till växeln.
Om å andra sidan informationen delas upp i mindre paket "sub-paket", d v s ett paket innehåller adresser, ett paket innehåller data, och så vidare, innehåller ett paket signalerna till växeln.
Figur 5 visar rett exempel på en växel 60 som kontrollerar en USB- buss. Här är växeln anordnad mellan USB's begäran- och kontroll- funktionsblocket 90. Beroende på begäran från olika källor, och innehållet i växeln och moden, kan växeln tillåta tillgång eller sända en avbrottsbegäran tillbaka till källan.
Ett ytterligare alternativ är att en växel är anordnad vid anslutningen mellan exempelvis E /ISA-bryggan och den seriella bussen och som fungerar på det sätt som beskrivits ovan. På detta sätt krävs endast en växel för att kontrollera och möjliggöra/ omöjliggöra tillgång till ett antal anordning på bussen, beroende på information i växeln.
Växlarna kan även innehålla kryptoorgan för att kryptera och dekryptera data från och till olika anordningar och säkerhetsanordningens processor. Vi kommer inte vidare att diskutera fallet med kommunikation mellan säkerhetsanordningen och en anordning skyddad med kryptoorgan. Hänvisning görs till WO 98/ 19243 för mer information angående detta.
Under normal operation har huvudprocessorn tillgång till och kommunicerar med de flesta anordningarna och minnena hos datorn via olika bussar och bryggor, d v s normal mod. Under normal 10 15 20 25 30 ~ - - . .- 523 953 13 operation, kontrollerar och nekar växlarna tillgång till de resurser som endast är allokerade till säkerhetsanordningen, såsom specificerats i växlarna.
När en säkerhetskritisk aktivitet är begärd, som kan ha initierats av processorn eller en IO anordning, aktiveras säkerhetsanordningen.
Beroende på typen av säkerhetskritisk aktivitet överförs viss information och program från säkerhetsanordningens ROM till dess processor för att utföra vissa uppgifter innan den säkerhetskritiska aktiviteten påbörjas, d v s att sätta datorn i en säker behandlingsmod.
Signaler från SGPM genereras sedan till de växlar som berörs av den aktuella säkerhetskritiska aktiviteten.
Ett exempel är om den säkerhetskritiska aktiviteten kräver temporärt minnesutrymme, skickas en PM-signal av säkerhetsanordningens processor till växeln anordnad vid anslutningen till huvudminnet. För att tíllförsäkra att informationen som skrivs och läses i huvudminnet under den säkerhetskritiska aktiviteten in komprometteras, kan en viss del av huvudminnet vara allokerat endast till säkerhetsanordningens processor.
Ett ytterligare exempel är om säkerhetsanordningen kräver ett stort program eller stora volymer information för att utföra en säkerhetskritisk aktivitet. I detta fall kan en växel i anslutningen till exempelvis IDE-bussen aktiveras. Såsom med huvudminnet, kan vissa områden på hårddisken vara allokerade endast till säkerhetsanordningen. Denna åtgärd tillförsäkrar att endast säkerhetsanordningen kan ha tillgång till och leverera data från och till detta område på hårddisken, vilket tillförsäkrar att informationen ej kan komprometteras.
Enligt uppñnningen kan växlar byggas in på lämpliga platser och för olika anordningar, interna såväl som IO-anordningar. Funktionen hos 10 15 20 25 30 . - ~ - .n 523 953 -. n.- 14 växeln kan vara olika typer beroende på typen av anordning och dess funktion, såsom tillgång endast av säkerhetsanordningen, tillgång endast av datorns processor eller tillgång av säkerhetsanordningen om datorn är i säker behandlingsmod.
Det skall noteras att även om datorns processor har nämnts ovan som den primära källan för begäran av olika källor, bortsett från säkerhetsanordningen, kan det förekomma andra processorer i en modern dator då utformningen tenderar att bli mer och mer distribuerad. Det kan exempelvis finnas PCI-kort som innehåller processorer som är i stånd att skriva/läsa till någon del av minnet.
Dessutom kan processorenheten hos datorn innehålla mer än en processor, varvid det är viktigt att en växel är anordnad vid anslutningen mellan APIC-bussen och Host/ PCI-bryggan, då APIC- bussen hanterar många avbrottsbegäran.
Det är därför viktigt att säkerhetsanordningen är i stånd att kontrollera fler källor än datorns processor för att förhindra en attackerare från att kringgå säkerhetssystemet genom att ändra innehållet hos PCI-kortets operativsystem. En funktion hos säkerhetsanordningen kan vara en plug-and-playfunktion, d v s att säkerhetsanordningen letar upp och identifierar alla källor anslutna till datorn för att kunna kontrollera dem. På detta sätt erhålles en distribuerad MMU-liknande funktion, vilken ger en större robusthet mot säkerhetskryphål. Dock skall skrivande av information till växlarna alltid endast kunna utföras av säkerhetsanordningens processor, och allokeringsbegäran av resurser måste sändas till säkerhetsanordningens processor för godkännande.
I detta avseende skall noteras att informationen som innehålles i de olika växlarna, såsom adresser och tillgänglighet för vilken processor och i vilka situationer, är anordnade beroende på den aktuella resursen -erna som den aktuella växeln kontrollerar. Det skall även noteras att . . . . _. 10 15 . . . - u» 523 953 a. an: 15 säkerhetsanordningen aktiverar olika växlar till olika resurser beroende på den aktuella säkerhetskritiska aktiviteten som skall utföras.
Det är klart att avbrottssignaler som genereras av allokerade resurser äterförs av växeln till säkerhetsanordningens processor. Stödfunktioner såsom DMA-funktioner och timers hanteras på liknande sätt och deras operation mäste i en del fall kontrolleras av en växelfunktion för att förhindra att de används illegalt av datorns processor. Dessa problem är väl kända för en fackman.
Det skall även noteras att datorns konfiguration beskriven och visad endast är ett exempel. Det kan föreligga en mängd andra konfigurationer och arrangemang med samma funktion. I detta avseende skall det förstås att bryggorna kan vara en och samma brygga, att datorn kan eller inte kan ha alla olika bussar som beskrivits, att skärmkontrolleraren kan vara ansluten till AGP-, ISA- eller PCI-bussen, att tangentbordet, diskettdrivern, och musen kan vara anslutna till andra bussar såsom USB. . . . . _.
Claims (6)
1. System för databehandling av en säkerhetskritisk åtgärd i en säker behandlingsmod i en dator, vilken dator innefattar en processor (10), hanteringsanordningar (20,28-38), minnes- lagringsorgan (l4,42), härefter benämnda resurser; att systemet innefattar en säkerhetsanordning (50) innefat- tande en processor (52) och signalgeneratorer (SGW, SGA), ett antal kontrollorgan, härefter benämnda växlar (60), med sig- nalmottagare (SRK SRW) anordnade respektive mellan säkerhets- anordningen och förvalda resurser, att växlarna innehåller information angående tillgänglighet härefter till och från resurserna, eller delar av resurserna, benämnda resursområden, k ä n n e t e c k n a t av att väx- larna kontrollerar begäran från datorns processor till resur- serna eller resursområdena beroende på information som inne- hålles i växeln, och varvid, som svar på ett anrop från da- torns processor eller hanteringsanordningarna, växlarna akti- (SGPM) veras genom att motta en signal från säkerhetsanord- ningen, vilket ger säkerhetsanordningen tillgång till och från resurserna eller resursomràdena som valts av säkerhets- anordningen och nekar datorns processor tillgång till och från resurserna eller resursomràdena som valts av säkerhets- av att signalen (SGW) anordningen, endast kan genereras av säkerhetsanordningen och av att säkerhetsanordningen innefat- tar en signalgenerator (SGA), varvid, när en växel mottar en signal (SGA), tillsammans med ny information (adresser, ope- ration, data), säkerhetsanordningen är i stånd att ändra innehållet hos informationen i den växeln.
2. System. enligt krav 1, k ä n n e t e c k n a t av att informationen som innehålles i växlarna kontrollerar tillgång p:\patranor\docs\docwork\nya patentkravdoc , 2003-12-18 70 15 20 .nu u. ...a a o :°'.: '. . .. . . .- a v - . - s a - v I .aa u n - I u ß ' 0 ° _ , . . . a . a - q , .. . . u a» - - ~ - . n till resurser för begäran från andra möjliga processorer, som är anordnade i, eller anslutna till, datorn. k ä n n e t e c k n a t av att (SRS)
3. System enligt krav 1, växlarna innefattar en signalmottagare med vilken de kan detektera vilken källa som hanterar datorn, och att väx- eln jämför detta med resursen sonl begär tillgång till en resurs eller resursområde kontrollerat av växeln, och beroen- de på informationen i växeln, möjliggör eller nekar tillgång till den resursen. av att
4. System. enligt krav 1, k ä n n e t e c k n a t informationen i växeln möjliggör att växeln kontrollerar vissa områden hos minnesorganet som endast är allokerade att vara tillgängliga för säkerhetsanordningens processor.
5. System enligt krav l, k ä n n e t e c k n a t av att informationen i växeln möjliggör att växeln kontrollerar att vissa resurser är tillgängliga för datorns processor när den inte är i säker behandlingsmod, och endast tillgängliga för säkerhetsanordningen när den är i säker behandlingsmod.
6. System enligt krav 1, k ä n n e t e c k n a t av att växlarna är hårdvaruväxlar. p:\patranor\docs\docwork\nya patentkravdoc , 2003-12-18
Priority Applications (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE9900051A SE523953C2 (sv) | 1999-01-11 | 1999-01-11 | System för databehandling av säkerhetskritisk aktivitet |
JP2000594003A JP2002535745A (ja) | 1999-01-11 | 2000-01-10 | セキュリティクリティカル機能をデータ処理するシステム |
IL14400000A IL144000A0 (en) | 1999-01-11 | 2000-01-10 | System for data processing a security critical activity |
AT00901364T ATE394746T1 (de) | 1999-01-11 | 2000-01-10 | System zur verarbeitung einer sicherheitskritischen aktivität |
PCT/SE2000/000027 WO2000042490A1 (en) | 1999-01-11 | 2000-01-10 | System for data processing a security critical activity |
AU21406/00A AU2140600A (en) | 1999-01-11 | 2000-01-10 | System for data processing a security critical activity |
EP00901364A EP1141805B1 (en) | 1999-01-11 | 2000-01-10 | System for processing a security critical activity |
US09/889,126 US7290284B1 (en) | 1999-01-11 | 2000-01-10 | System for data processing a security critical activity |
DE60038785T DE60038785D1 (de) | 1999-01-11 | 2000-01-10 | System zur verarbeitung einer sicherheitskritischen aktivität |
IL144000A IL144000A (en) | 1999-01-11 | 2001-06-26 | System for data processing a security critical activity |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE9900051A SE523953C2 (sv) | 1999-01-11 | 1999-01-11 | System för databehandling av säkerhetskritisk aktivitet |
Publications (3)
Publication Number | Publication Date |
---|---|
SE9900051D0 SE9900051D0 (sv) | 1999-01-11 |
SE9900051L SE9900051L (sv) | 2000-07-12 |
SE523953C2 true SE523953C2 (sv) | 2004-06-08 |
Family
ID=20414057
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SE9900051A SE523953C2 (sv) | 1999-01-11 | 1999-01-11 | System för databehandling av säkerhetskritisk aktivitet |
Country Status (1)
Country | Link |
---|---|
SE (1) | SE523953C2 (sv) |
-
1999
- 1999-01-11 SE SE9900051A patent/SE523953C2/sv unknown
Also Published As
Publication number | Publication date |
---|---|
SE9900051L (sv) | 2000-07-12 |
SE9900051D0 (sv) | 1999-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2313126C2 (ru) | Система и способ для защиты от недоверенного кода режима управления с системой с помощью переадресации прерывания режима управления системой и создания контейнера виртуальной машины | |
US10073986B2 (en) | Regulating access to and protecting portions of applications of virtual machines | |
EP2521062B1 (en) | Protecting operating-system resources | |
JP5580857B2 (ja) | 計算機システム内のセキュリティ侵害を識別して防ぐためのシステムと方法 | |
CN1132107C (zh) | 计算机系统中控制对映射到i/o地址空间的寄存器的访问的系统 | |
EP1708071B1 (en) | Method and system for detection and neutralization of buffer overflow attacks | |
US6986006B2 (en) | Page granular curtained memory via mapping control | |
US10489332B2 (en) | System and method for per-task memory protection for a non-programmable bus master | |
CN112818327B (zh) | 基于TrustZone的用户级代码和数据安全可信保护方法及装置 | |
US20080163353A1 (en) | Data structures for use in firewalls | |
JP7213879B2 (ja) | 間接アクセスメモリコントローラ用のメモリ保護装置 | |
CN1759557A (zh) | 具有外围设备访问保护的数据处理系统及其方法 | |
US7290284B1 (en) | System for data processing a security critical activity | |
KR101000543B1 (ko) | 데이터 프로세서의 보안을 개선하기 위한 방법 및 장치 | |
CN116583840A (zh) | 快速外围部件互连保护控制器 | |
CN113919013A (zh) | 用于存储器区域保护的系统和方法 | |
KR100972635B1 (ko) | 컴퓨터 시스템내에서의 장치간 액세스를 제어하는 시스템및 방법 | |
US10747686B2 (en) | Method and system for co-privileged security domains | |
EP2118804B1 (en) | Initiator and target firewalls | |
JP2007334432A (ja) | 情報処理装置及びそのアクセス制御方法 | |
EP3550463B1 (en) | Trusted out-of-band memory acquisition for iommu-based computer systems | |
EP1141805B1 (en) | System for processing a security critical activity | |
SE523953C2 (sv) | System för databehandling av säkerhetskritisk aktivitet | |
JPH1173372A (ja) | コンピュータ・ウィルスによる不正アクセス検出方法 | |
JPS6074059A (ja) | 記憶装置アクセス制御方式 |