Maskování dat - Data masking

Maskování dat nebo zamlžování dat je proces úpravy citlivých dat takovým způsobem, že nemají žádnou nebo malou hodnotu pro neoprávněné vetřelce, přičemž jsou stále použitelné softwarem nebo autorizovaným personálem.

Hlavním důvodem použití maskování na datové pole je ochrana údajů, které jsou klasifikovány jako osobní údaje, citlivé osobní údaje nebo obchodně citlivé údaje. Data však musí zůstat použitelná pro účely provádění platných testovacích cyklů. Musí také vypadat reálně a vypadat konzistentně. Je běžnější mít maskování aplikované na data, která jsou reprezentována mimo podnikový výrobní systém. Jinými slovy, tam, kde jsou data potřebná pro účely vývoje aplikací , vytváření rozšíření programu a provádění různých testovacích cyklů . V podnikových počítačích je běžnou praxí odebírat data z produkčních systémů k vyplnění datové komponenty, požadované pro tato neproduktivní prostředí. Tato praxe však není vždy omezena na neproduktivní prostředí. V některých organizacích mohou data, která se zobrazují operátorům call center na obrazovkách terminálu, maskovat dynamicky na základě oprávnění zabezpečení uživatelů (např. Brání operátorům call centra v prohlížení čísel kreditních karet ve fakturačních systémech).

Primárním problémem z pohledu správy a řízení společnosti je, že pracovníci provádějící práci v těchto neprodukčních prostředích nemají vždy oprávnění pro zabezpečení s informacemi obsaženými v produkčních datech. Tato praxe představuje bezpečnostní díru, do které mohou data kopírovat neoprávněné osoby, a bezpečnostní opatření spojená se standardními kontrolami úrovně výroby lze snadno obejít. Toto představuje přístupový bod pro narušení zabezpečení dat .

Celková praxe maskování dat na organizační úrovni by měla být úzce spojena s praxí správy testů a základní metodikou a měla by zahrnovat procesy pro distribuci maskovaných podmnožin testovacích dat.

Pozadí

Data spojená s jakýmkoli maskováním nebo zmatením dat musí zůstat smysluplná na několika úrovních:

  1. Data musí zůstat smysluplná pro logiku aplikace. Například pokud mají být zmateny prvky adres a město a předměstí jsou nahrazena náhradními městy nebo předměstími, pak pokud v aplikaci existuje funkce, která ověřuje vyhledávání PSČ nebo PSČ, musí být tato funkce stále povolena fungovat bez chyba a fungovat podle očekávání. Totéž platí také pro kontroly ověření algoritmu kreditní karty a ověření čísla sociálního zabezpečení .
  2. Data musí projít dostatečnými změnami, aby nebylo zřejmé, že maskovaná data pocházejí ze zdroje produkčních dat. Například v organizaci může být všeobecně známo, že existuje 10 vedoucích pracovníků, kteří vydělávají více než 300 000 $. Pokud testovací prostředí HR systému organizace také obsahuje 10 identit ve stejné výdělkové kategorii, pak by mohly být spojeny další informace za účelem zpětného inženýrství identity v reálném životě. Teoreticky, pokud jsou data zjevně maskována nebo zmatena, pak by bylo rozumné, aby někdo, kdo zamýšlí porušení zabezpečení, předpokládal, že by mohl zpětně analyzovat data identity, pokud by měl určitou míru znalostí o identitách v produkční sadě dat. V souladu s tím platí, že zmatení nebo maskování datové sady dat probíhá takovým způsobem, aby byla zajištěna ochrana identitních a citlivých datových záznamů - nejen jednotlivých datových prvků v diskrétních polích a tabulkách.
  3. Může být vyžadováno, aby maskované hodnoty byly konzistentní ve více databázích v rámci organizace, pokud každá z těchto databází obsahuje konkrétní maskovaný datový prvek. Aplikace mohou zpočátku přistupovat k jedné databázi a později přistupovat k jiné za účelem získání souvisejících informací, kde byl cizí klíč maskován (např. Aplikace call centra nejprve vyvolá data z hlavní databáze zákazníků a v závislosti na situaci následně přistupuje k jedné z několika dalších databáze s velmi odlišnými finančními produkty.) To vyžaduje, aby použité maskování bylo opakovatelné (stejná vstupní hodnota pro maskovací algoritmus vždy přináší stejnou výstupní hodnotu), ale aby nemohlo být provedeno zpětné inženýrství, aby se dostalo zpět na původní hodnotu. V závislosti na použitých datových prvcích mohou platit také další omezení uvedená v bodě (1) výše. Tam, kde jsou v databázích, které je v tomto scénáři nutné připojit, použity různé znakové sady, bude třeba použít schéma převodu původních hodnot na společnou reprezentaci, a to buď samotným maskovacím algoritmem, nebo před vyvoláním uvedeného algoritmu.

