Computer >> 컴퓨터 >  >> 하드웨어 >> 하드웨어

무선 프린터 보안 완벽 가이드: HP DeskJet 3630 설정부터 IoT 기기 보안까지

지금까지 여러 종류의 인쇄 장치를 사용해 왔지만, 무선(Wireless) 프린터는 한 번도 써본 적이 없었습니다. 그러다 최근 저렴한 편, 정확히 표현하자면 '보급형' 올인원 프린터인 HP DeskJet 3630 All-in-One을 구입하게 되었는데, 이 제품은 무선 연결 기능도 함께 지원합니다.

케이블 없이 사용한다는 것은 꽤 매력적인 개념이라 무선 기능으로 접근할 수 있도록 설정하기로 했습니다. 그런데 설정 도중 문득 이런 생각이 들었습니다. 과연 이 프린터는 어떤 수준의 보안을 갖추고 있을까? 겉보기에는 신비로워 보이지만, 실제로는 최종 사용자에게 몇 가지 시사점이 있을지 모릅니다. 바로 그래서 이 글을 쓰게 되었습니다.

기본 전제

먼저 몇 가지 분명히 해두겠습니다. 첫째, 이 글에서는 제가 사용한 특정 모델을 기준으로 설명하지만, 여기서 다루는 원칙은 어떤 프린터에나 적용됩니다. 나아가 세상의 모든 IoT 기기에 해당하는 이야기입니다. 예전에 라우터 설정과 보안에 관해 작성한 내용 역시 지금도 유효하며, 이 튜토리얼도 같은 철학을 따릅니다. 네트워크에 연결되는 모든 기기는 약간의 주의와 세심한 디테일로 다뤄야 합니다.

그렇다면 무선 연결이 가능한 프린터란 무엇일까요? 결국 예쁜 글자와 컬러 페이지를 뽑아낼 줄 아는 작은 컴퓨터이며, 동시에 웹 서버를 구동합니다. 업계 용어로는 EWS(Embedded Web Server, 임베디드 웹 서버)라고 부릅니다. '프린터가 알아서 집에 연락하고 잉크를 주문하며 각종 마법 같은 일을 한다'는 화려한 상상보다는 훨씬 밋밋하지만, 사실은 이것이 전부입니다.

그러나 중요한 의미 하나를 담고 있습니다. 웹 서비스를 구동한다는 것은 외부 연결 요청을 대기(listen)하고 있다는 뜻입니다. 따라서 반드시 보안을 확보해야 하며, 다행히 이 과정은 꽤 간단하고 심지어 재미있는 작업이기도 합니다. 지금부터 함께 살펴보겠습니다. 여러분의 IoT 기기에도 같은 방식을 적용하면, 기본 권한과 열린 포트, 빈 비밀번호 상태로 돌아가는 기기들에서 발생하는 불필요한 노출과 잠재적 위험을 크게 줄일 수 있습니다.

웹 서버 접속하기

프린터 설치를 마친 후에는 IP 주소를 통해 접근해야 합니다. IP 주소가 무엇인지 모르겠다면? 익숙한 사용자라면 네트워크 스캔으로 찾을 수 있습니다. 대부분의 경우 라우터 뒤편에 구성된 LAN의 내부 IP 주소일 것입니다. 라우터는 ISP에서 제공한 공유기일 수도, 스트리밍 박스일 수도 있으며, 여러 기기를 뒤편에 연결해 서로 통신하게 해주는 어떤 연결 장치든 상관없습니다. 또 다른 방법은 프린터 속성 창을 열면 브라우저가 함께 실행되는 기능을 활용하는 것입니다.

제 경우에는 프린터가 라우터 DHCP 테이블에서 가장 먼저 비어 있는 IP 주소를 할당받아 192.168.2.100이 부여되었습니다. 기본적으로 연결은 암호화되어 있지 않은데, 유선 네트워크로 데스크톱에서 접속한다면 큰 문제가 되지 않습니다.

팁 1: 프린터를 보안 설정할 때는 안전한 연결이 없을 수 있으므로, 설정을 마칠 때까지는 가능한 한 유선 네트워크로 작업하세요.

이 페이지에서는 프린터의 모든 측면을 구성할 수 있습니다. 어느 라우터의 메인 페이지와 다를 바 없으며, 각 옵션을 하나씩 꼼꼼히 살펴보며 무엇이 어떤 기능을 하는지 충분히 이해해야 합니다. 흥미로운 설정 대부분은 당연히 '도구(Tools)'와 '설정(Settings)' 항목 아래에 있습니다.

Wi-Fi Direct, AirPrint™

HP는 이 모델을 스마트폰이나 태블릿에서 손쉽게 인쇄할 수 있는 제품으로 홍보합니다. 그런데 이것은 실제로 무슨 의미일까요? 잘 생각해 보면 모바일 운영체제는 드라이버 설치에 매우 까다롭습니다. 앱 스토어에서 드라이버를 찾지 못하면 설치 자체가 불가능할 수 있고, 드라이버는 상승된 권한을 요구하며 설치 과정도 번거로울 수 있습니다.

