대상 OS: Debian 12 (bookworm)

서버 보안은 네트워크에서만 끝나지 않습니다.
데이터센터든 사무실이든, 누군가 USB를 꽂을 수 있는 순간 “물리적 반입” 공격면이 생깁니다.
악성 HID(키보드 에뮬)나 부팅 가능한 USB, 혹은 단순한 대용량 저장장치도 사고의 시작점이 될 수 있습니다.
특히 운영 서버는 ‘잠깐 파일 옮기려고’ 꽂은 USB가 그대로 정보 유출 루트가 되기도 합니다.

Debian 12에서 USB 저장장치(대개 usb-storage 모듈)를 차단하면, 이런 물리 기반 리스크를 눈에 띄게 줄일 수 있습니다.
이 글은 커널 모듈 블랙리스트 + udev 기반 차단 + 이미 로드된 모듈/마운트 정리 + 감사 로그 확인까지, 운영에 바로 적용 가능한 순서로 정리합니다.

---

무엇을 막을지 먼저 정하기(정책 스코프)

1) USB “저장장치”만 막는다(일반적인 선택)

2) USB 전부를 막는다(키보드/마우스도 필요 없는 랙 서버라면 가능)

3) 특정 벤더/제품만 허용한다(화이트리스트 기반, 운영 복잡도 상승)

대부분의 서버에서는 1)만으로도 효과가 큽니다. 핵심 타깃은 `usb-storage` 모듈입니다.

---

1) 현재 상태 점검: 모듈/장치/마운트

1) usb-storage 로드 여부 확인

lsmod | grep -E '^usb_storage\b' || true

2) USB 관련 블록 디바이스가 있는지 확인

lsblk -o NAME,TYPE,SIZE,TRAN,MOUNTPOINT | sed -n '1,120p'

3) 최근 커널 로그(USB 연결 흔적) 확인

dmesg | tail -n 120

이 단계에서 이미 USB 디스크가 마운트되어 있다면 “차단 적용 전에” 언마운트/업무 영향도를 먼저 확인하세요.

---

2) 1차 방어: modprobe 블랙리스트로 usb-storage 차단

Debian 계열에서 커널 모듈 로딩을 막는 가장 단순하고 유지보수 쉬운 방식입니다.

1) 블랙리스트 파일 생성

sudo tee /etc/modprobe.d/usb-storage-blacklist.conf >/dev/null /dev/null