악성 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법

USB 메모리 스틱을 사용하여 Linux 컴퓨터에서 데이터를 훔칠 수 있습니다. USBGuard를 사용하면 USB 저장 장치용 방화벽과 같은 USB 메모리 스틱 사용을 관리하는 규칙을 설정할 수 있습니다. 작동 방식과 설정 방법은 다음과 같습니다.

피싱 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법 - %카테고리

USB 메모리 스틱과 그 위험

우리 모두는 적어도 하나의 USB 메모리 스틱 또는 외부 USB 드라이브와 같은 USB 저장 장치를 가지고 있을 것입니다. 저렴하고 효과적이며 휴대 가능하고 사용하기 쉽습니다.

요즘에는 하나를 Linux PC에 연결하기만 하면 자동으로 저장 장치로 선택하고 마운트할 수 있습니다. 명령줄에 수동으로 설치해야 하는 시대는 지났습니다. 이 편리함은 누구나 Linux 컴퓨터에 하나를 넣고 USB 드라이브에서 컴퓨터로 또는 컴퓨터에서 메모리 스틱으로 데이터를 복사할 수 있음을 의미합니다.

다른 사람이 귀하의 컴퓨터를 사용하는 경우 USB 메모리 스틱으로 할 수 있는 작업을 제한할 수 있습니다. 컴퓨터가 집에 있는 경우 컴퓨터가 켜져 있고 사람이 없을 때 악의적인 의도를 가진 기회주의자가 지나갈 가능성이 적지만 이러한 일은 직장에서도 발생할 수 있습니다.

그러나 집에 컴퓨터가 있어도 USB 액세스를 제한할 수 있습니다. 아마 당신의 자녀들은 정기적으로 함께 놀 친구가 있을 것입니다. USB 액세스를 잠그면 실수로 문제가 발생하지 않도록 예방할 수 있습니다.

누군가가 USB 드라이브를 발견하면 USB 드라이브에 무엇이 있는지 보기 위해 USB 드라이브를 무언가에 연결하려는 즉각적인 욕구가 있습니다. Linux 컴퓨터를 대상으로 하는 사이버 위협은 Windows 컴퓨터용으로 설계된 것보다 훨씬 드물지만 여전히 존재합니다.

USBGuard란?

USBGuard는 BadUSB와 같이 손상된 USB 메모리 스틱에 배포된 소프트웨어 기반 위협으로부터 사용자를 보호할 수 있습니다. BadUSB는 문서처럼 보이지만 위장된 실행 파일을 열도록 조작될 때 공격이 시작됩니다. USBGuard는 장치에 고전압 방전을 방출하여 컴퓨터에 물리적 손상을 유발하는 USB Killer 장치와 같은 하드웨어 기반 위협으로부터 사용자를 보호할 수 없습니다.

또한 읽기:  Linux에서 Steam 게임을 설치하고 실행하는 방법

실제로 USBGuard를 사용하면 마우스, 웹캠 및 키보드를 포함한 모든 종류의 USB 장치에 대한 규칙을 설정할 수 있습니다. USB 메모리 스틱에 관한 것이 아닙니다. 컴퓨터는 각 USB 장치의 ID를 알고 있으므로 컴퓨터에서 작동하는 USB 장치와 그렇지 않은 장치를 선택할 수 있습니다. USB 연결을 위한 방화벽과 같은 것입니다.

경고: USBGuard 데몬은 일단 설치되면 작동합니다. 설치 후 즉시 USBGuard를 구성해야 합니다. 그렇지 않으면 컴퓨터를 다시 시작할 때 모든 USB 장치가 차단됩니다.

Linux에서 USB 스틱의 정상적인 동작

작업을 수행하기 전에 Ubuntu 22.10 컴퓨터의 기본 동작을 확인합니다. 간단한 과정입니다. USB 메모리 스틱을 삽입하고 어떤 일이 일어나는지 확인합니다.

신호음이 들리고 도크에 메모리 스틱 아이콘이 나타납니다.

피싱 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법 - %카테고리

파일 브라우저를 열면 사이드바의 사이트 목록에 항목이 추가되었음을 알 수 있습니다. 표시 이름은 초기화될 때 장치에 지정된 이름입니다.

피싱 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법 - %카테고리

터미널을 열고 lsusb 명령을 사용하여 연결된 USB 장치를 나열하십시오. 맨 위 항목은 TDK 브랜드 장치인 문제의 메모리 스틱입니다.

lsusb

피싱 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법 - %카테고리

USBGuard 설치

USBGuard에는 usbutils 및 udisks2에 대한 종속성이 있습니다. 테스트한 최신 Manjaro, Fedora 및 Ubuntu 빌드에는 이미 설치되어 있습니다.

Ubuntu에 USBGuard를 설치하려면 다음 명령을 사용하십시오.

sudo apt 설치 usbguard

피싱 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법 - %카테고리

Fedora에서는 다음을 입력해야 합니다.

sudo dnf 설치 usbguard

피싱 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법 - %카테고리

Manjaro에서 명령은 다음과 같습니다.

sudo 팩맨 -S usbguard

피싱 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법 - %카테고리

기본 정책 구성

USBGuard에는 깔끔한 트릭이 있습니다. 여기에는 현재 연결된 모든 USB 장치가 방해 없이 계속 작동하도록 허용하는 규칙을 만드는 명령이 포함되어 있습니다. 즉, 필요한 모든 장치의 기본 구성을 항상 생성할 수 있습니다. 이 규칙 집합을 기본 정책이라고 합니다.

또한 읽기:  어린이를 위한 최고의 Linux 소프트웨어: 앱, 배포판 및 게임

