Bizantijos serveriai yra sąvoka, kilusi iš Bizantijos generolų problemos, kuri iliustruoja iššūkius, kylančius siekiant sutarimo paskirstytose skaičiavimo sistemose, kai komponentai gali sugesti ir yra netobulos informacijos. Kalbant apie saugojimo sistemas, Bizantijos serveriai yra saugyklos mazgai, kurie gali rodyti savavališką ar kenkėjišką elgesį, įskaitant prieštaringos informacijos siuntimą į skirtingas sistemos dalis, neatsakymą arba aktyvų bandymą sugadinti ar manipuliuoti duomenimis. Toks elgesys kelia didelę grėsmę saugojimo sistemų saugumui ir patikimumui, ypač tų, kurios priklauso nuo paskirstytos architektūros.
„Bizantijos generolų problema“, kurią 1982 m. pirmą kartą pristatė Leslie Lamport, Robertas Šostakas ir Maršalas Pease'as, aprašo scenarijų, kai generolų grupė turi susitarti dėl bendros strategijos, kad išvengtų nesėkmės. Tačiau kai kurie generolai gali būti išdavikai, pateikiantys klaidingą informaciją, kad išvengtų sutarimo. Vertinant tai į kompiuterių sistemas, Bizantijos gedimai reiškia savavališkus gedimus, kurie gali atsirasti bet kurioje sistemos dalyje, įskaitant programinės įrangos klaidas, aparatinės įrangos gedimus ar kenkėjiškas atakas.
Saugojimo sistemose Bizantijos serveriai gali pakenkti duomenų vientisumui, prieinamumui ir konfidencialumui. Šios grėsmės gali būti suskirstytos į šias kategorijas:
1. Sąžiningumo grėsmės: Bizantijos serveriai gali sugadinti sistemoje saugomus duomenis. Šis sugadinimas gali būti subtilus, pavyzdžiui, pakeisti kelis duomenų bitus, arba sunkesnis, pvz., visiškai pakeisti duomenis klaidinga informacija. Iššūkis yra tas, kad Bizantijos serveriai didžiąją laiko dalį gali veikti teisingai, todėl sunku nedelsiant aptikti korupciją. Pavyzdžiui, paskirstytoje failų sistemoje, jei Bizantijos serveris pakeičia failo turinį, kiti klientai, pasiekiantys tą patį failą, gali gauti neteisingus duomenis, o tai gali sukelti duomenų praradimą arba programos klaidas.
2. Prieinamumo grėsmės: Bizantijos serveriai gali sutrikdyti duomenų prieinamumą, atsisakydami atsakyti į užklausas arba pateikdami uždelstus atsakymus. Paskirstytoje saugojimo sistemoje, jei serverių poaibis tampa bizantiškas, gali susidaryti situacija, kai sistema negali pasiekti reikiamo kvorumo skaitymo ar rašymo operacijoms atlikti, todėl duomenys tampa neprieinami. Pavyzdžiui, debesies saugyklos paslaugoje, jei keli saugyklos mazgai nereaguoja dėl Bizantijos elgesio, vartotojai gali patirti didelių vėlavimų arba visiškai negalėti pasiekti savo saugomų duomenų.
3. Konfidencialumo grėsmės: Bizantijos serveriai gali nutekėti neskelbtiną informaciją neteisėtoms šalims. Taip gali nutikti, jei serveriui pažeidžiamas užpuolikas, kuris vėliau išfiltruoja duomenis, arba jei serveris sąmoningai dalijasi duomenimis su neteisėtais subjektais. Esant scenarijui, kai saugoma neskelbtina asmeninė informacija arba patentuoti verslo duomenys, tokie pažeidimai gali sukelti rimtų privatumo pažeidimų ir finansinių nuostolių.
Siekiant sumažinti Bizantijos serverių keliamą riziką, buvo sukurtos kelios strategijos ir protokolai. Jie apima:
- Bizantijos gedimų tolerancijos (BFT) protokolai: Šie protokolai sukurti siekiant sutarimo esant Bizantijos gedimams. Vienas iš labiausiai žinomų BFT protokolų yra praktinis Bizantijos gedimų tolerancija (PBFT), leidžianti paskirstytai sistemai toleruoti iki trečdalio jos komponentų, kurie yra bizantiški. PBFT veikia turėdamas kelias duomenų kopijas ir reikalaujant tam tikro skaičiaus kopijų, kad susitartų dėl duomenų būsenos, kol bet kokia operacija laikoma atlikta. Tai užtikrina, kad net jei kai kurios kopijos yra bizantiškos, sistema vis tiek veiks tinkamai.
- Ištrynimo kodavimas ir perteklius: naudojant trynimo kodavimą ir perteklinį duomenų saugojimą keliuose serveriuose, saugojimo sistemos gali toleruoti Bizantijos gedimus. Ištrynimo kodavimas suskaido duomenis į fragmentus ir užkoduoja juos pertekline informacija, kad net jei kai kurie fragmentai būtų sugadinti arba prarasti, pradinius duomenis būtų galima atkurti. Šis metodas padidina atsparumą gedimams ir užtikrina duomenų prieinamumą, nepaisant Bizantijos serverių.
- Kriptografijos metodai: Naudojant kriptografinius metodus, tokius kaip skaitmeniniai parašai ir maišos funkcijos, galima aptikti Bizantijos serverių sugadintus duomenis ir užkirsti jiems kelią. Pavyzdžiui, klientai gali pasirašyti savo duomenis prieš juos saugodami, o saugojimo serveriai gali patikrinti parašus, kai juos nuskaito. Bet koks Bizantijos serverio pakeitimas sukeltų parašo neatitikimą, įspėjant sistemą apie galimą korupciją.
- Auditas ir stebėsena: Reguliarus saugojimo serverių auditas ir stebėjimas gali padėti aptikti Bizantijos elgesį. Nuolat tikrindamos duomenų vientisumą ir prieinamumą, saugojimo sistemos gali identifikuoti ir izoliuoti Bizantijos serverius. Duomenų vientisumui užtikrinti galima naudoti tokius metodus kaip iššūkio ir atsako protokolai, kai serveriai turi įrodyti, kad vis dar turi teisingus duomenis.
- Replikacijos ir kvorumo sistemos: Duomenų atkartojimas keliuose serveriuose ir kvorumu pagrįstų metodų naudojimas skaitymo ir rašymo operacijoms gali sumažinti Bizantijos gedimų poveikį. Kvorumo sistemai reikalingas tam tikras serverių skaičius, kad susitartų dėl operacijos prieš ją vykdant. Taip užtikrinama, kad net jei kai kurie serveriai yra bizantiški, jie vienas negali sutrikdyti sistemos veikimo.
Praktinio Bizantijos gedimų tolerancijos įgyvendinimo pavyzdys yra „Hyperledger Fabric“ blokų grandinės platforma, kuri naudoja PBFT variantą, kad pasiektų sutarimą tarp mazgų. Šioje sistemoje sandorius siūlo klientai, patvirtina tam tikras bendraamžių pogrupis, o paskui užsako ir patvirtina konsensuso mechanizmą, kuris toleruoja Bizantijos klaidas. Tai užtikrina, kad net jei kai kurie bendraamžiai yra kenkėjiški ar klaidingi, blokų grandinės vientisumas ir nuoseklumas išlaikomas.
Kitas pavyzdys yra „Google“ veržliaraktis, visame pasaulyje paskirstyta duomenų bazė, kuri naudoja replikacijos, kvorumo sistemų ir sinchronizuotų laikrodžių derinį, kad būtų pasiektas aukštas pasiekiamumas ir nuoseklumas. Nors ir nėra specialiai sukurta Bizantijos gedimams, „Spanner“ architektūra užtikrina atsparumą tam tikrų tipų gedimams ir užtikrina duomenų vientisumą bei prieinamumą geografiškai išsklaidytuose duomenų centruose.
Bizantijos serverių buvimas saugojimo sistemose reikalauja visapusiško požiūrio į saugą, apjungiantį kelias technologijas ir protokolus. Naudodamos Bizantijos gedimų tolerancijos protokolus, dubliavimą, kriptografinius metodus, auditą ir kvorumo sistemas, saugojimo sistemos gali būti atsparios savavališkai ir piktavališkai Bizantijos serverių elgesiui. Tai užtikrina duomenų vientisumą, prieinamumą ir konfidencialumą net sudėtingų atakų ir gedimų atveju.
Kiti naujausi klausimai ir atsakymai apie EITC/IS/ACSS pažangių kompiuterių sistemų sauga:
- Kokie yra iššūkiai ir kompromisai, susiję su aparatinės ir programinės įrangos mažinimu, apsaugančiu nuo laiko atakų, išlaikant sistemos našumą?
- Kokį vaidmenį atšakos prognozuotojas atlieka procesoriaus laiko atakose ir kaip užpuolikai gali juo manipuliuoti, kad nutekėtų jautri informacija?
- Kaip nuolatinio laiko programavimas gali padėti sumažinti kriptografinių algoritmų laiko atakų riziką?
- Kas yra spekuliatyvus vykdymas ir kaip jis prisideda prie šiuolaikinių procesorių pažeidžiamumo prieš atakas, pvz., Spectre?
- Kaip laiko atakos išnaudoja vykdymo laiko svyravimus, kad iš sistemos išvestų neskelbtiną informaciją?
- Kuo šakės nuoseklumo sąvoka skiriasi nuo nuoseklumo gavimo ir modifikavimo ir kodėl šakutės nuoseklumas laikomas stipriausiu pasiekiamu nuoseklumu sistemose su nepatikimais saugojimo serveriais?
- Kokie yra iššūkiai ir galimi sprendimai diegiant patikimus prieigos kontrolės mechanizmus, kad būtų išvengta neteisėtų pakeitimų bendroje failų sistemoje nepatikimame serveryje?
- Kokia yra nuoseklaus ir patikrinamo operacijų žurnalo tvarkymas nepatikimų saugyklų serverių kontekste ir kaip tai pasiekti?
- Kaip kriptografijos metodai, tokie kaip skaitmeninis parašas ir šifravimas, gali padėti užtikrinti duomenų, saugomų nepatikimuose serveriuose, vientisumą ir konfidencialumą?
- Kaip tokie protokolai kaip STARTTLS, DKIM ir DMARC prisideda prie el. pašto saugumo ir koks yra jų atitinkamas vaidmuo saugant el. pašto ryšius?
Peržiūrėkite daugiau klausimų ir atsakymų EITC/IS/ACSS Advanced Computer Systems Security