그래서 등장한 대안이 모바일 기기를 위한 빠른 웹 방식 연결이며, Wi-Fi Direct와 AirPrint™가 바로 그 역할을 합니다. 아이디어 자체는 좋지만, 편의성을 우선하다 보니 안전하게 설계되기 어렵습니다.

실제로 Wi-Fi Direct는 기본 이름과 비밀번호를 사용하는데, 이 값들이 이 시리즈 프린터는 물론 수십 종의 다른 모델에서도 동일합니다. 흔한 admin:admin 설정과 다를 바 없습니다. 따라서 설정을 직접 수정하거나 기본값을 변경하고, 필요 없다면 아예 이 서비스를 비활성화하는 것이 좋습니다.

팁 2: 프린터에 활성화된 공유/연결 서비스가 있다면 기본 사용자 이름과 비밀번호를 반드시 변경하세요.

공정하게 말하자면, 이 서비스는 상당히 세세하게 조정할 수 있습니다. 활성화/비활성화는 물론, 연결 방식·이름·비밀번호·브로드캐스트 옵션·리포팅 등을 변경할 수 있어 상당히 유용합니다. 이것이 프린터를 부드럽게 강화(hardening)하는 첫걸음입니다. 해커가 순식간에 여러분을 장악할 것처럼 걱정할 필요까지는 없지만, 기본값 그대로 두는 것은 바람직하지 않습니다. 실제로 누군가 여러분의 네트워크나 프린터를 악용하지 않더라도, 그것은 스스로에게 그리고 더 넓은 인터넷 생태계에 대한 예의가 아닙니다.

AirPrint™는 Apple 제품을 위한 유사한 개념입니다. 심지어 기기에 위치 정보를 태그할 수도 있습니다. 다만 이 특정 프린터에서는 AirPrint™를 끄는 옵션이 없어 다소 불안했지만, 걱정할 필요는 없었습니다. 뒤에서 웹 인터페이스를 살펴보면 이 서비스와 그것이 의존하는 추가 서비스들을 비활성화할 수 있다는 것을 확인하게 됩니다.

IPP(Internet Printing Protocol)

이제 프린터 설정의 다음 단계로 넘어갑니다. Google Cloud Print는 잠시 후 다시 다룰 예정입니다. 첫인상상으로는 '인터넷'을 통해 인쇄하려면 이 기능이 필요할 것 같습니다. 하지만 아닙니다. 집 안 LAN 밖에서 프린터에 접근할 계획이 없다면 해당 프로토콜은 비활성화하세요.

팁 3: 필요 없는 서비스는 비활성화하세요.

User Access List는 누가 연결할 수 있는지를 지정합니다. 그러나 이것이 그렇게 현명한 방법은 아닐 수 있습니다. 접근 목록(access list)은 대개 우회하기 쉽기 때문입니다. 게다가 라우터에서 외부에서 들어오는 연결을 허용하도록 설정하지 않으면 사실상 인터넷에서 인쇄할 수 없습니다. 즉, 포트를 열어야 하는데, 이는 대부분의 사람에게 이상적인 선택이 아닙니다.

Bonjour

HP 3630에서 Bonjour는 고급 설정(Advanced Settings) 아래에 위치합니다. 이것은 Apple이 만든 제로컨피규레이션(zero-configuration) 네트워킹 구현체로, 프린터 같은 기기의 검색(discovery)과 이름 확인(name resolution)을 돕는 역할을 합니다. 다시 말해, Apple 제품을 사용하지 않거나 AirPrint™를 사용할 계획이 없다면 Bonjour를 비활성화해도 됩니다. Bonjour와 IPP를 함께 끄면 AirPrint™도 자연스럽게 꺼집니다. 이것으로 끝입니다.

기타 설정

인증서

일반적으로 대부분의 프린터는 관리자 비밀번호 변경 페이지처럼 보안 방식(HTTPS)으로 표시해야 하는 페이지에 자체 서명(self-signed) 인증서를 사용합니다. 인증서를 교체할 수도 있지만, 기존 연결이 초기화된다는 점을 유의하세요. 흔한 웹의 기본 동작입니다.

관리자 비밀번호

비밀번호 관리는 보통 .htaccess 파일 형태의 기본 인증으로 처리되며, 이를 통해 설정 페이지에 무단으로 접근해 설정을 망가뜨리는 행위를 차단합니다. 예컨대 제 프린터는 처음부터 비밀번호가 아예 설정되어 있지 않았습니다. 원하는 값으로 반드시 변경하세요. 팁 2를 기억하세요. 영화 로닌(Ronin)에서 말했듯이, CIA에서 가르치는 두 번째 교육 내용이 무엇이었죠? 또 하나, 일부 프린터는 비밀번호를 평문(clear-text)으로 저장할 수 있습니다. 따라서 은행 계좌 자격 증명과 같은 민감한 값을 사용하지 않는 것이 좋습니다. 알겠죠?

