Maskování dat

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 31. března 2016; kontroly vyžadují 11 úprav .

Maskování [1] (obfuskace [2] ) dat  je způsob, jak chránit důvěrné informace před neoprávněným přístupem nahrazením původních dat smyšlenými daty nebo libovolnými znaky. Maskované informace zároveň vypadají realisticky a konzistentně a lze je použít v procesu testování softwaru. Ve většině případů se maskování používá k ochraně osobních údajů a důvěrných informací organizace.

Použití maskování dat je nejběžnější v procesu vývoje aplikací . Zároveň je běžnou praxí používat produkční data ve všech fázích vývoje: při vytváření aplikací a rozšíření , ve fázích testování a ladění .

Hlavním problémem z pohledu managementu podniků [3] a organizací je, že vývojáři aplikací nejsou vždy podrobeni ověřování ze strany podnikových bezpečnostních služeb, než získají přístup k produkčním datům. Tato praxe může vést k závažným bezpečnostním chybám, protože data mohou kopírovat neoprávnění uživatelé a bezpečnostní opatření v různých fázích výroby lze snadno obejít.

Obecná praxe maskování dat na úrovni organizace by měla úzce souviset s praxí testování řídicích systémů [4] a základní metodikou a měla by zahrnovat procesy pro distribuci testů podmnožin maskovaných dat [5] .

Požadavky na maskovaná data

Maskovaná data musí splňovat následující kritéria:

  1. Maskovaná data by měla být srozumitelná z hlediska aplikační logiky. Představte si například situaci, kdy potřebujete zamaskovat prvky poštovních adres a nahradit názvy měst jinými názvy. Pokud má aplikace možnost zkontrolovat PSČ nebo vyhledávat podle PSČ , pak by maskování nemělo narušovat správné provádění těchto funkcí. Totéž platí pro algoritmy pro kontrolu čísel platebních karet , certifikátů pojištění atd.
  2. Maskování by mělo zcela vyloučit možnost obnovení skutečných výrobních dat z maskovaných. Například může být všeobecně známo, že organizace má 10 vedoucích pracovníků, kteří jsou placeni přes 300 000 USD. Pokud je v maskované databázi HR zahrnuto 10 hodnot ze zadaného číselného rozsahu (přes 300 000 USD), pak může útočník zpětně analyzovat zbývající informace . Maskování dat by proto mělo být prováděno tak, aby byla zaručena ochrana záznamů obsahujících osobní informace , a nikoli pouze jednotlivých prvků v různých polích a tabulkách.

Metody maskování dat

Náhrada

Nahrazení je jednou z nejúčinnějších technik maskování, jak zachovat původní vzhled dat. Pokud například původní databázová tabulka obsahuje záznamy s informacemi o zákaznících, lze skutečná jména a příjmení nahradit jmény a příjmeními převzatými ze speciálně vytvořeného (připraveného) souboru. Takže v první fázi maskování lze všechna jména zákazníků nahradit libovolnými mužskými jmény a ve druhé fázi lze do buněk odpovídajících zákaznicím vložit ženská jména (filtrováním seznamu zákazníků podle buňky s pohlavím). Použití tohoto přístupu k maskování vám umožní zajistit správnou anonymitu záznamů a zachovat poměr pohlaví klientů v maskované tabulce. Je důležité, aby databáze zároveň vypadala realisticky a skutečnost maskování informací nebyla zřejmá.

Metodu nahrazení lze použít pro databázová pole obsahující údaje různého druhu: například telefonní čísla, PSČ, čísla platebních karet, potvrzení o pojištění atd. Je důležité, že v případě čísel plastových karet musí úspěšně fungovat fiktivní čísla projít kontrolou podle algoritmu Moon .

Ve většině případů by fiktivní datové soubory měly být dostatečně velké, aby umožňovaly co největší variace a přitom stále umožňovaly vlastní kompilaci náhradních datových sad. Tato kritéria jsou klíčová při výběru softwarového řešení pro maskování dat.

Zamíchat

Náhodné přehrávání je velmi běžný způsob maskování dat. Je podobná výše popsané metodě nahrazení, ale při míchání se nahrazující data přebírají ze stejného sloupce tabulky jako původní data. Jednoduše řečeno, data ve sloupci jsou náhodně zamíchána.

Avšak maskování pomocí této metody samotné má vážné nevýhody. Útočník, který má přístup k některým skutečným informacím, může obnovit zbytek dat pomocí analýzy pomocí metody „co když?“. Kromě toho lze míchání zvrátit dešifrováním jeho algoritmu.

Přes své nedostatky je metoda míchání skvělým doplňkem k jiným metodám maskování dat a v určitých případech může poskytnout určité výhody. Chcete-li například zamaskovat finanční výkazy, můžete nahradit jména dodavatelů a poté zamíchat čísla účtů v celé databázi. Je přitom krajně nepravděpodobné, že by je někdo, byť s omezeným přístupem k původním datům, dokázal obnovit.

Rozptyl číselných hodnot

Metoda rozptylu (scatter) se používá při práci s databázovými poli obsahujícími finanční informace a data. Tato metoda spočívá v odchýlení maskované číselné hodnoty od původní o určitou hodnotu. Například při maskování buněk obsahujících mzdové údaje zaměstnanců může být odchylka od původní hodnoty ± 10 %, takže maskované informace vypadají celkem realisticky a logicky.

