Jak chronić swój komputer z systemem Linux przed nieuczciwymi dyskami USB

Opublikowany: 2023-01-23
Ręka osoby podłączającej dysk USB do komputera.
Freer/Shutterstock.com
Zainstaluj USBGuard, aby kontrolować i zarządzać, które pendrive'y mogą być używane na komputerze z systemem Linux. Działając jako swego rodzaju zapora ogniowa dla urządzeń USB, pozwala stworzyć zestaw reguł zezwalających, blokujących lub odrzucających określone dyski.

Pamięci USB mogą służyć do kradzieży danych z komputera z systemem Linux. USBGuard pozwala ustawić reguły regulujące korzystanie z pamięci USB, jak zapora ogniowa dla urządzeń pamięci masowej USB. Oto jak to działa i jak możesz to skonfigurować.

Spis treści

Pamięć USB i jej niebezpieczeństwa
Co to jest USBGuard?
Normalne zachowanie z pamięciami USB w systemie Linux
Instalowanie USBGuarda
Konfigurowanie zasad podstawowych
Dodawanie innego urządzenia USB
Usuwanie dostępu do urządzenia USB

Pamięć USB i jej niebezpieczeństwa

Prawdopodobnie wszyscy mamy co najmniej jedną pamięć USB lub urządzenie pamięci masowej USB, takie jak dysk zewnętrzny USB. Są tanie, skuteczne, przenośne i łatwe w użyciu.

W dzisiejszych czasach możesz po prostu podłączyć jeden do komputera z systemem Linux, aby zidentyfikować go jako urządzenie pamięci masowej i zamontować automatycznie. Dawno minęły czasy konieczności ręcznego montowania ich w wierszu poleceń. Ta wygoda oznacza, że ​​każdy może podłączyć go do komputera z systemem Linux i skopiować dane z dysku USB do komputera lub z komputera na kartę pamięci.

Jeśli inne osoby korzystają z Twojego komputera, możesz chcieć ograniczyć im możliwości korzystania z pamięci USB. Jeśli komputer znajduje się w domu, jest mało prawdopodobne, że oportunista ze złymi zamiarami przejdzie obok, gdy komputer jest włączony i pozostawiony bez nadzoru, ale może się to zdarzyć w miejscu pracy.

Jak dyski USB mogą stanowić zagrożenie dla twojego komputera
POWIĄZANE W jaki sposób dyski USB mogą stanowić zagrożenie dla komputera

Ale nawet jeśli masz komputer w domu rodzinnym, możesz chcieć ograniczyć dostęp do USB. Być może twoje dzieci regularnie zapraszają przyjaciół do zabawy. Zablokowanie dostępu USB jest rozsądnym środkiem ostrożności, aby powstrzymać je przed nieumyślnym powodowaniem problemów.

Gdy ktoś znajdzie dysk USB, od razu ma ochotę podłączyć go do czegoś, aby zobaczyć, co się na nim znajduje. Cyberzagrożenia atakujące komputery z systemem Linux są znacznie rzadsze niż te przeznaczone dla komputerów z systemem Windows, ale nadal istnieją.

Co to jest USBGuard?

USBGuard może chronić Cię przed zagrożeniami opartymi na oprogramowaniu, które są rozpowszechniane na zainfekowanych pamięciach USB, takich jak BadUSB, gdzie atak rozpoczyna się, gdy zostaniesz zmanipulowany w celu otwarcia czegoś, co wygląda jak dokument, ale jest zamaskowanym plikiem wykonywalnym. USBGuard nie chroni przed zagrożeniami sprzętowymi, takimi jak urządzenia USB Killer, które powodują fizyczne uszkodzenia komputera poprzez uwolnienie wyładowania wysokiego napięcia do urządzenia.

W rzeczywistości USBGuard umożliwia konfigurowanie reguł dla wszelkiego rodzaju różnych urządzeń USB, w tym myszy, kamer internetowych i klawiatur. Nie dotyczy to tylko pamięci USB. Twój komputer zna identyfikator każdego urządzenia USB, więc możesz wybrać, które urządzenia USB działają na twoim komputerze, a które nie. To coś w rodzaju zapory ogniowej dla łączności USB.

