10년 째 생존 중인 USB 메모리 속 유령들
보안 업무와 관계된 사람들이라면 보통 새로운 보안 위협에 대한 동향과 대응 방안에 관심을 갖는다. 하지만 10년 전 등장한 USB(Universal Serial Bus) 플래시 드라이브를 통해 전파되는 악성코드 피해도 여전히 발생하고 있다. 이 보고서에서는 최근 3년 동안 보고된 USB 플래시 드라이브 전파 악성코드의 특징과 자주 발견되는 몇 가지 악성코드에 대해 분석했다.
USB 플래시 드라이브는 국내에서 보통 USB 메모리로 불리며 2000년 처음 판매를 시작하고 곧 플로피 디스크를 급속히 대체해 현재 가장 널리 사용되는 이동식 저장 매체이다.
플로피 디스크보다 대용량이며 작은 크기로 내부 자료 유출 등의 문제가 발생해 USB 플래시 드라이브의 사용을 제한한 기업과 기관도 존재한다. 하지만 USB 플래시 드라이브 사용 제한 정책은 사용자들의 불편함 호소로 인해 모든 시스템에 적용하기에는 무리가 있다. 이러한 이유로 일부 기관과 기업에서는 예외 정책이 적용된 시스템을 운영하기도 한다.
USB 플래시 드라이브를 통해 전파되는 악성코드 피해는 다음과 같은 특정 분야에서 지속적으로 발생하고 있다.
- 제조 산업(저사양 혹은 구형 시스템)
- 특수 목적 시스템(ATM, POS 시스템, 키오스크)
- 공용 시스템(학교, 도서관 등)
- 보안 정책 예외 시스템 등
제조 산업 분야에서는 생산 공정에 문제가 없다면 기존 시스템을 계속 사용하고 있어 이미 서비스 지원이 중단된 Windows XP와 같은 운영체제(OS)가 여전히 사용된다. 하니웰(HoneyWell)에 따르면 USB 플래시 드라이브는 운영기술(Operation Technology, OT) 시스템에 두번째로 널리 사용되는 산업 벡터 취약점이라고 한다. 산업계와 ATM, POS 시스템, 키오스크 등의 특수목적 시스템도 저사양, 구형 운영체제를 사용하는 시스템이 운영되고 있다.