Totéž platí pro sloupce v databázových tabulkách obsahujících data. Je-li pro zachování integrity demografických a pojistně-matematických informací vyžadováno maskování , pak použití odchylky ± 120 dnů na pole kalendářního data zachová jejich vztah v tabulce, ale nebude možné určit identitu osoby podle data například narození.

Šifrování

Šifrování je nejsofistikovanější způsob maskování dat. Šifrovací algoritmus obvykle předpokládá přítomnost "klíče" potřebného k dešifrování a zobrazení původních dat.

Šifrování je na první pohled ideálním řešením problému omezování přístupu k informacím, ale v praxi může být „klíč“ přenesen na zaměstnance, který nemá dostatečná práva k prohlížení dat, a tím se ruší veškeré snahy o zamaskování .

Šifrování může doprovázet i převod původních dat do binární podoby, což může způsobit problémy v aplikacích. Pro identifikaci a eliminaci konfliktů v rámci aplikací je nutné provést testování s předáním prvotních informací testerům, což zase zahrnuje prověření IT specialistů zapojených do testování bezpečnostní službou. Skvělý nápad v teorii, když je implementován v praxi, způsobuje spoustu potíží: šifrování zabere spoustu času, než se otestují a odstraní zjištěné nedostatky.

V poslední době byly problémy spojené s šifrováním rozpoznány vývojáři softwaru a vědeckou komunitou. Výsledkem výzkumu v této oblasti byl vznik nových šifrovacích algoritmů, které umožňují uložit původní datový formát - FPE (format protection encryption) .

Úpravy/resetování

Někdy se používá zjednodušená metoda maskování dat, která spočívá v nahrazení znaků v položce databáze nulami nebo libovolnými znaky (například hvězdičkami nebo „X“). Je zřejmé, že tato metoda umožňuje pouze skrýt, nikoli maskovat původní hodnotu. Téměř ve všech případech tento přístup snižuje stupeň integrity dat, protože způsobuje problémy s ověřováním dat aplikacemi. Kromě toho „nepřirozené“ hodnoty v záznamech databáze jasně naznačují, že na tabulku bylo použito maskování.

Nejčastěji se tento způsob maskování používá v procesu práce s platebními kartami. Například operátoři call center internetových obchodů vidí pouze poslední čtyři číslice čísla kreditní karty zákazníka (XXXX XXXX XXXX 6789), ale po potvrzení údajů odešle fakturační systém celé číslo karty do platebního systému .

Tento systém není příliš účinný pro testovací systémy, ale užitečný pro scénář účtování popsaný výše. Je také široce známý jako způsob dynamického maskování dat [6] .

Typy maskování dat

Existují dva hlavní typy maskování dat: statické a dynamické maskování.

Maskování statických dat

Maskování statických dat se obvykle používá, když je třeba databázi předat k testování (například při outsourcingu ). Správce databáze vytvoří kopii produkční databáze, nahraje ji na samostatný server, sníží množství informací v ní obsažených, ponechá pouze informace nezbytné pro provádění specifických testů, poté použije maskování, provede potřebné změny v kódu programu, a odešle maskovanou kopii databáze vývojářům nebo testerům.

Dynamické maskování dat

Dynamické maskování (maskování v reálném čase, maskování za běhu) se vyskytuje v procesu přenosu produkčních dat vývojářům bez přechodného záznamu na jakékoli paměťové médium .

Tento typ maskování je nejlepším řešením pro organizace, které používají nepřetržitou integraci a nemají čas na vytváření a stahování záloh databáze . Díky nepřetržité integraci je důležité mít možnost neustále podsouvat malé sady produkčních dat vývojářům k testování.

K dynamickému maskování dochází na základě atributů a definovaných zásad. Například:

Dynamické maskování lze také použít ve spojení s šifrováním dat v reálném čase , zejména při použití šifrování se zachováním formátu .

Maskování dat a cloudové služby

Vývoj aplikací na bázi cloudu je v posledních letech stále populárnější, ať už tyto aplikace poběží přímo v cloudu nebo na lokálním počítači. Existují různé metody pro vytváření testovacích případů a jejich přesun z lokálních databází do „cloudu“ nebo mezi různými prostředími v rámci „cloudu“. Maskování dat se nevyhnutelně stává součástí životního cyklu softwaru .

Přední poskytovatelé softwarových řešení pro maskování dat

Poznámky

  1. Metodika maskování dat (downlink) . datová kuchyně. Získáno 25. dubna 2013. Archivováno z originálu 12. srpna 2014. 
  2. Co je to zmatnění dat . Získáno 21. dubna 2013. Archivováno z originálu 4. března 2016.
  3. Specialisté na správu informací . GBT. Datum přístupu: 27. června 2012. Archivováno z originálu 4. dubna 2016.
  4. Metodika řízení testů (downlink) . datová kuchyně. Získáno 21. dubna 2013. Archivováno z originálu 11. srpna 2014. 
  5. Vytváření a údržba podmnožin testovacích dat (downlink) . datová kuchyně. Získáno 21. dubna 2013. Archivováno z originálu 3. dubna 2016. 
  6. Dynamické maskování dat s IBM Optim . Získáno 25. dubna 2013. Archivováno z originálu 24. června 2013.

Odkazy