Ostrzeżenie: Demon USBGuard uruchamia się zaraz po zainstalowaniu. Upewnij się, że konfigurujesz USBGuard bezpośrednio po jego zainstalowaniu. Jeśli tego nie zrobisz, wszystkie urządzenia USB zostaną zablokowane po ponownym uruchomieniu komputera.

Normalne zachowanie z pamięciami USB w systemie Linux

Zanim cokolwiek zrobimy, sprawdzimy domyślne zachowanie na naszym komputerze Ubuntu 22.10. To prosty proces. Wkładamy pamięć USB i obserwujemy, co się dzieje.

Słychać dźwięk alarmu, aw stacji dokującej pojawia się ikona karty pamięci.

Otwarcie przeglądarki plików pokazuje, że wpis został dodany do listy lokalizacji na pasku bocznym. Wyświetlana nazwa to nazwa nadana urządzeniu podczas formatowania.

Otwarcie terminala i użycie polecenia lsusb wyświetla listę podłączonych urządzeń USB. Górny wpis to wspomniana karta pamięci, która okazuje się być urządzeniem marki TDK.

 lsusb 

Używanie lsusb do wyświetlania listy podłączonych urządzeń USB

POWIĄZANE: Jak wyświetlić listę urządzeń komputera z terminala Linux

Instalowanie USBGuarda

USBGuard jest zależny od usbutils i udisks2 . W najnowszych kompilacjach Manjaro, Fedory i Ubuntu, które testowaliśmy, były one już zainstalowane.

Aby zainstalować USBGuard na Ubuntu, użyj tego polecenia:

 sudo apt zainstaluj usbguard 

Instalowanie USBGuard na Ubuntu z apt

W Fedorze musisz wpisać:

 sudo dnf zainstaluj usbguard 

Instalowanie USBGuard na Fedorze z dnf

W Manjaro polecenie brzmi:

 sudo pacman -S ochrona usb 

Instalowanie USBGuard na Manjaro z pacmanem

Konfigurowanie zasad podstawowych

USBGuard ma fajną sztuczkę. Posiada polecenie, które tworzy regułę pozwalającą wszystkim aktualnie podłączonym urządzeniom USB na kontynuowanie pracy bez przeszkód. Oznacza to, że możesz utworzyć konfigurację bazową dla wszystkich zawsze potrzebnych urządzeń. Ten zestaw reguł jest nazywany zasadą podstawową.

USBGuard wykorzystuje trzy typy reguł.

  • Zezwalaj : Reguły Zezwalaj pozwalają na normalne działanie określonego urządzenia bez przeszkód. Jest to używane w przypadku urządzeń, które są zawsze podłączone, takich jak przewodowe klawiatury, myszy, trackballe, kamery internetowe i tak dalej. Jest również używany w przypadku urządzeń, które są połączone sporadycznie, a które są znane i zaufane.
  • Blokuj : Reguły blokowania uniemożliwiają działanie urządzeń USB. Urządzenie USB nie jest w ogóle widoczne dla użytkownika.
  • Reject : Reguły odrzucania również uniemożliwiają działanie urządzeń USB, ale urządzenie USB jest widoczne dla użytkownika za pomocą lsusb .

USBGuard ma fajną sztuczkę. Ma polecenie, które utworzy podstawową politykę z regułą zezwalającą dla każdego z aktualnie podłączonych urządzeń USB. To świetny sposób na szybką konfigurację urządzeń, które są zawsze podłączone do komputera, takich jak klawiatury i kamery internetowe. Jest to również wygodny sposób na przechwytywanie zaufanych, przerywanych urządzeń. Po prostu upewnij się, że wszystkie zaufane urządzenia są podłączone do komputera podczas wydawania polecenia.

Jak kontrolować dostęp sudo w systemie Linux
POWIĄZANE Jak kontrolować dostęp sudo w systemie Linux

Dziwne dziwactwo wymaga, abyś zrobił to jako root. Używanie sudo z poleceniem nie działa. Musimy użyć sudo -i (login), aby otworzyć powłokę jako root, a następnie wydać polecenie. Upewnij się, że używasz polecenia exit , aby opuścić sesję logowania roota po zakończeniu.

 sudo -i
 usbguard generuj zasady -X -t odrzuć > /etc/usbguard/rules.conf
 Wyjście

Opcja -X (–no-hashes) uniemożliwia USBGuard generowanie atrybutów skrótu dla każdego urządzenia. Opcja -t (target) ustawia domyślny cel dla wszystkich nierozpoznanych urządzeń USB. W naszym przypadku wybraliśmy opcję „odrzuć”. Mogliśmy też wybrać „blok”.

