포스팅 내용

악성코드 분석 리포트

Trojan.Ransom.Facebook 악성코드 분석 보고서

안녕하세요? 이스트시큐리티입니다.


최근 Facebook 아이콘으로 위장한 랜섬웨어가 등장해 사용자의 각별한 주의가 필요합니다.  Facebook 악성코드는 히든티어(Hidden Tear) 오픈소스를 기반으로 제작된 랜섬웨어로, 사용자의 중요 파일을 암호화 한 뒤 ‘.Facebook’ 확장자를 추가합니다. 공격자는 이를 복호화해주는 대가로 0.29 비트코인을 요구하며 금전적인 이득을 목적으로 하고 있습니다. 



본 보고서에서는 Facebook으로 위장한 랜섬웨어 행위와 이를 예방하기 위한 방법을 알아보고자 합니다. 



악성코드 상세 분석


이번에 발견된 Facebook 랜섬웨어는 다음과 같이 실제 Facebook 아이콘을 사용합니다. 또한 파일 속성에 Facebook Official이라는 설명을 사용하면서 정상 파일처럼 보이도록 위장합니다.  만약 Facebook 이용자라면 별다른 의심없이 해당 랜섬웨어를 실행시킬 위험성이 큽니다.

 

[그림 1] Facebook.exe 랜섬웨어 속성 정보



1. 파일 암호화

Facebook 랜섬웨어는 다음과 같은 확장자를 가진 파일에 대해서만 암호화를 진행합니다. ‘히든티어’ 와 비교했을 때,  “.bat”, “.cmd”, “.URL”, “.kys”, “.jpeg” 확장자가 추가됐습니다.


“.txt”, “.doc”, “.docx”, “.xls”, “.xlsx”, “.ppt”, “.pptx”, “.odt”, “.jpg”, “.png”, “.csv”, “.sql”, “.mdb”, “.sln”, “.php”, “.asp”, “.aspx”, “.html”, “.xml”, “.psd”, “.bat”, “.cmd”, “.URL”, “.kys”, “.jpeg”

[표 1] 암호화 대상 확장자


암호화 대상 확장자로 확인되면, SHA-256으로 인코딩한 패스워드(passwrodBytes)를 이용해 AES-256으로 파일을 암호화 한 후 ‘.Facebook’ 확장자를 추가합니다. 이 패스워드 값은 추후 파일 복호화 시 사용됩니다.  

 

[그림 2] 파일 암호화 코드 일부


AES-256 암호화가 진행될 때, 16바이트 단위로 데이터 크기를 맞추기 위해 패딩 값이 추가됩니다. 따라서, 다음과 같이 암호화된 파일의 데이터가 증가한 것을 알 수 있습니다. 기존 데이터 크기에 따라 추가되는 패딩 값의 길이는 파일 별로 상합니다. 


파일 암호화 전

 


 파일 암호화 후

 


[표 2] 파일 암호화 후 패딩 값이 추가된 화면


다음은 파일 암호화 전과 후 확장자가 변경된 화면입니다. ‘.Facebook’ 확장자가 추가된 파일은 더 이상 정상 파일로써의 기능을 할 수 없습니다.


파일 암호화 전

 파일 암호화 후

[표 3] 파일 암호화 전 후 비교



2. 랜섬노트

파일 암호화가 모두 끝나면, 랜섬웨어 감염 사실과 파일 복호화 방법을 알리는 랜섬노트를 생성합니다. 랜섬웨어는 사용자 바탕화면 경로에 ‘READ_IT.rtf’ 형식으로 생성됩니다. 내용은 다음과 같습니다. 

 

[그림 3] 랜섬노트 화면


랜섬노트 생성과 함께 암호화된 파일을 복호화 할 수 있는 화면이 생성됩니다. 생성된 화면은 랜섬노트와마찬가지로 랜섬웨어 감염 사실을 알립니다. 또한 복호화 방법 안내를 위해 하단의 ‘How to Decrypt your files’ 버튼을 클릭하도록 유도합니다. 이 버튼을 클릭했을 경우, 화면에 표시된 비트코인 주소로 0.29 비트코인을 지불하고, ‘Give me Back my Files!’ 버튼을 클릭해 파일을 복호화 하라고 안내합니다. 


[그림 4] 복호화 안내 화면


비트코인 비용을 지불하지 않고 ‘Give me Back my Files!’ 버튼을 클릭했을 경우, 다음과 같이 결제가 실패했다고 안내합니다. 하지만, 복호화 코드와 비용지불 여부를 식별할 코드가 존재하지 않기 때문에 비용을 지불했더라도 파일을 정상적으로 복호화 해준다고 보장할 수 없습니다. 


[그림 5] ‘Give me Back my Files!’ 버튼을 클릭했을 경우


3. 파일 복호화 

히든티어 랜섬웨어는 복호화 툴이 이미 공개되어 있습니다. Facebook랜섬웨어 또한 공격자에게 비트코인을 지불하지 않아도 복호화가 가능합니다. 공개된 복호화 툴을 이용해 파일 암호화에 사용된 패스워드(passwordBytes)를 적용하면 정상적으로 복호화가 이루어집니다. 다음은 분석을 통해 확인 가능한 패스워드 정보이다. 프로그램 실행 시마다 값은 랜덤으로 변경됩니다. 


[그림 6] 패스워드 생성 코드


다음은 암호화된 데이터가 정상적으로 복호화 된 화면입니다. 

 

[그림 7] 정상적으로 복호화 된 데이터



결론


Facebook 랜섬웨어는 정상 Facebook을 위장해 사용자로 하여금 의심받지 않도록 합니다. 이는 이미 많은 사람들이 Facebook을 이용한다는 점을 노리고 불특정 대상에게 뿌려졌을 가능성이 큽니다. 유포 방법은 확인되지 않았으나 공격자들은 주로 이메일과, 메신저, P2P 등을 통해 유포하는 방법을 사용합니다. 국내에는 아직까지 피해가 발견되지 않았으나, 히든티어 기반의 한글을 이용한 랜섬웨어가 발견됐던 적이 있던 만큼 사용자들의 주의가 필요하겠습니다. 


이 외에도 히든티어를 악용한 랜섬웨어가 2018년 현재까지도 지속적으로 발견되고 있습니다. 누구나 쉽게 코드를 수정할 수 있기 때문에 앞으로도 수많은 변종이 등장할 것입니다. 


따라서, 사용자는 이를 예방하기 위해 주기적으로 중요 파일을 백업하는 습관을 들여야 합니다. 또한 메일로 첨부되는 파일에 대해서는 실행 시 주의해야 하고 백신을 최신 업데이트 상태로 유지하며 주기적인 검사를 실시해야 합니다.


현재 알약에서는 ‘Trojan.Ransom.Facebook’ 로 진단하고 있습니다. 


티스토리 방명록 작성
name password homepage