랜섬웨어의 정의와 감염 경로 그리고 보호대책

Posted by taeho Tae-Ho
2017.02.11 16:21 정보보호

랜섬웨어란 무엇인가?

랜섬웨어는 "사용자의 동의 없이 컴퓨터에 불법으로 설치되어 사용자의 파일을 임의로 암호화한 뒤 복호화하기 위해서는 금전을 제공할 것을 강요하는데 이용되는 악성 프로그램"을 총칭하는 이름입니다.  우리나라에는 2015년을 전후하여 몇몇 유명한 커뮤니티를 통해 전파되어 큰 이슈가 되기도 하였습니다.   (관련 포스트 보러가기 : http://blogger.pe.kr/483)


랜섬웨어의 감염경로

제가 근무하던 직장이 보안 회사임에도 불구하고 2016년 말과 2017년 초 두 차례나 임직원의 PC에 랜섬웨어가 감염되어 문서파일들과 스프레드시트 파일, 이미지 파일 그리고 심지어 아웃룩 데이터파일까지 암호화 되어 있는 것을 목격하였을 만큼 최근의 랜섬웨어로 인한 피해는 상상을 초월하는 듯 합니다. 


하지만 두 사건 모두 피해자의 공통적인 답변은 "난 아무것도 한게 없다" 입니다. 의심스런 메일에서 파일을 다운로드 받거나 첨부된 URL을 클릭한 것도 아니고 P2P나 파일 다운로드 사이트에서 의심스런 파일을 다운로드 받아 실행한 적도 없다는 것입니다. 그런데도 랜섬웨어는 컴퓨터에 침입하여 중요한 정보가 담긴 파일들을 암호화하고 돈을 요구하는 팝업창을 띄웁니다.


랜섬웨어에 의해 암호화된 파일들랜섬웨어에 의해 암호화된 파일들



랜섬웨어가 감염되는 경로를 알아보면 다음과 같습니다.


1. 웹 서핑


최근 가장 흔한 경우 입니다. 이 경우 피해자는 "난 아무것도 한게 없다"고 말할 수 밖에 없습니다. 그리고 그 말은 사실일 수도 아닐 수도 있습니다. 단지 웹 서핑을 했을 뿐 파일을 다운로드 받지도 의심스런 URL을 클릭한 적도 없습니다. 그냥 뉴스를 보거나 커뮤니티에서 재미난 글들을 보고 있었을 뿐입니다.


이런 경우는 모두 "Drive-by Download" 라는 공격기법에 의해 랜섬웨어가 PC에 다운로드 되고 실행된 것이라고 봐야 합니다. "드라이브 바이 다운로드" 공격은 악성코드가 담긴 웹페이지를 보기만 해도 악성코드가 PC에 생성되거나 다운로드 됩니다. 


원인은 1. 브라우저 자체의 취약점 혹은 2. 브라우저에서 실행되는 플러그인의 취약점 입니다. 플러그인 이라함은 브라우저에서 실행되는 어도비 플래시 플레이어와 같은 플러그인 또는 ActiveX 컨트롤 등을 모두 포함합니다.

인터넷익스플로러(IE), 크롬(Chrome), 파이어폭스(FireFox) 등은 HTML, Java Script, 플러그인 등이 실행되는 하나의 운영체제와 같습니다. 때문에 많은 버그를 갖고 있으며 특정 버그는 보안상 취약점으로 악용되기도 합니다. 이 보안 취약점을 악용하면 브라우저나 브라우저 위에서 실행되는 플러그인(ActiveX 포함)에서 공격자(해커)가 원하는 악성코드(실행코드)를 실행시킬 수 있습니다. 1차로 브라우저나 플러그인을 공격하는 악성코드는 2차로 PC에 랜섬웨어나 다른 멀웨어(Malware)를 다운로드 받게 하거나 직접 생성할 수 있습니다.


2. 첨부 URL 클릭


이메일이나 네이트온이나 카카오톡과 같은 메신저 혹은 트위터나 페이스북 같은 SNS에 올려져 있는 URL을 클릭하는 순간 악성코드를 다운로드 받게되고 그 다운로드 받은 파일을 여는 순간 랜섬웨어나 멀웨어에 감염됩니다.


3. 파일 다운로드 및 실행


이 경우 또한 이메일이나 메신저 혹은 SNS에 첨부되어 있는 파일을 다운로드 받고 실행하거나 특정 유틸리티가 필요해 P2P나 파일공유사이트에서 파일을 다운로드 받고 설치하면서 악성코드가 함께 설치되는 경우입니다.


실제로 2번과 3번의 경우 많은 사람들이 위험성을 알고 있기 때문에 주의하는 반면 1번 웹서핑 중 사용자도 모르게 랜섬웨어나 멀웨어에 감염되는 경우에는 황당할 수 밖에 없습니다. 그래서 피해자들이 하나같이 "나는 아무것도 안했다"는 거짓말 아닌 거짓말을 하게 되는 것입니다.


랜섬웨어의 특징과 증상

많은 분들이 랜섬웨어에 대해 잘 알고 있는 듯 하지만 실제로는 잘 모르는 경우가 많습니다. 랜섬웨어의 특징을 몇가지 살펴보도록 하겠습니다.


1. 랜섬웨어는 백신에서 차단할 수 없다.


백신을 설치하면 랜섬웨어도 차단할 수 있다고 알고 있는 사람들이 많습니다. 하지만 이것은 80% 쯤은 거짓입니다. 오래된 랜섬웨어는 랜섬웨어 파일의 Hash 정보를 이용해 랜섬웨어가 실행되면 탐지하고 차단할 수 있지만 백신에 의해 차단될 때 쯤엔 변형된 새로운 랜섬웨어가 유행합니다. 랜섬웨어는 컴퓨터 바이러스나 자기복제형, 기생형 등 악성코드가 갖고 있는 악성코드의 특징을 거의 갖고 있지 않습니다. 그저 문서파일과 이미지파일 아웃룩 데이터파일 등을 찾아 암호화할 뿐입니다. 따라서 백신들이 자랑하는 알려지지 않은 악성코드를 차단하는 기능들로도 차단할 수 없습니다.


오히려 FireEye와 같이 샌드박싱 기술을 통해 웹에서 혹은 이메일에서 다운로드 받는 파일을 검사하는 것이 탐지를 용이하게 해줍니다. 하지만 이 또한 완전하지 않은데 그 이유는 In-Line 방식으로 다운로드를 잡아둘 수 없기 때문입니다. FireEye에서 랜섬웨어 임을 탐지하는 순간 이미 사용자 컴퓨터의 파일들은 모두 암호화된 이후일 가능성이 매우 높기 때문입니다. 반면 이메일의 경우 차단할 수 있는 가능성이 조금 더 높습니다. 이메일에 첨부된 랜섬웨어는 FireEye 혹은 메일게이트웨이 솔루션인 웹센스(WebSense)와 같은 메일게이트웨이에서 잠시나마 잡아둘 수 있기 때문에 첨부파일을 분석하고 차단할 수 있는 시간을 벌 수 있기 때문입니다.


2. 랜섬웨어는 스스로를 네트워크에 전파하지 않는다.


랜섬웨어는 앞에서도 말했든 대부분의 악성코드가 갖고 있는 특징적인 행위들을 하지 않습니다. 때문에 한대에 감염된 랜섬웨어는 내부 네트워크를 통해 전파되지 않습니다. (아직까지는....)  다만 A라는 컴퓨터에 랜섬웨어가 감염되면 컴퓨터 A의 디스크에 저장된 파일들을 암호화하고 컴퓨터 A에서 접근가능한 컴퓨터들 중 "공유폴더"가 있다면 그 공유폴더의 파일들도 암호화 합니다.  다만 그 공유폴더의 파일들이 "읽기"만 가능한 모드라면 암호화하지 못합니다. 만약 조직의 컴퓨터들 중 두대가 랜섬웨어에 의해 피해를 입었다면 두 사용자가 각각 따로 따로 랜섬웨어에 감염되었다고 생각해야 합니다. 랜섬웨어는 아직까지 스스로를 다른 컴퓨터에 감염시킨 사례가 보고된 적은 없습니다.


3. 랜섬웨어는 다양한 파일을 암호화한다.


랜섬웨어는 일단 컴퓨터에 설치되고 실행되면 주로 문서파일, 이미지파일, 아웃룩 파일 등 데이터가 담긴 파일들을 "확장자" 기준으로 검색하여 암호화 합니다. 그리고 실행된 컴퓨터에서 접근 가능한 네트워크 상의 "공유폴더"를 찾아 그 안의 파일들도 암호화를 시도합니다.

그리고 안티 랜섬웨어 기능들이 백신에 포함되어 있는데 최근에는 이 안티 랜섬웨어 기능을 우회하는 랜섬웨어들이 대부분입니다. 


* 안티랜섬웨어 기능


초기에는 드라이브의 최상위 폴더에 특수문자로 시작되는 폴더를 만들고 그 안에 미끼가 되는 문서파일과 이미지 파일을 만들고 이 파일들을 건드리는 프로그램이 있다면 랜섬웨어로 판단하고 차단하는 기능으로 시작하였으나 이후 랜섬웨어들이 이러한 미끼 폴더에 대해 우회하는 기능을 추가하였고 이에 따라 백신에서는 브라우저나 이메일클라이언트에서 다운로드되는 파일을 격리하고 샌드박스 및 클라우드 분석을 수행하는 등 진화하고 있으나 아직은 미완의 기능으로 보임.


랜섬웨어가 창궐하는 이유

최근 2~3년 사이에 랜섬웨어가 창궐하는 이유는 랜섬웨어가 변종을 만들기가 쉽기 때문이며 가장 큰 이유는 바로 비트코인 때문입니다. 


랜섬웨어는 사용자 몰래 파일을 암호화하고 사용자를 협박하여 복호화할 수 있는 툴을 판매하기 위한 악성 프로그램입니다. 하지만 비트코인 이전에는 피해자로부터 금전을 안전하게 수취하는 것이 쉽지 않았습니다. 일반 은행계좌의 경우 해커의 신분이 노출되는 것은 시간문제이며 직접 만나 금전을 받을 수도 없었습니다.


그런데 비트코인이 등장하면서 익명성을 내세워 비트코인으로 금전을 안전하게 수취할 수 있게 되었습니다. 실제로도 피해자와 해커의 중간에서 중계를 해주는 브로커가 인터넷에서 활동하고 있을 정도이며 브로커를 통해 돈을 주고 문서를 복구하는 사례도 일반에 알려진것 보다 많은 것으로 보입니다.


랜섬웨어의 예방법

랜섬웨어는 일단 감염되어 파일이 암호화되면 해커에게 돈을 지불하지 않고는 복호화할 수 없으며 파일 복구 업체들도 복구하지 못한다고 봐야합니다. 따라서 "예방"이 최선의 방법입니다.


다음과 같은 예방 수칙을 준수한다면 랜섬웨어 감염 가능성을 최소화 할 수 있으며 감염되더라도 안전하게 복구할 수 있습니다.


1. 출처가 불명확한 이메일과 URL 링크는 실행하지 말 것


보낸 사람의 이메일 주소가 처음보거나 모르는 사람일 경우 메일에 첨부된 파일을 클릭하거나 또는 URL 링크를 클릭하지 말 것. 이메일을 통해 랜섬웨어가 유포되고 있어 실행 주의 필요


2. 파일 공유 사이트 등에서 파일 다운로드 및 실행하지 말 것


파일공유 사이트 또는 중소규모 커뮤니티, 인터넷 카페 등 신뢰할 수 없는 사이트를 통한 파일 다운로드 및 실행 주의 필요


3. 보다 안전한 웹 브라우저 사용


흔히 사용하는 IE 브라우저는 크롬, 파이어폭스 등과 비교하여 보안성이 떨어지며 특정 웹사이트 접속을 위해 보안 수준을 최저 수준으로 낮춰 사용하는 경우가 빈번함. 그로인해 IE 브라우저를 통해 웹서핑을 할 경우 웹사이트를 통해 전파되는 악성코드에 감염될 가능성이 매우 높음.


따라서 불편하더라도 크롬, 파이어폭스 등을 브라우저로 사용하고 그룹웨어, 인터넷 뱅킹, 조달청 등의 접속시에만 IE를 사용할 것을 권장 


4. 중요 자료는 정기적으로 백업


·  중요문서(hwp, 사진, 오피스문서, 아웃룩 이메일파일 등) 주기적 백업

·  외부 저장장치(외장하드, USB 등)등을 이용한 중요 문서를 외부에 별도 저장

·  운영체제에서 제공하는 ‘사용자 파일백업 및 복원기능’을 이용하고, 외부 저장소에 이중백업 권장

·  PC 및 네트워크에서의 “공유 폴더” 사용 주의 (부득이하게 공유폴더를 타 사용자에게 제공해야한다면 "읽기 전용"으로 제공


5. PC에서 사용중인 소프트웨어는 정기적으로 최신 버전으로 업데이트


·  운영체제(OS)와 응용 프로그램(SW)은 최신 보안 업데이트 상태로 인터넷 접속

·  Flash Player의 주기적인 업데이트 : 설정/제어판 → Flash Player 설정 관리자 → 업데이트 탭 → 

   ‘Adobe가 업데이트를 설치할 수 있도록 허용(권장)’ 선택, 혹은 ‘지금 확인’버튼을 눌러서 직접 업데이트

·  Java의 주기적인 업데이트 : 설정/제어판 → JAVA 제어판 →업데이트 탭 → ‘자동업데이트 확인’ 선택, 

   혹은 ‘지금 업데이트’ 버튼을 눌러서 직접 업데이트

·  기타 응용프로그램들도 제품상의 최신 업데이트 기능 활용하여 업데이트


신고
이 댓글을 비밀 댓글로
  1. 덕분에 랜섬웨어가 감염되는 경로를
    알게 되었고~
    랜섬웨어 예방법을 평소에 열심히
    실천해야겠습니다. ^^
      • 2017.02.14 23:26
      비밀댓글입니다