Tworzenie podstawowej polityki USBGuard z sesją terminala root

Aby zobaczyć nasze nowe zasady, możemy użyć cat .

 sudo cat /etc/usbguard/rules.conf 

Użycie cat do wyświetlenia automatycznie wygenerowanych reguł w pliku /etc/usbguard/rules.conf

Na naszym komputerze testowym wykryto trzy urządzenia USB i utworzono dla nich reguły „zezwalaj”. Dodał „odrzuć” jako cel dla wszystkich innych urządzeń USB.

Dodawanie innego urządzenia USB

Teraz, jeśli podłączymy tę samą pamięć USB, której używaliśmy wcześniej, nie będzie mogła działać. Nie jest dodawany do stacji dokującej, nie jest dodawany do przeglądarki plików i nie otrzymujemy alertu dźwiękowego.

Ale ponieważ użyliśmy celu „odrzucenia” dla nierozpoznanych urządzeń, lsusb może wyświetlić jego szczegóły.

 lsusb 

Używanie lsusb do wyświetlania listy podłączonych urządzeń USB

Gdybyśmy użyli celu „blokuj” w naszej podstawowej polityce, musielibyśmy użyć polecenia list-devices z opcją -b (zablokowane urządzenia).

 sudo lista-urządzeń usbguard -b 

Użycie polecenia list-devices do wyświetlenia listy zablokowanych, połączonych urządzeń

Pokazuje aktualnie podłączone, ale zablokowane urządzenia USB.

Wykorzystamy niektóre informacje z tego polecenia, aby umożliwić naszemu odrzuconemu urządzeniu USB tymczasowy lub stały dostęp. Aby zapewnić naszemu urządzeniu tymczasowy dostęp, użyjemy numeru identyfikacyjnego urządzenia. W naszym przykładzie jest to „10”.

 sudo usbguard zezwalaj na urządzenie 10 

Przyznawanie tymczasowego dostępu do urządzenia USB

Nasze urządzenie jest podłączone i pojawia się w stacji dokującej oraz w przeglądarce plików. Jeśli poprosimy USBGuard o wyświetlenie listy zablokowanych urządzeń, żadne z nich nie zostanie wyświetlone.

 sudo lista-urządzeń usbguard -b 

USBGUard nie znalazł zablokowanych urządzeń

Możemy nadać uprawnienia stałe, używając opcji -p (permanent). Tworzy to dla nas regułę i dodaje ją do naszych zasad.

 sudo usbguard zezwalaj na urządzenie 10 -p 

Nadanie urządzeniu stałego dostępu poprzez dodanie reguły zezwalającej do polityki

Możemy teraz normalnie używać tego urządzenia USB.

Usuwanie dostępu do urządzenia USB

Jeśli zmienisz zdanie na temat urządzenia USB — być może zgubiłeś pamięć USB i chcesz usunąć jej dostęp — możesz to zrobić za pomocą polecenia block-device .

Musimy znać identyfikator urządzenia. Możemy to znaleźć, wyświetlając listę dozwolonych urządzeń. Pamiętaj, że ten numer może nie być taki sam, jak ten, którego użyłeś do dodania reguły do ​​listy, więc sprawdź przed wydaniem polecenia block-device .

 sudo lista urządzeń usbguard -a 

Uzyskanie numeru identyfikacyjnego urządzenia USB za pomocą polecenia list-devices

W naszym przypadku identyfikatorem jest „13”. Użyjemy tego z poleceniem block-device i opcją -p (permanent), aby na zawsze usunąć jego dostęp.

 sudo urządzenie blokujące usbguard 13 -p 

Trwałe blokowanie dostępu do urządzenia USB za pomocą polecenia block-device

Pamiętaj, że powoduje to natychmiastowe odłączenie urządzenia. Używaj tego polecenia tylko wtedy, gdy skończysz korzystać z danych na urządzeniu.


USBGuard zapewnia skuteczny i solidny sposób na przejęcie kontroli i zarządzanie urządzeniami USB, których można używać na komputerze.

To Twój komputer, więc sprawiedliwe jest, abyś mógł wybrać.

POWIĄZANE: Jak montować i odmontowywać urządzenia pamięci masowej z terminala Linux