i co można z nimi zrobić w 7 listopada 2016
Outline Co może pójść źle 1 Co może pójść źle 2
System plików Skomplikowana struktura
System plików Skomplikowana struktura Atakujący wybiera cel - np. egzotyczny sterownik
System plików Skomplikowana struktura Atakujący wybiera cel - np. egzotyczny sterownik Zwykle wymaga niewiele interakcji użytkownika
CVE-2014-4115 fastfat.sys (aka the FASTFAT driver) in the kernel-mode drivers in Microsoft Windows Server 2003 SP2, Vista SP2, and Server 2008 SP2 does not properly allocate memory, which allows physically proximate attackers to execute arbitrary code or cause a denial of service CVE-2015-7509 A flaw was found in the way the Linux kernel s ext4 file system driver handled non-journal file systems with an orphan list. An attacker with physical access to the system could use this flaw to crash the system or, although unlikely, escalate their privileges on the system.
System plików Skomplikowana struktura Atakujący wybiera cel - np. egzotyczny sterownik Zwykle wymaga niewiele interakcji użytkownika Tablica partycji Niby prosta struktura...
System plików Skomplikowana struktura Atakujący wybiera cel - np. egzotyczny sterownik Zwykle wymaga niewiele interakcji użytkownika Tablica partycji Niby prosta struktura...... ale mimo to zdarzają się błędy
CVE-2016-5011 It was found that util-linux s libblkid library did not properly handle Extended Boot Record (EBR) partitions when reading MS-DOS partition tables. An attacker with physical access to a protected machine could insert a storage device with a specially crafted partition table that could, for example, trigger an infinite loop in systemd-udevd, resulting in a denial of service on that machine.
Interfejs Sama obsługa interfejsu urządzenia jest złożona
CVE-2016-0133 The Mass Storage Class driver in Microsoft Windows Vista SP2, Windows Server 2008 SP2 and R2 SP1, Windows 7 SP1, Windows 8.1, Windows Server 2012 Gold and R2, Windows RT 8.1, and Windows 10 Gold and 1511 allows physically proximate attackers to execute arbitrary code by inserting a crafted device, aka Mass Storage Elevation of Privilege Vulnerability. CVE-2016-2384 Double free vulnerability in the snd_usbmidi_create function in sound/usb/midi.c in the Linux kernel before 4.5 allows physically proximate attackers to cause a denial of service (panic) or possibly have unspecified other impact via vectors involving an invalid descriptor.
Interfejs Sama obsługa interfejsu urządzenia jest złożona Urządzenie może nie być tym za co się podaje - np niespodziewany hub i klawiatura
Rubber Ducky
Outline Co może pójść źle 1 Co może pójść źle 2
fot. Jason7825 at English Wikipedia
Express Card Wszytko to co
Express Card Wszytko to co Dodatkowo PCI Express, a więc również DMA
DMA Bezpośredni dostęp od pamięci
DMA Bezpośredni dostęp od pamięci Modyfikacja kodu, odczytywanie danych, co tylko można sobie wymarzyć
DMA Bezpośredni dostęp od pamięci Modyfikacja kodu, odczytywanie danych, co tylko można sobie wymarzyć Poza kontrolą sterownika
Thunderbolt PCI Express + DisplayPort, a w v3 również i HDMI FireWire Również obsługuje DMA
Outline Co może pójść źle 1 Co może pójść źle 2
MMU dla urządzeń - ograniczenie poszczególnych urządzeń do pamięci wirtualnej zdefiniowanej przez OS
MMU dla urządzeń - ograniczenie poszczególnych urządzeń do pamięci wirtualnej zdefiniowanej przez OS Poprawnie skonfigurowane uniemożliwia ataki oparte o DMA
MMU dla urządzeń - ograniczenie poszczególnych urządzeń do pamięci wirtualnej zdefiniowanej przez OS Poprawnie skonfigurowane uniemożliwia ataki oparte o DMA Obsługiwane w Xen, KVM
MMU dla urządzeń - ograniczenie poszczególnych urządzeń do pamięci wirtualnej zdefiniowanej przez OS Poprawnie skonfigurowane uniemożliwia ataki oparte o DMA Obsługiwane w Xen, KVM
MMU dla urządzeń - ograniczenie poszczególnych urządzeń do pamięci wirtualnej zdefiniowanej przez OS Poprawnie skonfigurowane uniemożliwia ataki oparte o DMA Obsługiwane w Xen, KVM, Linux... Nie rozwiązuje pozostałych problemów - komunikacji za pomocą (potencjalnie skompromitowanego) sterownika
Outline Co może pójść źle 1 Co może pójść źle 2
Sprzętowy firewall pomiędzy urządzeniem a hostem https://github.com/robertfisk/usg/wiki
USG Filtruje klasy urządzeń, tylko jeden interfejs na raz W obrębie danej klasy przepuszcza tylko poprawne pakiety Blokuje zmiany klasy
Outline Co może pójść źle 1 Co może pójść źle 2
Więcej izolacji Odizolować urządzenia i sterowniki od reszty systemu
Więcej izolacji Odizolować urządzenia i sterowniki od reszty systemu Podłączyć do dedykowanej maszyny wirtualnej (nie używanej do niczego innego)
Więcej izolacji Odizolować urządzenia i sterowniki od reszty systemu Podłączyć do dedykowanej maszyny wirtualnej (nie używanej do niczego innego) Nie zapobiega atakom, ogranicza ich zasięg
Więcej izolacji Odizolować urządzenia i sterowniki od reszty systemu Podłączyć do dedykowanej maszyny wirtualnej (nie używanej do niczego innego) Używanie Nie zapobiega atakom, ogranicza ich zasięg Wyeksportować urządzenie/dane dużo wyższego poziomu - np. pojedynczą partycję, albo wręcz plik
Więcej izolacji Odizolować urządzenia i sterowniki od reszty systemu Podłączyć do dedykowanej maszyny wirtualnej (nie używanej do niczego innego) Używanie Nie zapobiega atakom, ogranicza ich zasięg Wyeksportować urządzenie/dane dużo wyższego poziomu - np. pojedynczą partycję, albo wręcz plik Podłączyć do jednorazowej VM (DisposableVM) - niszczonej po użyciu
https://github.com/rustybird/qubes-split-dm-crypt
Więcej izolacji Odizolować urządzenia i sterowniki od reszty systemu Podłączyć do dedykowanej maszyny wirtualnej (nie używanej do niczego innego) Używanie Nie zapobiega atakom, ogranicza ich zasięg Wyeksportować urządzenie/dane dużo wyższego poziomu - np. pojedynczą partycję, albo wręcz plik Podłączyć do jednorazowej VM (DisposableVM) - niszczonej po użyciu Filtrować dane wyższego poziomu: PDF converter, input proxy,...
https://github.com/qubesos/qubes-app-linux-pdf-converter
https://github.com/qubesos/qubes-app-linux-input-proxy
Poufność Nie tylko manipulacja danymi, prywatność też jest ważna - np. podsłuchiwanie
Poufność Nie tylko manipulacja danymi, prywatność też jest ważna - np. podsłuchiwanie Wrażliwe urządzenia: klawiatura, mikrofon, kamera (o ile nie zasłonięta),...
Poufność Nie tylko manipulacja danymi, prywatność też jest ważna - np. podsłuchiwanie Wrażliwe urządzenia: klawiatura, mikrofon, kamera (o ile nie zasłonięta),... Klawiatura podwójnie wrażliwa: zarówno integralność (wstrzykiwanie klawiszy), jak i prywatność - klawiatura zna hasła, więc standardowa blokada ekranu nie wystarcza
Poufność Nie tylko manipulacja danymi, prywatność też jest ważna - np. podsłuchiwanie Wrażliwe urządzenia: klawiatura, mikrofon, kamera (o ile nie zasłonięta),... Klawiatura podwójnie wrażliwa: zarówno integralność (wstrzykiwanie klawiszy), jak i prywatność - klawiatura zna hasła, więc standardowa blokada ekranu nie wystarcza Odrobinę pomaga 2FA do blokady ekranu
Pytania?
Dziękuję!