펌웨어 업데이트

프린터의 펌웨어를 최신 상태로 유지하는 것도 도움이 됩니다. 평소 저는 펌웨어 업데이트를 다소 경계합니다. 버그가 생기거나 기기가 벽돌(brick)이 되거나 설정이 초기화될 수 있기 때문입니다. 하지만 인터넷에 노출된 기기, 특히 서비스를 구동할 수 있는 기기에게는 업데이트가 중요합니다. 보급형 IoT 제품은 대개 보안이 허술하고 공격에 취약한 경우가 많으므로, 가끔씩 펌웨어 업그레이드를 고려하는 것이 좋습니다. 이것 역시 하나의 작은 컴퓨터이며, 여러분의 관심이 필요하다는 점을 잊지 마세요.

Google Cloud Print, Webscan 등 기타 서비스

Google Cloud Print는 단순하지 않은 기능이며, 기본적으로는 비활성화되어 있습니다. 프린터가 Google 서비스에 연결하고 고유 ID를 공유하도록 명시적으로 허용하기 전까지는 동작하지 않습니다. 따라서 직접 허용하지 않는 한 'ET처럼 집에 몰래 연락하는' 기능은 아닙니다.

Webscan도 마찬가지입니다. 로컬 네트워크 안에서만 사용할 것인지, 아니면 본인을 포함한 사람들이 인터넷을 통해 사용할 수 있게 할 것인지 선택하는 문제입니다. 물론 프린터가 하는 대부분의 작업은 라우터 설정과 방화벽 설정을 우회하지 못해, 활성화되어 있더라도 외부에서는 동작하지 않습니다. 그래도 히맨(He-Man)처럼 자신의 운명을 스스로 쥐고 있는 것이 언제나 좋습니다.

마지막으로 IPv4 대신 IPv6 사용 여부, 프록시 설정, 그리고 프린터가 알려질 네트워크 호스트명(hostname)도 고려해 보세요. 이유야 어떻든, 저는 이 부분에서 몬티 파이튼(Monty Python)과 블랙애더(Blackadder)가 떠올랐습니다. 프린터 이름은 Tim이나 Bob 정도가 어울릴 것 같네요.

마무리

여기까지입니다. 이 튜토리얼은 특정 프린터 모델 하나를 통해 무선 프린터와 일반적인 IoT 기기의 보안 기본 원칙을 보여주는 것이므로, 이 점을 잊지 마세요. 일부 옵션이나 기능, 설정이 존재하지 않거나 여러분의 기기가 이 글에서 다룬 모든 항목을 갖고 있지 않을 수 있습니다. 그렇다고 낙담할 필요는 없습니다.

소음과 과대광고, 수많은 약어와 상표명은 무시하세요. 여러분의 프린터는 물리적인 작업을 수행할 줄 아는 하나의 컴퓨터일 뿐입니다. 그 이상도 이하도 아닙니다. 웹 서버를 구동한다면 반드시 보안을 확보해야 합니다. 가능하다면 유선 연결 또는 HTTPS로 암호화된 무선 연결을 통해 설정하고, 불필요한 서비스는 비활성화하며, 기본 비밀번호·사용자 이름·식별 문자열을 변경하고, 펌웨어 업데이트도 고려하세요.

본질적으로 이것이 전부입니다. 물론 설정을 꼼꼼히 확인하고 조정하는 데 몇 시간이 걸릴 수 있습니다. 그리고 어떤 옵션을 끄는 것은 곧 기능이 줄어든다는 의미이기도 합니다. 적어도 '즉각적인 기능'은요. 제로컨피규레이션 서비스를 허용하지 않으면 태블릿이나 폰에서 인쇄가 안 될 수 있고, 인터넷 기반 기능을 허용하지 않으면 집 밖에서 이 기기를 사용할 수 없습니다. 결국 편의성, 보안, 과잉 경계, 위험 사이의 균형 문제입니다. 하지만 여러분이 이 글을 읽고 있다는 것 자체가 무선 프린터에 대해 조금은 신경 쓰이는 부분이 있다는 뜻일 것입니다. 이 튜토리얼이 그 안개와 불확실함을 조금이나마 걷어내는 데 도움이 되었기를 바랍니다. IoT 기기가 AI 기반으로 여러분을 감시하는 야생의 존재처럼 들릴 수 있지만, 동시에 유용하고 실용적인 현대적 도구이기도 합니다. 설정만 한 번 더 확인하세요. 이 가이드는 훌륭한 출발점이 될 것입니다. 여기까지입니다.

감사합니다.