이들 분야에서는 유지보수를 위한 프로그램이나 데이터 파일을 USB 플래시 드라이브에 담아 시스템에 연결하는 과정에서 악성코드에 감염되는 사례가 발생한다. 아직 국내에서는 병원에서의 악성코드 감염 보고가 많지는 않지만 의료 장비도 구형 운영체제를 사용하는 경우가 있어 주의가 요구된다. 이들 시스템에는 보안 프로그램이 존재하지 않는 경우도 많아 길게는 몇 년 동안 감염된 상태로 시스템이 운영되기도 한다.
이 보고서에서는 최근 3년 동안 보고된 USB 플래시 드라이브 전파 악성코드의 특징과 자주 발견되는 몇 가지 악성코드에 대해 분석했다.
USB 플래시 드라이브 관련 악성코드의 진화
이동식 저장 장치에 대한 공격은 1980년대부터 시작되었다. 1980년대와 1990년대 초에는 플로피 디스크를 통한 부팅이 빈번했고 플로피 디스크가 바이러스 전파의 주요 경로였다. 요즘 시대에 플로피 디스크가 사용될까 싶지만 2019년까지 핵무기를 관리하는 시스템이 플로피 디스크로 운영되기도 했다. 하드디스크의 보급으로 플로피 디스크를 통한 부팅은 감소하고 Windows 시대가 되면서 부트 바이러스는 급격히 감소한다.
1990년대 중반 CD-ROM의 대중화와 함께 운영체제에도 사용자 편리를 위해 저장 매체를 삽입하면 지정된 파일의 자동 실행 기능이 추가되었다. 하지만 공격자들도 자동 실행 기능을 이용하기 시작했다. 1998년 4월 맥(Mac)에서 퀵타임 2.0(QuickTime 2.0)과 자동 실행(AutoPlay) 기능을 이용해 전파되는 오토스타트(AutoStart) 웜이 확산되었다. 이 웜은 한국에도 유입되어 맥(Mac)용 백신 프로그램이 제작되었다. CD 매체의 자동 실행 기능과 관련해 2005년 10월 소니 BMG 음반에 포함된 Windows 루트킷(Rootkit) 사건도 유명하다.
2000년 USB 플래시 드라이브가 출시되면서 플로피 디스크를 비롯한 다른 이동식 저장 매체를 대체하기에 이르렀다. 읽기와 쓰기가 가능한 새로운 이동식 저장매체의 확산과 자동 실행 기능은 악성코드 제작자에게 새로운 기회가 되었다. USB 플래시 드라이브에 오토런(Autorun.inf) 파일을 생성하고 USB 플래시 드라이브가 컴퓨터에 연결되면 악성코드가 자동 실행되는 웜은 2006년에 등장했고 2007년부터 본격적으로 문제가 되기 시작했다.
주요 USB 플래시 드라이브와 관련된 악성코드의 변화는 다음과 같다.
2006년 발견된 솔로우(Solow)는 비주얼 베이직 스크립트(Visual Basic Script, VBS)로 작성된 스크립트 웜으로, 처음 발견될 때는 어떠한 난독화도 없었다. 이 웜은 문자열이 난독화 되어 있지 않아 생성되는 파일 이름만 조금 다르거나 주석 등을 추가한 변형, 파일 복사 중 일부 코드 변화 등 다양한 변형이 발견된다.
오토런(Autorun.inf) 파일을 생성하고 전파되는 악성코드는 2007년부터 다양한 종류가 등장하고 널리 확산된다. 2008년과 2010년에는 보안 컨퍼런스에서 나눠준 USB 플래시 드라이브에서 악성코드가 발견되고 국제우주정거장(ISS)의 컴퓨터에서도 악성코드가 발견됐다.
2008년 11월 미군에서 Agent.BTZ 웜이 발견된다. 이 악성코드는 2011년에도 계속 문제되었다. 이 악성코드는 특정 국가의 지원을 받고 있다고 추정되는 툴라(Turla) 그룹의 악성코드로 알려져 있다. 이 악성코드의 최신 버전 4의 변형은 2020년 5월 한국에서도 발견되었다.
2008년 12월 발견된 컨피커(Conficker) 웜 변형은 CVE-2008-4250(MS08-067) 취약점을 이용해 전파되는 초기 버전에 오토런 기능을 이용해 USB 플래시 드라이브로도 전파된다. 컨피커 웜은 지금도 산업계에서 가장 흔히 볼 수 있는 악성코드로 MS08-067 취약점을 이용해 연결된 다른 시스템들도 감염시킨다. 이는 취약점이 발견되어 보안 패치가 발표되었음에도 불구하고 10년이 넘은 보안 업데이트가 적용되지 않은 시스템이 존재해 발생하는 문제이다.
초기에는 단순히 전파만 하는 형태였지만 일부 웜에는 정보 유출 기능이 포함된다. 2009년 발견된 오토런 웜(md5: d81569c475154ddf7ab32ce7af393866)은 한국 사용자를 목표로 했다. 이 악성코드는 시스템에서 한글 파일(HWP)을 포함한 여러 문서 파일을 수집한다. 이 변형이 만드는 오토런(autorun.inf) 파일에는 ‘폴더를 열어 파일 보기’, ‘열기’와 같은 한글이 포함되어 있어 한국어 사용자를 목표로 제작되었다고 추정된다.
2010년 발견된 스턱스넷(Stuxnet)은 USB 플래시 드라이브 취약점을 이용해 전파된다. LNK 취약점(CVE-2010-2568)을 이용해 윈도우 탐색기로 바로 가기 파일이 위치한 디렉토리를 열기만 해도 바로 가기 파일이 자동 실행된다. 국내에서도 2011년 LNK 취약점으로 전파되는 악성코드를 이용한 표적 공격이 발생한 바 있다.
USB 플래시 드라이브는 망분리 혹은 네트워크 분리(air-gap)된 시스템에서 데이터 복사에 이용된다. 공격자는 USB 플래시 드라이브에 주요 자료가 포함되어 USB 플래시 드라이브 내 정보를 유출하는 악성코드를 제작했다. 이런 공격 방식은 2010년부터 시도되었다. 2010년 악성코드에 감염된 상태에서 USB 플래시 드라이브를 연결하면 USB 플래시 드라이브의 파일을 압축해 네트워크로 전송하는 기능을 가진 악성코드가 국내에서 발견되기도 했다.
2009년 출시된 Windows 7부터 CD-ROM을 제외한 모든 드라이브 유형에서 자동 실행이 불가능하게 됐다. 새로운 Windows 운영체제의 보급으로 오토런(autorun.inf) 파일을 이용한 자동 실행 기능을 더 이상 사용할 수 없게 되자 악성코드 제작자들은 오토런(autorun.inf) 파일 생성이 아닌 바로 가기(LNK) 파일을 이용한 웜을 제작하고 2013년 이후에는 이것이 일반화 되었다. 이들 악성코드는 계속 진화해 단순히 LNK 파일을 만드는게 아니라 USB 플래시 드라이브 내 파일과 폴더를 트래시(.Trashes) 폴더로 이동시키고 파일과 폴더와 동일한 이름의 바로 가기 파일로 대체한다
(md5: 3f097745bc355e14961023392e369ed9). 이 악성코드는 시스템 설정을 변경해 숨김 파일을 보이지 않게 하고 트래시(.Trashes) 폴더 속성을 숨김으로 해 탐색기에서 볼 수 없게 한다.
2014년 1월 인터넷 미연결 지역에서도 USB 플래시 드라이브로 전파되는 악성코드가 발견되었다. 인터넷이 물리적으로 연결되지 않아 일주일에 한번 USB 플래시 드라이브에 백신 프로그램의 패치 파일이나 엔진 파일 등 유지보수에 필요한 파일을 담아서 사용하던 중에 발생했다.
2014년 틱(Tick) 그룹의 틱usb(Tickusb)는 USB 플래시 드라이브를 통해 국내 기업의 기밀 정보 등을 유출하려는 목적으로 제작한 악성코드로 2014년 봄부터 2017년 11월까지의 활동이 확인되었다. 악성 DLL 파일이 실행되면 특정 경로에 로그 파일을 생성하고 USB 플래시 드라이브 연결을 검사한다. 시스템에 USB 플래시 드라이브가 연결된 경우, 악성 EXE 파일을 실행하고 추가 파일을 다운로드하기도 한다. 악성 EXE 파일은 변형에 따라 조금씩 다른 기능을 수행하지만 일반적으로 USB 플래시 드라이브 내 파일의 정보를 수집한다. 일부 변형은 USB 플래시 드라이브 내 EXE 파일을 변조시킨다. 최종적으로 변조된 EXE 파일이 있는 USB 플래시 드라이브를 다른 시스템에 연결한 후 해당 파일을 실행하면 해당 컴퓨터도 틱usb에 감염된다. 2015년 4월에는 틱usb의 변형인 Cryptbase.dll이 발견되었다. 다른 틱usb 변형과 달리 DLL 파일 단독형이다. Windows 정상 CRYPTBASE.dll 파일과 동일한 익스포트(Export) 함수를 가지고 있으며, 발견된 파일 경로가 %ProgramFiles%\common files\java\java update\cryptbase.dll이다. 이를 통해 이 악성코드가 자바 관련 프로그램이 실행될 때 로딩되었을 것으로 추정할 수 있다.
2015년 6월 1일 발생한 공격에서는 DLL 파일과 EXE 파일로 구성된 변형이 발견되었다. 공격자는 브라더(Brother) 프린터 드라이버 파일인 BrSrMonW.exe을 패치하여 해당 파일이 실행될 때 악성 DLL 파일인 BrWeb.dll을 로드하도록 했다. EXE 파일에는 USB 플래시 드라이브에서 EXE 파일을 찾아 변조시키는 기능이 추가되었다. 2016년 10월에는 Tickusb의 변형인 wincrypt.dll(md5: 16572393021beea366679e80cc78610c)가 발견되었으며, 동일한 파일
이름을 가진 변형은 2017년 11월까지 확인되었다.
2014년 6월부터 닷넷(.NET)으로 작성되고 오토런(autorun.inf) 파일로 전파되는 닷로거(Dotlogger)가 발견된다. 이 악성코드는 키로거 기능이 함께 있으며 2017년 발견된 변형(md5: 664b3007c043c26cff911d8b400bd0bf)은 국내 백신 프로그램을 중단시키는 기능을 갖고 있다. 2016년 이후 발견되는 웜은 암호 화폐를 채굴하는 코인마이너(CoinMiner) 악성코드를 추가적으로 다운로드하여 실행하기도 한다.
2020년에도 트렌드 마이크로(Trend Micro)에서 USBferry, 이셋(ESET)에서 Ramsay, 카스퍼스키(Kaspersky)에서 Compfun와 USBCulprit 등 USB 플래시 드라이브 내 자료를 훔치거나 USB 플래시 드라이브를 통해 망분리 시스템을 노린 악성코드 정보를 공개했다.
USB 플래시 드라이브 악용한 악성코드의 기법과 전술
공격자는 악성코드를 전파하고 자신을 보호하기 위해 여러가지 방법을 사용하고 있다.
1. 전파 - autorun.inf 생성
CD-ROM이나 USB 플래시 드라이브에 컴퓨터에 연결될 때 오토런(autorun.inf) 파일이 지정한 특정 파일을 자동 실행되는 기능을 Windows 95부터 지원했다. 공격자는 이 기능을 악용해 이동식 디스크에 오토런 파일을 만들고 악성코드가 자동으로 실행되게 했다.
이동식 디스크에 오토런 파일을 생성하고 특정 파일을 실행하는 악성코드는 2006년(2005년 이전도 가능) 최초 발견되었으며 USB 플래시 드라이브, 메모리 카드, 외장 하드 등의 이동식 저장 장치에 오토런 파일을 생성한다. 오토런 파일에 쓰레기 값을 추가해 진단을 방해하기도 한다. 하지만 Windows 7 이후에는 이 방법으로 더 이상 자동 실행되지 않는다.
2. 전파 - 실행 유도
Windows 7 이후의 운영체제에서는 오토런 파일을 이용한 자동 실행 기능을 더 이상 사용할 수 없게 되면서 공격자는 기존에 존재하는 파일의 바로 가기(Shortcut) 파일을 만들거나 폴더와 동일한 아이콘 모양을 가진 파일을 생성해 사용자의 클릭을 유도한다. 이동식 디스크 내 존재하는 폴더나 파일 혹은 폴더와 파일 모두를 숨김 속성으로 변경되고 폴더나 파일과 동일한 이름의 바로 가기 LNK 파일을 생성한다.
LNK 파일에는 다음과 같은 내용으로 악성코드가 실행되게 한다.
사용자는 바로 가기 파일을 원래 USB 플래시 드라이브에 존재하는 파일로 착각해 클릭한다. 일부 악성코드는 레지스트리 내용을 변경해 ‘바로 가기’ 아이콘에서 화살표 모양을 제거해 사용자가 바로 가기로 알기 어렵게 한다.
3. 전파 – USB 플래시 드라이브 내 실행 파일 감염
망분리 된 시스템에서도 파일 복사를 위해 USB 플래시 드라이브가 사용되기도 한다. 일부 악성코드는 이 점을 노려 USB 플래시 드라이브 내 실행 파일을 변조해 내부 시스템 침입을 시도한다. 공격자는 인터넷이 연결된 시스템에 악성코드를 감염시키고 USB 플래시 드라이브가 연결될 때 USB 플래시 드라이브 내 EXE 파일을 감염시킨다.
USB 플래시 드라이브가 외부와 단절된 시스템에서 사용되고 악성코드가 실행되면 정보를 수집해 USB 플래시 드라이브에 저장하고 그 USB 플래시 드라이브가 인터넷 연결 시스템에서 사용될 때 정보를 유출할 수 있다.
일부 틱usb 변형은 USB 플래시 드라이브에서 확장자가 EXE인 실행 파일을 찾아 변조한다. 변조된 EXE 파일은 엔트리 포인트가 수정되어 특정 코드를 실행하게 되며, 파일 끝에 추가된 실행 파일을 실행시킨다.
4. 보안 USB 플래시 드라이브 공격
국내 기업의 내부 정보 유출을 목적으로 한 틱usb 공격의 경우, 기업에서 사용 중인 보안 USB플래시 드라이브를 감염시켜 이를 악성코드 전파 경로로 이용하는 방식을 사용한 점으로 미루어 이들은 국내 IT 환경 및 인프라를 이미 상당한 수준으로 파악한 것으로 보인다.
2012년에서 2014년 사이에 발견된 일부 틱usb는 국내 기업의 특정 보안 USB 플래시 드라이브가 연결되어 있을 경우 해당 USB 드라이브의 특정 영역에서 데이터를 읽어 실행하는 것이 확인되었다. 해당 보안 USB 플래시 드라이브에는 어떤 코드가 담겨 있는지 알 수 없지만 공격자는 USB 플래시 드라이브 제조 단계에 악의적인 코드를 주입했을 수 있다. 이와 같은 공격 방식은 망분리 된 기업 시스템을 공격하기 위한 목적으로 추정된다.
5. 난독화
스크립트로 작성된 악성코드는 분석이나 진단을 어렵게 하기 위해 코드의 일부분 혹은 대부분은 난독화 한다. 2009년 발견된 솔로우(Solow) 변형은 일부 문자열을 암호화했다. 2010년 이후 스크립트로 제작된 악성코드는 대부분의 코드가 난독화 되어 있다.
6. 자기 보호
여러 프로세스를 실행해 서로 실행 유무를 확인하고 만약 하나의 프로세스가 종료되어도 다시 실행해 사용자가 악성코드 제거를 어렵게 한다. 일부 악성코드는 유저모드 은폐 기능을 포함하기도 한다. 사용자의 발견을 어렵게 하기 위해 분석 도구, 레지스트리 편집기, 시스템 구성 프로그램 등을 실행하지 못하게 하기도 한다.
최근 국내 활동 사례
2018년 이후 안랩에 수집된 USB 플래시 메모리를 통해 전파되는 악성코드는 다음과 같다.
2018년~2020년 활동이 보고된 악성코드를 통해 10년 전에 발견된 악성코드가 여전히 활동하고 있음을 알 수 있다.
이들은 새로운 악성코드가 아니라 대부분 기존 백신 프로그램으로 진단/치료(삭제)에 문제 없는 경우가 대부분이지만 백신 프로그램을 설치하기 어려운 저사양 시스템, 안정성을 이유로 프로그램 설치가 제한되는 제조 업체의 생산 설비, POS(Point of Sales) 시스템 등이 대부분이다. 따라서 실제 악성코드 감염 피해는 더 크다고 볼 수 있다.
USB 플래시 드라이브 내 파일을 LNK 파일로 교체하는 공격 방식은 현재도 유효한 공격 방식이다. 2019년 매장 POS 시스템에서 이상 패킷이 포착되어 확인해 본 결과 악성코드가 발견되었다. 해당 시스템은 2018년 유지 보수를 위해 연결된 USB 플래시 드라이브 내 LNK 파일을 시스템 설정 변경 파일로 착각해 악성코드(md5: a23f2799d70decce3fa37db9a7c0a9d1)에 감염되었고 다른 시스템에서는 Palevo 웜(md5: d027b6120806146d04d20585b612fe6b)이 발견되었다.
생산 설비 시스템과 POS 시스템 같은 특수목적 시스템은 10년 이상 운영되기도 하며 악성코드에 감염된 상태에서 몇 년 동안 그대로 운영되기도 한다.
최근 국내 활동 웜 분석
2018년 이후 국내에서 활동이 확인된 USB 플래시 드라이브 관련 악성코드 4개를 분석했다.
1. Yuyun 분석
Yuyun 웜은 2008년 말 인도네시아에서 제작되었으며 국내에는 2009년 6월 처음 발견되었다.
2015년 이후에도 여러 국내 기업에서 꾸준히 감염이 보고되고 있다. 국내 기업의 중국, 베트남 법인에서도 감염 보고가 있어 이 악성코드는 여러 나라에 퍼져 있다.
이 악성코드는 비주얼 베이직(Visual Basic) 스크립트로 작성되었으며, VBS 코드의 일부는 암호화되어 있다.
2. Imaut 분석
Imaut 웜은 2009년 5월 처음 발견되었으며 관련된 변형이 2010년 2월 발견된 악성코드로 비주얼 베이직으로 작성되었다. 1천개 이상의 변형이 존재하는데 일부는 웜 파일이 복사 중에 일부 데이터가 변경되거나 바이러스에 감염되거나 치료 과정 중 코드가 수정되기도 했다. 이는 확산되면서 코드가 일부 수정된 여러 변형이 생긴 것으로 추정된다.
이 악성코드는 이동 디스크의 폴더를 찾아 폴더 이름과 동일한 이름의 EXE 파일을 생성한다. 악성코드 아이콘이 폴더와 유사해 사용자로 하여금 폴더로 착각해서 클릭하도록 유도한다. 파일 이름으로 감염된 곳을 일부 추측할 수 있다. 이렇게 확인한 바로는 금형 업체, 교회, 법률, 학교 등에서 감염이 일어난 것으로 추정된다.
이 악성코드의 또다른 특이점은 프로세스를 생성하고 서로 모니터링해 하나의 프로세스가 종료되면 새로운 프로세스를 실행해 사용자가 악성코드 종료를 어렵게 한다.
악성코드 내 [그림 4]와 같은 특징적 문자열을 포함하고 있다. ‘Chuc mung, ban da tam thoi thoat khoi Worm DungCoi’ 는 베트남어로, ‘생일 축하. 이제 DungCoi 웜을 종료했습니다’라는 문자열을 포함하고 있다.
3. Palevo와 Bflient 분석
Palevo 웜은 Morphex 등으로도 불리며 2009년에 처음 발견된 웜이다. 초기 버전은 당시 분석 보고서를 통해 확인 할 수 있는데 이들 버전은 ‘BF1.30’ 등의 특징적 문자열을 포함하고 있다([그림 5] 참고).
Palevo 웜은 오토런(autorun.inf)를 이용한 USB 플래시 드라이브, P2P 서비스, 메신저 등을 통해 전파되며 디도스 공격 기능을 수행한다. 2010년 2월이 이 웜으로 마리포사(Mariposa) 봇넷을 운영하던 조직원들이 검거되어 5년 형을 선고 받았다.
국내에서 자주 보고되는 변형은 초기형이 아니라 2010년 이후 발견된 변형(md5: cb9b8d4943e85553dfd9a1aee7d1878f, 18f3a44388176725ab179cac6309fd46)이다.
Bflient는 초기 Palevo 웜과는 전파 방법과 기능 측면에서 차이가 있다. Bflient 웜은 P2P 서비스를 통해 전파되는 기능은 제외되었고 디도스 공격 대신 광고 사이트로 연결된다고 한다.
4. Retadup 분석
Retadup 악성코드는 암호 화폐 채굴을 목적으로 제작된 웜으로 오토핫키(AutoHotKey) 스크립트로 작성되었다. 오토핫키 스크립트를 실행시킬 수 있는 오토핫키 포터블(Portable) 프로그램과 같이 배포된 것으로 추정된다.
해당 악성코드가 실행되면 먼저 C:\ 드라이브뿐만 아니라 다른 드라이브에 LNK 파일 생성 및 악성코드가 전파된다. 이 악성코드가 전파될 때, 스크립트 일부를 바꾸기 때문에 전파될 때마다 스크립트 파일 해시 값이 변경되는 특징을 가진다. 전파한 뒤 컴퓨터 정보를 C&C 서버로 전송 후 명령어를 받아 파일 다운로드 및 실행과 같은 추가 피해를 일으킬 수 있는 악의적인 동작을 수행한다.
이 보고서를 작성한 시기에는 C&C 서버가 동작하지 않았지만 트렌드 마이크로(Trend Micro)의 ‘Monero-Mining RETADUP Worm’ 관련 보고서에 의하면 ‘script-‘ 명령어로 모네로 코인을 마이닝하는 오토핫키 스크립트를 ‘radnsasdxxx.txt’ 파일로 다운받아 실행하는 추가 악성 행위가 이루어졌다.
대응 및 예방
V3 제품군에서 ‘CD/USB 드라이브 자동 실행 방지’ 기능과 ‘USB 드라이브 자동 검사’ 기능을 활성화하면 USB 플래시 드라이브가 연결될 때 자동 실행을 방지하고 알려진 악성코드를 진단할 수 있다.
파일이나 폴더로 가장한 LNK 파일을 실수로 클릭할 가능성을 낮추기 위해 탐색기 ‘보기’ -> ‘자세히’를 선택해 유형을 표시하고 ‘알려진 파일 형식의 파일 확장명 숨기기’를 비활성화해 확장자를 볼 수 있게 하는게 좋다. ‘폴더 옵션’에서 ‘숨김 파일 및 폴더’에서 ‘숨김 파일, 폴더 및 드라이브 표시’를 선택해 악성코드가 숨긴 파일을 볼 수 있게 한다.
USB 플래시 드라이브를 통해 전파되는 악성코드는 제조 산업 분야에서 꾸준히 감염이 보고되고 있다. 많은 기업에서 보안 정책상 생산 공정 내부로 USB 플래시 드라이브를 반입할 때는 백신 프로그램으로 검사해야 하지만 실제로는 이런 절차를 무시해 생산 설비가 악성코드에 감염되는 종종 보고된다.
생산 설비나 특수목적 시스템은 그동안 외부와 인터넷이 연결되어 있지 않아 상대적으로 보안에 소홀했는데 랜섬웨어 공격으로 생산 공정이나 서비스가 중단되는 일이 발생하며 외부에 보안 문제가 알려지기 시작했다. 하지만, 생산 설비와 특수목적 시스템이 USB 플래시 드라이브를 통해 전파되는 악성코드 피해는 10년 이상 보고되고 있었다. USB 플래시 드라이브를 통해 악성코드가 전파되는 기법은 오래되었고 이들 시스템을 목표하지 않았고 백신 프로그램에서도 진단되어 새롭지도 않아 별일 아닌 문제로 생각하기 쉽다. 하지만, 공격자가 특정 산업이나 서비스를 목표해 악성코드를 제작한다면 심각한 문제가 발생할 수 있다.
백신 프로그램에서 진단 가능하고 구형 시스템에서만 원활하게 동작할 수 있는 이들 악성코드가 10년 이상 특정 산업에서 왕성히 활동하고 있다는 점에서 몇가지 교훈을 얻을 수 있다. 여전히 많은 사람들이 백신 프로그램 설치와 같은 최소한의 보안을 수행하고 있지 않고 내부로 반입되는 저장 매체에 대한 보안 정책이 지켜지지 않고 있다는 점이다. 내부 시스템이 USB 플래시 메모리를 통해 악성코드 감염되기 전에 막을 수 있는 여러 기회가 있다. 첫째, 유지보수 담당자의 컴퓨터에 악성코드가 감염되지 않았다면 USB 플래시 드라이브가 악성코드에 오염되지 않았다. 대부분 신종 악성코드가 아니기 때문에 백신 프로그램만 설치되어 있어도 감염을 막을 수 있다. 둘째, 유지보수 담당자가 가져온 USB 플래시 드라이브를 내부에 반입할 때 백신 프로그램으로 검사 했다면 내부 유입을 막을 수 있다. 셋째, 시스템에 백신 프로그램이나 화이트리스트 기반 보안 프로그램이 설치되어 있었다면 악성코드가 감염되지 않을 수 있다.
새로운 보안위협에 대한 대비도 중요하지만 이미 관련 보안 패치도 나와 있고 백신 프로그램 진단/치료도 가능해 정해진 보안 정책만 잘 지켜도 피해를 줄일 수 있는 과거 악성코드의 대응이 더 쉽지 않을까 싶다.
- AhnLabTI개발팀 차민석 수석연구원, 이영훈 주임연구원