Techniky

Střídání

Substituce je jednou z nejúčinnějších metod maskování dat a schopnosti zachovat autentický vzhled a dojem z datových záznamů.

Umožňuje maskování takovým způsobem, že stávající hodnotu lze nahradit jinou autenticky vypadající hodnotou. Existuje několik typů datových polí, kde tento přístup poskytuje optimální výhodu při maskování celé datové podmnožiny, zda jde o maskovanou datovou sadu. Pokud například pracujete se zdrojovými daty, která obsahují záznamy o zákaznících, lze z dodaného nebo přizpůsobeného vyhledávacího souboru náhodně nahradit příjmení nebo křestní jméno v reálném životě. Pokud první průchod nahrazení umožňuje použití mužského křestního jména na všechna křestní jména, pak by druhý průchod musel umožnit použití ženského křestního jména na všechna křestní jména, kde se pohlaví rovná „F“. Pomocí tohoto přístupu bychom mohli snadno udržovat genderový mix v datové struktuře, aplikovat anonymitu na datové záznamy, ale také udržovat realisticky vypadající databázi, kterou nelze snadno identifikovat jako databázi skládající se z maskovaných dat.

Tuto substituční metodu je třeba použít pro mnoho polí, která jsou ve strukturách DB po celém světě, jako jsou telefonní čísla , PSČ a PSČ, jakož i čísla kreditních karet a další čísla typů karet, jako jsou čísla sociálního zabezpečení a čísla Medicare, kde tato čísla ve skutečnosti musí odpovídat testu kontrolního součtu Luhnova algoritmu .

Substituční soubory budou ve většině případů muset být poměrně rozsáhlé, takže mít velké soubory náhradních dat a také schopnost aplikovat přizpůsobené sady nahrazování dat by měla být klíčovým prvkem hodnotících kritérií pro jakékoli řešení maskování dat.

Míchání

Metoda míchání je velmi běžnou formou zmatení dat. Je podobná substituční metodě, ale odvozuje sadu substitucí ze stejného sloupce dat, který je maskován. Velmi jednoduše řečeno, data jsou náhodně zamíchána ve sloupci. Pokud je však používán izolovaně, může kdokoli se znalostí původních dat použít scénář „What If“ na datovou sadu a poté dát dohromady skutečnou identitu. Metoda míchání je také otevřená tomu, aby byla obrácena, pokud lze algoritmus míchání dešifrovat.

Shuffling má však v určitých oblastech určité silné stránky. Pokud například údaje o finančních informacích na konci roku v databázi testů lze zamaskovat jména dodavatelů a poté zamíchat hodnotu účtů v maskované databázi. Je vysoce nepravděpodobné, že by kdokoli, dokonce i někdo s důvěrnou znalostí původních dat, mohl odvodit skutečný datový záznam zpět na jeho původní hodnoty.

Rozptyl počtu a data

Metoda numerického rozptylu je velmi užitečná pro aplikaci na finanční a datem řízená informační pole. Účinně metoda využívající tento způsob maskování může stále zanechat smysluplný rozsah v souboru finančních dat, jako je mzda. Pokud se aplikovaný rozptyl pohybuje kolem +/- 10%, je to stále velmi smysluplný soubor údajů, pokud jde o rozsah mezd, které jsou vypláceny příjemcům.

Totéž platí také pro informace o datu. Pokud by celkový datový soubor potřeboval zachovat integritu demografických a pojistně matematických dat, pak by použití náhodného číselného rozptylu +/- 120 dní na data zachovalo rozdělení data, ale přesto by zabránilo zpětné sledovatelnosti zpět ke známé entitě na základě jejich známých skutečné datum nebo datum narození nebo známá hodnota data pro jakýkoli záznam, který je maskován.

Šifrování

Šifrování je často nejsložitější přístup k řešení problému s maskováním dat. Šifrovací algoritmus často vyžaduje, aby byl k zobrazení dat na základě uživatelských práv použit „klíč“. To často zní jako nejlepší řešení, ale v praxi pak může být klíč poskytnut personálu bez příslušných práv k zobrazení dat. Tím se pak poruší účel maskovacího cvičení. Staré databáze se pak mohou zkopírovat s původními pověřeními dodaného klíče a stejný nekontrolovaný problém přetrvává.

Nedávno byl problém šifrování dat při zachování vlastností entit získán uznání a nově získaný zájem mezi prodejci a akademickou obcí. Nová výzva zrodila algoritmy provádějící šifrování zachovávající formát . Jsou založeny na akceptovaném algoritmickém režimu AES, díky kterému jsou rozpoznávány NIST .

Nulování nebo mazání

