Vytvořte si AI tutoriál na míru! Vyzkoušejte generátor tutoriálů a ušetřete čas.

Bezpečnost paměti na kritickém bodu obratu

Sdílet na sociálních sítích:
Napsal: Jan Kubice
Věda a technologie

Experti MIT volají po jednotném přístupu k zabezpečení počítačové paměti z důvodu národní bezpečnosti. Zranitelnosti v paměti stojí za 70% softwarových chyb.

Obrázek novinky

Bezpečnost paměti na kritickém bodu obratu

Krádeže rodných čísel, ochromená veřejná doprava, zablokované nemocniční systémy vyžadující výkupné – to jsou jen některé z ničivých důsledků nezabezpečené paměti v počítačových systémech.

V posledním desetiletí se veřejné povědomí o takových kybernetických útocích zintenzivnilo, neboť jejich dopady poškozují jednotlivce, korporace i vlády. Dnes se toto povědomí shoduje s technologiemi, které konečně dozrály natolik, aby eliminovaly zranitelnosti v oblasti bezpečnosti paměti.

„Nacházíme se na kritickém bodu obratu – nyní je ten správný čas přejít na systémy s bezpečnou pamětí,“ říká Hamed Okhravi, expert na kybernetickou bezpečnost ve skupině Secure Resilient Systems and Technology Group v MIT Lincoln Laboratory.

V článku v časopise Communications of the ACM z letošního roku se Okhravi společně s dalšími 20 předními odborníky v oblasti počítačové bezpečnosti zaměřili na plán dosažení univerzální bezpečnosti paměti. Argumentují pro standardizovaný rámec jako nezbytný krok k přijetí technologií bezpečnosti paměti ve všech formách počítačových systémů, od stíhaček až po mobilní telefony.

Zranitelnosti bezpečnosti paměti vznikají, když program provádí nezamýšlené nebo chybové operace v paměti. Tyto operace jsou běžné a představují odhadovaných 70 procent softwarových zranitelností. Pokud útočník získá přístup k paměti, může potenciálně ukrást citlivé informace, změnit provádění programu nebo dokonce získat kontrolu nad počítačovým systémem.

Tyto zranitelnosti existují z velké části proto, že běžné programovací jazyky, jako je C nebo C++, jsou ze své podstaty nebezpečné z hlediska paměti. Jednoduchá chyba softwarového inženýra, třeba jeden řádek v systému s miliony řádků kódu, může stačit útočníkovi k zneužití.

V posledních letech byly vyvinuty nové jazyky s bezpečnou pamětí, jako je Rust. Přepsání stávajících systémů v nových jazycích s bezpečnou pamětí však může být nákladné a složité.

Okhravi se zaměřuje na důsledky zranitelností bezpečnosti paměti pro národní bezpečnost. Pro Ministerstvo obrany USA (DoD), jehož systémy obsahují miliardy řádků staršího kódu C nebo C++, je bezpečnost paměti dlouhodobým problémem. Národní bezpečnostní agentura (NSA) a federální vláda nedávno vyzvaly vývojáře technologií k odstranění zranitelností bezpečnosti paměti z jejich produktů. Obavy o bezpečnost se netýkají pouze vojenských systémů, ale i široké škály spotřebitelských produktů.

„Mobilní telefony například nejsou okamžitě důležité pro obranu nebo vedení války, ale pokud máme ve státě 200 milionů zranitelných mobilních telefonů, je to závažná otázka národní bezpečnosti,“ říká Okhravi.

Technologie s bezpečnou pamětí

V posledních letech se objevilo několik technologií, které pomáhají řešit zranitelnosti paměti ve stávajících systémech. Jako hostující editor speciálního čísla časopisu IEEE Security and Privacy Okhravi shromáždil články od předních odborníků v oboru, aby zdůraznil tyto technologie a způsoby, jak na sobě mohou navzájem stavět.

Některé z těchto technologií bezpečnosti paměti byly vyvinuty v Lincoln Laboratory s podporou agentur DoD. Mezi tyto technologie patří TRACER a TASR, což jsou softwarové produkty pro systémy Windows a Linux, které při každém přístupu programu k paměti přeskupují umístění kódu v paměti, čímž se značně ztěžuje útočníkům najít zneužití. Tyto řešení s pohyblivým cílem již byly licencovány společnostmi zabývajícími se kybernetickou bezpečností a cloudovými službami.

„Tyto technologie jsou rychlými vítězstvími, které nám umožňují dosáhnout velkého okamžitého dopadu, aniž bychom museli přestavět celý systém. Jsou však pouze částečným řešením, způsobem, jak zabezpečit stávající systémy, zatímco přecházíme na bezpečnější jazyky,“ říká Okhravi.

