안녕하세요? 이스트시큐리티입니다.
최근 다양한 랜섬웨어가 지속적으로 유포되고 있는 가운데 2017년 9월에 활동했던 Paradise 랜섬웨어 변종이 새롭게 발견되었습니다. 이번에 발견된 Paradise 랜섬웨어는 기존과 마찬가지로 사용자의 중요 파일을 암호화하고 파일 확장자를 .paradise로 변경합니다. 시스템 운영에 필요한 일부 파일을 제외하고 확장자 상관없이 모든 파일을 암호화하기 때문에 감염되면 큰 피해를 입을 수 있으므로 사용자의 주의가 필요합니다.
따라서 본 보고서에서는 새롭게 발견된 Paradise 랜섬웨어를 상세 분석하고자 합니다.
악성코드 상세 분석
1. 시스템 언어 및 국가 코드 확인
Paradise 랜섬웨어는 감염될 사용자 PC의 시스템 언어와 IP주소 대역의 국가 코드를 확인하여 암호화 여부를 결정합니다. 다음과 같은 언어를 사용하는 PC에 대해서는 암호화를 진행하지 않으며, 이 외의 언어를 사용하는 PC에 대해서만 암호화를 진행합니다.
[그림 1] 암호화 제외 시스템 언어
사용자 PC의 IP 주소 대역을 조회하여 국가 코드를 확인하고, 다음과 같은 국가 코드를 사용하지 않을 경우 암호화를 진행합니다.
[그림 2] 암호화 제외 국가 코드
[그림 3] 사용자 IP 주소 대역 조회
2. 프로세스 종료
다음과 같은 문자열을 가진 경로 및 프로세스를 제외하고 현재 실행 중인 모든 프로세스를 종료합니다. 이는 실행 중인 프로세스에서 특정 파일에 접근 중일 때 정상적으로 암호화가 되지 않는 것을 방지하기 위한 행위로 보입니다. 또한, 디버거 및 분석 툴 등을 종료 시켜 정상적인 분석을 방해하고, Windows하위에서 실행된 파일을 제외하여 비정상적인 시스템 오류를 방지합니다.
C:\\Windows
chrome.exe
firefox.exe
iexplore.exe
launcher.exe
[표 1] 프로세스 종료 제외 문자열
3. 파일 생성
특정 경로 하위에 파일 암·복호화에 필요한 사용자 식별 ID 및 키 값 등을 파일로 생성합니다.
생성 파일명 |
생성 경로 (Windows 7 x86 기준) |
ID_CLIENT_help@badfail.infot.txt |
C:\Users\[사용자 PC명]\Documents |
paradise_key.bin |
|
paradise_key_pub.bin |
|
PARADISE_README_help@badfail.info.txt |
Windows를 제외한 모든 폴더 |
Paradise.png |
C:\Users\[사용자 PC명]\AppData\Roaming |
[표 2] 생성 파일 및 생성 경로
3.1 ID_CLIENT_help@badfail.info.txt
감염PC를 식별하기 위한 0x32 byte 랜덤 ID값을 ‘ID_CLIENT_help@badfail.info.txt’파일로 생성합니다.
[그림 4] ID_CLIENT_help@badfail.info.txt 파일 생성 코드
3.2 암호화 키 파일 생성
Paradise 랜섬웨어는 암호화를 위해 고유한 RSA-1024키를 생성하고, 이 키를 이용해 모든 파일을 암호화하는데 사용합니다. 다음과 같이 ‘paradise_key.bin’과 ‘paradise_key_pub.bin’파일을 생성합니다.
[그림 5] RSA 키 파일 생성 코드
3.3 PARADISE_README_help@badfail.info.txt
암호화가 진행된 각 폴더 마다 ‘PARADISE_README_help@badfail.info.txt’ 파일을 생성합니다. 이 파일은 사용자에게 감염 사실을 알리고 사용자 식별 ID와 함께 공격자와 접촉할 수 있는 메일 주소를 안내합니다.
[그림 6] PARADISE_README_help@badfail.info.txt 파일 생성 코드
[그림 7] PARDISE_README_help@badfail.info.txt 내용
4. 파일 암호화
다음과 같은 문자열을 가진 경로와 파일에 대해서는 암호화를 진행하지 않습니다. 특히 브라우저 관련 파일은 암호화 하지 않음으로써, 복호화를 위해 공격자와 메일로 접촉할 수 있는 최소한의 환경을 유지하기 위함으로 보입니다.
암호화 제외 경로 문자열 |
Opera Mozilla Firefox Google\chrome\application Internet Explorer |
[표 3] 암호화 제외 경로 문자열
또한, 공격자가 직접 생성한 파일에 대해서도 암호화를 진행하지 않습니다. 랜섬노트에 필요한 이미지 파일과 복호화에 필요한 키 값과 사용자 식별 ID 값 등이 포함되어 있습니다.
암호화 제외 파일 문자열 |
paradise.png paradise_key.bin PARADISE_README_ ID_CLIENT_ |
[표 4] 암호화 제외 파일 문자열
암호화 대상 파일은 다음과 같은 구조로 데이터가 암호화 됩니다. 모든 데이터를 암호화 시키는 것이 아닌 최초 0x2800 byte만 암호화 되며, 파일 하단에 0x9 byte의 ‘PARADISE*’ 시그니쳐를 삽입하여 암호화 여부를 확인합니다. 암호화된 파일의 고유 정보와 이 정보의 크기도 함께 추가됩니다.
[그림 8] 암호화된 파일 구조
암호화가 완료된 파일은 ‘[원본 파일명]__V.0.0.0.1{help@badfail.info}.paradise’형식으로 파일명과 확장자가 변경됩니다. 다음은 파일 암호화 코드의 일부입니다.
[그림 9] 파일 암호화 코드 일부
5. C&C 전송
공격자는 C&C 서버로 POST방식을 이용해 암호화 정보들을 전송합니다. C&C 주소는‘146.185.241.35/api/Encrypted.php’ 로 러시아로 확인되며 분석 시점에 이미 서버는 차단된 상태입니다. 다음은 정보 전송 코드입니다.
[그림 10] POST 방식을 이용한 C&C 정보 전송
변수 명 |
설명 |
v1 |
사용자 식별 ID (랜덤 값) |
v2 |
trump섹션 데이터 값 0x8 byte (o1qfREhE) |
start_e |
암호화 시작 시간 |
end_e |
암호화 종료 시간 |
files_count |
암호화 파일 개수 |
key |
RSA 키 값 |
[표 5] C&C 전송 정보 파라미터 값
5.1 시스템 복원 기능 무력화
감염된 PC의 시스템 복원 기능을 무력화 하기 위해 다음과 같은 명령어로 볼륨 섀도우 복사본을 삭제합니다.
“C:\Windows\System32\wbem\wmic.exe” shadowcopy delete
cmd.exe /c vssadmin delete shadows /all /quiet
[표 6] 볼륨 섀도우 복사본 삭제 명령어
5.2 랜섬노트
모든 암호화가 종료되면 감염 사실과 복호화 방법을 안내하는 랜섬노트를 화면에 띄웁니다. 랜섬노트 내용에 따르면 사용자는 암호화된 파일의 복호화를 위해 비트코인을 지불해야 합니다. 공격자는 복호화를 위해 몇 가지 주의사항을 안내하고, 실제로 복호화가 가능하다는 것을 증명하게 위해 1MB 이하 파일 1~3개에 대해서 무료로 복호화 해준다고 안내합니다.
[그림 11] 랜섬노트 화면
[그림 12] 랜섬노트 화면 2
결론
공격자는 사용자의 중요 파일을 암호화 시키고, 복호화 대가로 비트코인을 요구하며 금전적인 이득을 취하고자 합니다. 사용자의 신뢰를 얻기 위해 소수의 파일을 무료로 복호화해 주지만 실제 비트코인을 지불했을 경우 정상적으로 복호화를 해준다는 것은 보장할 수 없습니다.
Paradise 랜섬웨어는 시스템 언어 확인은 물론 실제 사용자 IP를 조회하여 국가 코드가 일치하는 지까지 확인하여 특정 국가를 확실하게 제외시키는 것이 기존 악성코드와는 다른 특징입니다. 따라서, 시스템 언어만 임의로 변경한다고 해서 암호화 대상에서 제외될 수 없습니다.
지속적으로 변종이 등장할 가능성이 있는 만큼 사용자는 중요 파일을 백업하는 습관을 들여야 합니다. 또한, 출처가 불분명한 이메일에 포함된 링크 및 첨부파일은 클릭하지 않는 것이 중요합니다. 패치 누락으로 인한 취약점이 발생하지 않도록 OS와 소프트웨어는 최신 버전의 업데이트를 유지하며, 백신을 설치해 주기적인 검사를 실시하여야 합니다.
현재 알약에서는 ‘Trojan.Ransom.Paradise’ 로 진단하고 있습니다.
Trojan.Android.HiddenApp 악성코드 분석 보고서 (0) | 2018.07.23 |
---|---|
상품 구매를 희망하는 내용의 악성 메일 주의 (0) | 2018.07.19 |
주문서 확인 내용으로 위장한 악성 메일 주의 (0) | 2018.07.16 |
수입 세금 계산서로 위장한 악성 메일 주의 (0) | 2018.07.13 |
정보 탈취 악성코드를 다운로드하는 '피고 소환장' 악성 메일 주의 (0) | 2018.07.11 |
댓글 영역