Někdy je velmi zjednodušený přístup k maskování přijat použitím nulové hodnoty na konkrétní pole. Přístup s hodnotou null je opravdu užitečný pouze k zabránění viditelnosti datového prvku.

Téměř ve všech případech snižuje stupeň integrity dat, který je udržován v maskované sadě dat. Není to realistická hodnota a poté selže jakékoli ověření logiky aplikace, které mohlo být použito v softwaru front -end, který je v testovaném systému. Také každému, kdo si přeje zpětně analyzovat některá data identity, zdůrazňuje, že v datové sadě bylo do určité míry použito maskování dat.

Maskování

Míchání znaků nebo maskování z určitých polí je také další zjednodušující, ale velmi efektivní způsob, jak zabránit zobrazení citlivých informací. Je to opravdu rozšíření předchozí metody nulling out, ale je zde kladen větší důraz na to, aby data zůstala skutečná a nebyla plně maskována dohromady.

To se běžně používá u údajů o kreditních kartách v produkčních systémech. Například operátor v call centru může vyúčtovat položku na kreditní kartu zákazníka. Poté citují fakturační odkaz na kartu s posledními 4 číslicemi XXXX XXXX xxxx 6789. Jako operátor vidí pouze poslední 4 číslice čísla karty, ale jakmile fakturační systém předá údaje zákazníka o účtování, úplné číslo je prozrazeno systémům platebních bran.

Tento systém není pro testovací systémy příliš účinný, ale je velmi užitečný pro výše popsaný scénář fakturace. Je také běžně známá jako metoda dynamického maskování dat.

Další složitá pravidla

Do jakéhokoli maskovacího řešení lze také zahrnout další pravidla bez ohledu na to, jak jsou maskovací metody konstruovány. Agnostické bílé knihy o produktu jsou dobrým zdrojem informací pro prozkoumání některých běžnějších komplexních požadavků na řešení pro maskování podniků, mezi něž patří interní synchronizační pravidla řádků, interní synchronizační pravidla tabulky a synchronizační pravidla tabulky do tabulky.

Odlišné typy

Maskování dat je úzce spojeno s daty testů budov. Dva hlavní typy maskování dat jsou statické a okamžité maskování dat.

Maskování statických dat

Maskování statických dat se obvykle provádí na zlaté kopii databáze, ale lze ji použít i na hodnoty v jiných zdrojích, včetně souborů. V prostředích DB budou produkční DBA obvykle načítat zálohy tabulek do samostatného prostředí, redukovat datovou sadu na podmnožinu, která obsahuje data nezbytná pro konkrétní kolo testování (technika nazývaná „podmnožina“), aplikovat pravidla maskování dat, když jsou data v stagnovat, aplikovat nezbytné změny kódu ze zdrojového řízení a/nebo odeslat data do požadovaného prostředí.

Deterministické maskování dat

Deterministické maskování je proces nahrazení hodnoty ve sloupci stejnou hodnotou, ať už ve stejném řádku, stejné tabulce, stejné databázi/schématu a mezi instancemi/servery/typy databází. Příklad: Databáze má více tabulek, každá se sloupcem, který má křestní jména. S deterministickým maskováním bude křestní jméno vždy nahrazeno stejnou hodnotou - „Lynne“ se vždy stane „Denise“ - ať už je „Lynne“ v databázi kdekoli.

Obfuskace statistických dat

Existují také alternativy k maskování statických dat, které se spoléhají na stochastické poruchy dat, které zachovávají některé statistické vlastnosti původních dat. Mezi příklady metod zamlžování statistických dat patří rozdílné soukromí a metoda DataSifter .

Maskování dat za běhu

On-the-Fly Data Masking se děje v procesu přenosu dat z prostředí do prostředí, aniž by se data dotkla disku na cestě. Stejná technika se používá pro „dynamické maskování dat“, ale pouze jeden záznam najednou. Tento typ maskování dat je nejužitečnější pro prostředí, která provádějí nepřetržitá nasazení, a také pro silně integrované aplikace. Organizace, které používají kontinuální nasazení nebo postupy nepřetržitého doručování, nemají čas potřebný k vytvoření zálohy a jejímu načtení do zlaté kopie databáze. Proto je důležité nepřetržitě odesílat menší podmnožiny (delty) maskovaných testovacích dat z produkce. V silně integrovaných aplikacích dostávají vývojáři zdroje z jiných produkčních systémů na samém začátku vývoje a maskování těchto zdrojů je buď přehlíženo, a není do rozpočtu zahrnuto později, což organizace činí nevyhovujícími. Nezbytné je mít maskování dat za provozu.

Dynamické maskování dat

