SE523953C2 - System för databehandling av säkerhetskritisk aktivitet - Google Patents

System för databehandling av säkerhetskritisk aktivitet

Info

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
Application number
SE9900051A
Other languages
English (en)
Other versions
SE9900051L (sv
SE9900051D0 (sv
Inventor
Christian Wettergren
Original Assignee
Myspace Ab
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Myspace Ab filed Critical Myspace Ab
Priority to SE9900051A priority Critical patent/SE523953C2/sv
Publication of SE9900051D0 publication Critical patent/SE9900051D0/sv
Priority to AU21406/00A priority patent/AU2140600A/en
Priority to AT00901364T priority patent/ATE394746T1/de
Priority to PCT/SE2000/000027 priority patent/WO2000042490A1/en
Priority to IL14400000A priority patent/IL144000A0/xx
Priority to EP00901364A priority patent/EP1141805B1/en
Priority to US09/889,126 priority patent/US7290284B1/en
Priority to DE60038785T priority patent/DE60038785D1/de
Priority to JP2000594003A priority patent/JP2002535745A/ja
Publication of SE9900051L publication Critical patent/SE9900051L/sv
Priority to IL144000A priority patent/IL144000A/en
Publication of SE523953C2 publication Critical patent/SE523953C2/sv

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting 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/72Protecting 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)

70 15 20 25 30 i 523 953 . . . . . . Q - . . .a 15 Patentkrav
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
SE9900051A 1999-01-11 1999-01-11 System för databehandling av säkerhetskritisk aktivitet SE523953C2 (sv)

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)

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) 記憶装置アクセス制御方式