Probíhá inovativní práce na usnadnění tohoto přechodu. Například program TRACTOR v Agentuře pro pokročilé výzkumné projekty v oblasti obrany (DARPA) vyvíjí nástroje umělé inteligence pro automatický překlad staršího kódu C do Rustu. Vědci z Lincoln Laboratory budou testovat a hodnotit překladač pro použití v systémech DoD.

Okhravi a jeho spoluautoři ve svém článku uvedli, že časový harmonogram úplného přijetí systémů s bezpečnou pamětí je dlouhý – pravděpodobně desetiletí. Bude to vyžadovat nasazení kombinace nového hardwaru, softwaru a technik, z nichž každá má své vlastní cesty přijetí, náklady a narušení. Organizace by měly nejprve upřednostnit kriticky důležité systémy.

„Například nejdůležitější součásti stíhačky, jako je algoritmus řízení letu nebo logika manipulace s municí, by měly být zabezpečeny z hlediska paměti, řekněme, do pěti let,“ říká Okhravi. Podsoubory méně důležité pro kritické funkce by měly delší časový rámec.

Použití programovacích jazyků s bezpečnou pamětí v Lincoln Laboratory

Protože Lincoln Laboratory pokračuje ve svém vedoucím postavení v oblasti rozvoje technologií bezpečnosti paměti, skupina Secure Resilient Systems and Technology Group upřednostňuje přijímání programovacích jazyků s bezpečnou pamětí. „V posledních šesti letech investujeme do skupinového používání Rustu jako součásti naší širší strategie pro prototypování kyberneticky odolných systémů pro mise a vysoce zabezpečených kryptografických implementací pro DoD a zpravodajskou komunitu,“ říká Roger Khazan, který skupinu vede. „Bezpečnost paměti je základním prvkem důvěryhodnosti v těchto systémech.“

Silné záruky Rustu v oblasti bezpečnosti paměti, spolu s jeho rychlostí a schopností odhalit chyby brzy během vývoje, z něj dělají jazyk zvláště vhodný pro budování bezpečných a spolehlivých systémů. Laboratoř používá Rust k prototypování a přechodu zabezpečených komponent pro vestavěné, distribuované a kryptografické systémy, kde jsou odolnost, výkon a správnost kriticky důležité.

Toto úsilí podporuje jak okamžité potřeby americké vlády, tak i dlouhodobější transformaci softwarového ekosystému národní bezpečnosti. „Odráží širší poslání Lincoln Laboratory, jímž je pokrok v technologii ve službách národní bezpečnosti, založený na technické excelenci, inovacích a důvěře,“ dodává Khazan.

Technologie-agnostický rámec

Při návrhu nových počítačových systémů vývojáři potřebují rámec standardů bezpečnosti paměti, který by je vedl. Dnešní pokusy o požadování bezpečnosti paměti v nových systémech jsou brzděny nedostatkem jasné sady definic a postupů.

Okhravi zdůrazňuje, že tento standardizovaný rámec by měl být technologicky nezávislý a poskytovat specifické časové harmonogramy se sadami požadavků pro různé typy systémů.

„V procesu akvizice pro DoD a dokonce i komerční sektor, když požadujeme bezpečnost paměti, by neměla být vázána na konkrétní technologii. Mělo by to být dostatečně obecné, aby různé typy systémů mohly použít různé technologie k dosažení tohoto cíle,“ říká.

Vyplnění této mezery vyžaduje nejen budování konsensu v průmyslu ohledně technických přístupů, ale také spolupráci s vládou a akademickou obcí, aby se toto úsilí zrealizovalo.

Potřeba spolupráce byla impulsem pro článek a Okhravi říká, že konsorcium expertů bude prosazovat standardizaci ze svých pozic v průmyslu, vládě a akademické obci. Přispěvatelé do článku zastupují širokou škálu institucí, od University of Cambridge a SRI International po Microsoft a Google. Společně budují hybnou sílu, aby konečně odstranili zranitelnosti paměti a s nimi spojené nákladné škody.

„Vidíme, že se mění myšlení ohledně kompromisu mezi náklady a rizikem, částečně kvůli dozrávání technologií a částečně kvůli takovým důsledným incidentům,“ říká Okhravi. „Stále slyšíme, že takové a takové narušení stálo miliardy dolarů. Mezitím by zabezpečení systému mohlo stát 10 milionů dolarů. Nebylo by lepší vynaložit toto úsilí?“

Související články

Sdílet na sociálních sítích:

Komentáře

Zatím žádné komentáře. Buďte první, kdo napíše svůj názor!