Dynamické maskování dat je podobné maskování dat za běhu, liší se však v tom smyslu, že maskování dat za běhu je o kopírování dat z jednoho zdroje do jiného zdroje, aby bylo možné tento druhý sdílet. Dynamické maskování dat probíhá za běhu, dynamicky a na vyžádání, takže nemusí existovat druhý zdroj dat, kam by se maskovaná data dynamicky ukládala.

Dynamické maskování dat umožňuje několik scénářů, z nichž mnohé se točí kolem přísných předpisů o ochraně osobních údajů, např. Singapurského měnového úřadu nebo předpisů o ochraně osobních údajů v Evropě.

Dynamické maskování dat je založeno na atributech a je založeno na zásadách. Zásady zahrnují:

  • Lékaři si mohou prohlížet lékařské záznamy pacientů, ke kterým jsou přiřazeni (filtrování dat)
  • Lékaři nemohou zobrazit pole SSN uvnitř lékařského záznamu (maskování dat).

Dynamické maskování dat lze také použít k šifrování nebo dešifrování hodnot za běhu, zejména při použití šifrování zachovávajícího formát .

V posledních letech se objevilo několik standardů pro implementaci dynamického filtrování a maskování dat. Například XACML politiky mohou být použity pro maskování dat uvnitř databáze.

Existuje šest možných technologií pro použití dynamického maskování dat:

  1. V databázi: Databáze obdrží SQL a použije přepis na vrácenou maskovanou sadu výsledků. Použitelné pro vývojáře a správce databází, ale ne pro aplikace (protože fondy připojení, ukládání do mezipaměti aplikací a sběrnice dat skrývají identitu uživatele aplikace z databáze a mohou také způsobit poškození dat aplikace).
  2. Proxy sítě mezi aplikací a databází: Zachycuje SQL a aplikuje přepis na vybraný požadavek. Použitelné pro vývojáře a administrátory s jednoduchým výběrem 'select'requests, ale ne pro uložené procedury (které proxy pouze identifikují spuštění) a aplikace (protože fondy připojení, ukládání do mezipaměti aplikací a datová sběrnice skrývají identitu uživatele aplikace z databáze a mohou také způsobit poškození dat aplikace).
  3. Proxy databáze: je variací síťového proxy. Proxy databáze je nasazen obvykle mezi aplikacemi/uživateli a databází. Aplikace a uživatelé se k databázi připojují prostřednictvím serveru proxy pro zabezpečení databáze. Způsob, jakým se aplikace a uživatelé připojují k databázi, se nijak nemění. Rovněž není nutné instalovat agenta na databázový server. Sql dotazy jsou přepsány, ale při implementaci je tento typ dynamického maskování dat podporován také v rámci procedur úložiště a databázových funkcí.
  4. Proxy sítě mezi koncovým uživatelem a aplikací: identifikace textových řetězců a jejich nahrazení. Tato metoda není použitelná pro složité aplikace, protože při neúmyslném použití výměny řetězce v reálném čase snadno způsobí poškození.
  5. Změny kódu v aplikacích a XACML: změny kódu se obvykle obtížně provádějí, nelze je udržovat a nelze použít pro balené aplikace.
  6. V rámci doby běhu aplikace: Instrumentováním doby běhu aplikace jsou definovány zásady pro přepsání sady výsledků vrácené ze zdrojů dat, přičemž mají plnou viditelnost pro uživatele aplikace. Tato metoda je jediným použitelným způsobem, jak dynamicky maskovat složité aplikace, protože umožňuje řízení požadavku na data, výsledku dat a výsledku uživatele.
  7. Podporováno pluginem prohlížeče: V případě SaaS nebo místních webových aplikací lze doplňky prohlížeče konfigurovat tak, aby maskovaly datová pole odpovídající přesným voličům CSS . Toho lze dosáhnout buď označením citlivých polí v aplikaci, například třídou HTML, nebo vyhledáním správných voličů, které identifikují pole, která mají být zmatněna nebo maskována.

Maskování dat a cloud

V posledních letech organizace vyvíjejí své nové aplikace v cloudu stále častěji, bez ohledu na to, zda budou finální aplikace hostovány v cloudu nebo místně. Cloudová řešení od nynějška umožňují organizacím používat infrastrukturu jako službu , platformu jako službu a software jako službu . Existují různé režimy vytváření testovacích dat a jejich přesunu z místních databází do cloudu nebo mezi různými prostředími v cloudu. Dynamické maskování dat je v cloudu ještě důležitější, když zákazníci potřebují chránit data PII a při správě svých databází spoléhat na poskytovatele cloudu. Maskování dat se vždy stává součástí těchto procesů v SDLC, protože smlouvy SLA vývojových prostředí obvykle nejsou tak přísné jako smlouvy SLA produkčního prostředí bez ohledu na to, zda je aplikace hostována v cloudu nebo v místním prostředí.

Viz také

Reference