USBGuard는 세 가지 유형의 규칙을 사용합니다.

  • 은혜: 규칙은 특정 장치가 평소와 같이 방해받지 않고 작동하도록 허용합니다. 유선 키보드, 마우스, 트랙볼, 웹캠 등과 같이 항상 연결된 장치에 사용됩니다. 또한 알려지고 신뢰할 수 있는 간헐적으로 연결된 장치에도 사용됩니다.
  • 금지: 차단 규칙은 USB 장치가 재생되지 않도록 합니다. USB 장치는 사용자에게 전혀 보이지 않습니다.
  • 배제:deny 규칙은 또한 USB 장치가 실행되는 것을 방지하지만 USB 장치는 lsusb를 사용하는 사용자에게 표시됩니다.

USBGuard에는 깔끔한 트릭이 있습니다. 여기에는 현재 연결된 각 USB 장치에 대한 허용 규칙으로 기본 정책을 생성하는 명령이 포함되어 있습니다. 이는 키보드 및 웹캠과 같이 컴퓨터에 항상 연결되어 있는 장치를 빠르게 구성할 수 있는 좋은 방법입니다. 또한 신뢰할 수 있고 얼룩덜룩한 장치를 캡처하는 편리한 방법입니다. 명령을 실행할 때 신뢰할 수 있는 모든 장치가 컴퓨터에 연결되어 있는지 확인하십시오.

이상하게도 루트 권한으로 수행해야 합니다. 명령과 함께 sudo를 사용하면 작동하지 않습니다. sudo -i(로그인) 명령을 사용하여 루트로 셸을 연 다음 명령을 실행해야 합니다. 작업이 완료되면 exit 명령을 사용하여 루트 로그인 세션을 종료하십시오.

sudo -i
usbguard 생성 정책 -X -t 거부 > /etc/usbguard/rules.conf
출구

-X(–no-hashes) 옵션은 USBGuard가 각 장치에 대한 해시 속성을 생성하지 못하도록 합니다. -t(대상) 옵션은 인식되지 않는 모든 USB 장치에 대한 기본 대상을 설정합니다. 우리의 경우 "거부"를 선택했습니다. "차단"을 선택할 수도 있습니다.

피싱 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법 - %카테고리

새로운 규칙을 찾기 위해 cat을 사용할 수 있습니다.

sudo 고양이 /etc/usbguard/rules.conf

피싱 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법 - %카테고리

테스트 컴퓨터에서 이것은 XNUMX개의 USB 장치를 감지하고 이들에 대한 "허용" 규칙을 생성했습니다. 다른 모든 USB 장치에 대한 대상으로 "거부"를 추가했습니다.

다른 USB 장치 추가

이제 이전에 사용했던 것과 동일한 USB 메모리 스틱을 연결하면 작동하지 않습니다. 도크에 추가되지 않고 파일 브라우저에 추가되지 않으며 신호음도 들리지 않습니다.

또한 읽기:  PC에 아치 리눅스를 설치하는 방법

그러나 알 수 없는 장치에 대해 '거부' 대상을 사용했기 때문에 lsusb는 해당 세부 정보를 나열할 수 있습니다.

lsusb

피싱 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법 - %카테고리

기본 정책에서 "차단" 대상을 사용하는 경우 -b(차단된 장치) 옵션과 함께 장치 목록 명령을 사용해야 합니다.

sudo usbguard 목록 장치 -b

피싱 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법 - %카테고리

현재 연결되어 있지만 차단된 USB 장치를 표시합니다.

이 명령의 일부 정보를 사용하여 거부된 USB 장치의 임시 액세스 또는 영구 액세스를 허용합니다. 장치에 임시 액세스 권한을 부여하기 위해 장치 ID 번호를 사용합니다. 이 예에서는 "10"입니다.

sudo usbguard 허용-장치 10

피싱 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법 - %카테고리

장치가 연결되어 도크 및 파일 브라우저에 나타납니다. 차단된 장치를 나열하도록 USBGuard에 요청하면 아무 것도 나열되지 않습니다.

sudo usbguard 목록 장치 -b

피싱 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법 - %카테고리

-p(영구) 옵션을 사용하여 권한을 영구적으로 만들 수 있습니다. 이것은 우리를 위한 규칙을 생성하고 우리의 정책에 추가합니다.

sudo usbguard 허용-장치 10 -p

피싱 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법 - %카테고리

이제 이 USB 장치를 정상적으로 사용할 수 있습니다.

USB 장치 액세스 제거

USB 장치에 대한 생각이 바뀌면(아마도 USB 메모리 스틱을 분실하여 해당 장치에 대한 액세스를 제거하려는 경우) block device 명령을 사용하여 그렇게 할 수 있습니다.

장치 ID를 알아야 합니다. 허용된 장치를 나열하여 이를 찾을 수 있습니다. 이 번호는 규칙을 목록에 추가하는 데 사용한 번호와 다를 수 있으므로 차단 장치 명령을 실행하기 전에 확인하십시오.

sudo usbguard 목록 장치 -a

피싱 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법 - %카테고리

이 경우 식별자는 "13"입니다. 이것을 block-device 명령 및 -p(영구) 옵션과 함께 사용하여 액세스를 영원히 제거합니다.

sudo usbguard 블록 장치 13 -p

피싱 USB 드라이브로부터 Linux 컴퓨터를 보호하는 방법 - %카테고리

이로 인해 장치가 즉시 연결 해제됩니다. 장치에서 데이터 사용을 완료한 경우에만 이 명령을 사용하십시오.

USBGuard는 컴퓨터에서 사용할 수 있는 USB 장치를 제어하고 관리하는 효율적이고 강력한 방법을 제공합니다.

그것은 당신의 컴퓨터이므로 당신이 선택하는 것이 공평합니다.

당신은 또한 좋아할 수 있습니다