1. 개요
최근 들어 한국을 겨냥한 랜섬웨어가 늘고 있다. 그중 비너스락커(VenusLocker) 랜섬웨어가 일정표로 위장해 유포되고 있어 사용자들에게 각별한 주의가 요구된다.
비너스락커 랜섬웨어는 바로 가기 파일 생성 시 확장자가 보이지 않는 점을 이용해 파일명에 .doc 를 붙여 워드 문서로 위장했다. 이는 정상 파일로 보이기 때문에 사용자는 아무 의심 없이 파일을 실행할 수 있다. 본 보고서는 비너스락커 랜섬웨어를 상세 분석하였다.
Word 문서로 보이는 바로 가기 “KCI교육과정.doc”에는 “KCI교육일정표.jpg”를 실행하는 명령어가 저장되어 있고 나머지 바로 가기에도 동일한 명령어가 저장되어 있다. 실제 워드 문서인 Korea.doc 역시 이 .jpg 파일을 실행하는 매크로가 저장되어 있다.
2. 파일 정보
구분 | 내용 |
---|---|
파일명 | KCI교육과정.doc.lnk / 신청서.doc.lnk / 분야별진행담당자.doc.lnk |
파일 타입 | LNK |
파일 크기 | 1,184 Bytes |
MD5 | 24e1d03cff3f6a8fbf2ddf89af45b3bd |
설명 | 랜섬웨어 실행 |
구분 | 내용 |
---|---|
파일명 | Korea.doc |
파일 타입 | DOC |
파일 크기 | 723,846 Bytes |
MD5 | 969d9589fe89d2a112b2cacf8f4cd1c2 |
설명 | KCI교육과정.doc 등 Ink 파일 실행 |
구분 | 내용 |
---|---|
파일명 | KCI교육일정표.jpg |
파일 타입 | EXE |
파일 크기 | 660,854 Bytes |
MD5 | 03f00b74694ac54071e52c252d2bb944 |
설명 | Anti VM, 파일 암호화, 비트코인 요구 |
3. 악성 행위
3.1. 분석 환경 검증
랜섬웨어는 여러 단계의 실행과정에서 자기 자신이 분석환경에서 실행되는지 검증한다. 분석환경으로 판단된다면 암호화를 하지 않는다. 분석 환경 검증은 2단계로 이뤄지며 검증 방법은 아래와 같다.
첫번째 실행과정에서는 아래에 해당하는 프로세스가 실행 중인지 확인한다.
WireShark : 네트워크 패킷 캡쳐 프로그램
Fiddler : 웹 디버깅 프로그램
WPR PRO : 네트워크 패킷 스니핑/편집 프로그램
Sandboxie : 가상 머신 프로그램
두번째 실행과정에서는 윈도우 관리 도구(WMI)를 사용하여 시스템 정보를 확인한다. “Select * from Win32.ComputerSystem” 쿼리의 결과값을 통해 가상 환경을 검증한다..
VIRTUAL
Vmware
VirtualBox
3.2. 파일 암호화
검증이 끝난 후 랜섬 웨어는 감염 PC의 이름, 사용자명, OS 버전, 국가 정보 등을 해쉬화하여 ID 생성 후 악성 서버로 전송한다. 이후 전송 성공여부에 따라 어떤 암호화 키를 사용할지 결정한다. 전송 실패 시 하드코딩된 키 값을 사용하고, 성공 시 랜덤한 키를 생성한다. 생성된 키는 RSA 암호화 후 악성 서버로 전송한다.
감염 PC 정보 전송 URL : http://31.207.44.155/create.php
암호화 키 전송 URL : http://31.207.44.155/keysave.php
암호화 키 생성 이후 Disk에 존재하는 파일을 암호화한다. 아래 그림은 암호화 대상 확장자로 총 511개가 있다.
위의 암호화 작업 이후 변경된 파일명은 두 가지가 있다. 이는 랜섬웨어가 파일 확장자와 크기를 비교해 암호화를 다른 방식으로 진행하기 때문이다. 조건은 다음 아래 표와 그림과 같다.
조건 | 특정 확장자일 경우 | 크기 2048byte 이하 | 두 조건 모두 해당 안됨 |
---|---|---|---|
확장자 | .VenusLf | .VenusLf | .VenusLp |
방식 | 파일 전체 암호화 | 파일 전체 암호화 | 앞의 1024byte 만 암호화 |
예) Revers.txt 파일의 크기가 10MB일 경우 확장자가 조건에 맞기 때문에 파일 전체를 암호화한다.
예) Revers.7z 파일의 크기가 1KB일 경우 크기가 조건에 맞기 때문에 파일 전체를 암호화한다.
예) Revers.7z 파일의 크기가 3KB일 경우 조건 모두 맞지 않기 때문에 앞 1024byte만 암호화한다.
3.3. 랜섬노트 생성 및 비트코인 요구
암호화를 마친 랜섬웨어는 아래 URL에서 .jpg 파일을 다운받는다. 다운 받은 파일에는 비트코인 입금 주소, Ransom 지불 문의 Email 등이 적혀 있다.
이후 랜섬노트 ReadMe.txt를 생성한다. 영어로 된 상세한 안내 글이 나오고 맨 위에는 다양한 언어로 번역된 안내문이 나온다. 특히 한국어로 된 페이지는 완성도가 높다.
랜섬웨어는 마지막으로 복호화 가능한 시간, 감염 PC의 ID, 비트코인 입금 주소를 알려주는 “VenusLocker” 프로세스를 실행시킨다. 몸값으로 한화 약 116만원 가량하는 1BTC을 요구한다. 이 안내창을 무시하고 종료하면 다시는 안내창을 볼 수 없다는 경고문을 띄운다.
4. 대응 방안
확장자 변경을 통해 사용자들의 눈을 속이는 방법은 파일 옵션 중 “알려진 파일 형식의 파일 확장명 숨기기” 옵션을 해제하면 예방이 가능하다. 하지만 이번 비너스락커 랜섬웨어 같은 경우 바로 가기 파일의 확장명이 보이지 않는 점을 이용하기 때문에 앞으로는 파일의 유형도 함께 확인한다면 이와 같은 악성코드는 예방할 수 있다.
- “알려진 파일 형식의 파일 확장명 숨기기” 옵션 해제한다.
- 파일 “자세히 보기” 설정한다.
- 출처가 불분명한 파일 실행은 하지 않는다.
- 사용하는 백신 제품을 최신으로 업데이트한다.
ReadMe.txt 파일중 비너스락커가 전혀 없습니다 어떻게 찾는건가요
질문을 더 구체화해 주시면 답변하기 수월하겠습니다.
ReadMe.txt 파일이 없다는 건가요? ReadMe.txt 파일 내에 Venus Locker 문자열이 없단건가요? 아니면 전혀 다른 뜻이라도…