구멍뚫린 SSD 보안 "하드웨어 자동 암호화 취약"

크루셜 MX300, 삼성전자 850 EVO 등 일부 제품에 '오류'

홈&모바일입력 :2018/11/08 17:01    수정: 2018/11/08 21:08

크루셜(마이크론)과 삼성전자 SSD의 하드웨어 자동 암호화 기능이 쉽게 무력화된다는 사실이 드러났다. 네덜란드 라드바우드 대학 연구진이 이번 달 초 공개한 논문을 통해 이와 같이 밝혔다.

크루셜(마이크론)·삼성전자 SSD 제품에서 암호화 취약점이 발견됐다. (사진=마이크론)

해당 논문에서 문제가 있는 것으로 밝혀진 제품은 크루셜 MX300과 삼성전자 850 EVO 등 총 7개 제품이다. 특히 크루셜 MX300과 삼성전자 850 EVO는 가격 대비 성능이 높아 국내 소비자들이 해외 직구로 많이 구입하는 제품이기도 하다.

■ 보안 강화 위한 SSD 자동 암호화 '무용지물'

SSD 암호화는 데스크톱 PC나 노트북에 설치된 SSD를 분리해 다른 PC에 연결했을 때 저장된 데이터를 쉽게 훔쳐보지 못하게 하는 용도로 쓰인다.

예전에는 PC의 프로세서와 메모리를 이용해 파일을 암호화했다. 그러나 메모리 해킹 우려가 불거진 최근에는 SSD에 내장된 컨트롤러 칩을 이용해 데이터를 암호화하는 방식이 대세가 됐다.

라드바우드 대학 연구진은 이 기능을 갖춘 SSD 중 일부 제품에 보안 문제가 있다는 사실을 발견했다.

■ 삼성전자 "일부 PC에서만 발생할 수 있는 문제"

PC의 기본적인 동작을 제어하는 바이오스(BIOS)는 하드디스크 드라이브나 SSD로 부팅할 때 이용자에게 물어보는 비밀번호를 두 가지로 설정할 수 있다. 하나는 '이용자 비밀번호'(User Password), 또 다른 하나는 '마스터 비밀번호'(Master Password)다.

이용자 비밀번호는 일반 PC 이용자, 마스터 비밀번호는 PC 관리자를 위한 것이다. 대부분의 경우 마스터 비밀번호만으로도 부팅에는 큰 문제가 없다. 중요한 것은 이용자 비밀번호의 보호 수준이다.

보안 취약점이 발견된 삼성전자 850 EVO SSD. (사진=삼성전자)

이용자 비밀번호 보호 단계는 '높음'(High)과 '최대'(Maximum) 중 하나로 설정할 수 있다. '높음'이라면 마스터 비밀번호만으로도 잠금 상태를 해제 가능하다. 그러나 '최대'일 경우 마스터 비밀번호로 이를 초기화할 수 없다.

이 상태에서 이용자 비밀번호를 분실할 경우 하드디스크 드라이브나 SSD에 담긴 내용을 불러올 방법이 없으며 완전 초기화 이외에는 해결 방법이 없다. 그런데 일부 PC는 이용자 비밀번호의 보호 모드를 '최대'로 설정할 수 없다.

그러나 각 제조사가 업데이트용으로 공개한 펌웨어를 분석한 결과, 라드바우드 대학 연구진은 이용자 비밀번호를 몰라도 암호화 해제가 가능하다는 사실을 발견했다. 이에 대해 삼성전자는 "이용자 비밀번호 보호 단계가 '높음' 단계로 고정된 일부 PC에서만 해당 문제가 일어난다"고 반박했다.

크루셜 MX100, MX200과 삼성전자 T3 포터블 SSD는 제품 개발 단계에서 기기 점검이나 디버깅에 쓰이는 특수 단자인 JTAG 단자 기능을 실제 출시된 제품에서도 차단하지 않았다. 이 단자에 케이블을 연결한 다음 각종 명령어를 전송하면 역시 암호화 해제가 가능하다.

크루셜 MX100에 내장된 JTAG 단자. 기기 점검이나 디버깅 등 개발 단계에서 쓰인다. (그림=PDF 캡처)

■ 윈도 암호화 프로그램 '비트로커'도 문제

라드바우드 대학 연구진은 SSD 제조사 뿐만 아니라 마이크로소프트 윈도 운영체제에 내장된 암호화 프로그램인 비트로커(BitLocker)에도 문제가 있다고 설명했다.비트로커는 마이크로소프트가 2009년 윈도7부터 적용한 드라이브 암호화 프로그램이다. 주로 프로페셔널, 엔터프라이즈 등 기업용이나 전문가용 제품에서만 작동한다.문제는 비트로커 프로그램이 SSD를 암호화할 때 일어난다. 비트로커가 SSD를 암호화할 때 자동 암호화 기능을 갖추고 있다면 기존 소프트웨어 방식이 아닌 SSD 내장 암호화 알고리듬을 적용한다. 따라서 암호화 과정에 문제가 있는 제품이라면 사실상 암호화를 하지 않은 것과 마찬가지 상태가 된다.

■ "SSD 업데이트·오픈소스 암호화 프로그램 써라"

라드바우드 대학 연구진은 이 보고서에서 대안으로 "SSD 제조사의 검증되지 않은 암호화 기법, 혹은 윈도 운영체제의 비트로커 대신 오픈소스 암호화 프로그램인 베라크립트 등을 이용하라고 권고했다.

이들 암호화 프로그램이 암호화를 위해 적용하는 프로세서 내 명령어 AES-NI도 충분히 납득할 만한 성능을 가져다 준다는 이유에서다.

삼성전자 T1 포터블 SSD는 서비스센터에서 펌웨어를 업데이트해야 한다. (그림=씨넷)

단, 이번에 공개된 보안 취약점은 랜섬웨어나 악성코드 등 온라인 해킹이나 컴퓨터 바이러스와는 무관하다. 어디까지나 제품을 PC 내부에서 분리한 다음 직접 연결할 경우에만 문제가 된다.

삼성전자는 "네덜란드 국립사이버보안센터에서 일부 SSD 제품에 보안 취약점이 있다는 내용을 접수받았으며 관계 기관과 협조하여 해결 대책을 마련했다"고 설명했다.

관련기사

840 EVO, 850 EVO 등 내장형 SSD 제품은 자동 암호화 기능 대신 무료 소프트웨어로 암호화 기능을 이용해야 하며 T3·T5 등 포터블 SSD 제품은 전용 소프트웨어를 통한 펌웨어 업데이트가 필요하다. T1 제품은 가까운 서비스센터에서 제품을 업데이트해야 한다.

마이크론은 "이미 MX100과 MX200 등 펌웨어를 업데이트하였으며 MX300 펌웨어 역시 오는 13일(미국 현지시간) 공개할 예정"이라고 밝혔다. 또한 MX500은 해당 문제의 영향을 받지 않는다고 설명했다.