악성코드 분석 2024-10-25
상세분석
1.1 분석 정보
Encode.exe |
|||
MD5 |
841980b4ae02a4e6520ab834deee241b |
||
SHA-256 |
74b5e2d90daaf96657e4d3d800bb20bf189bb2cf487479ea0facaf6182e0d1d3 |
||
File Type |
Win32 EXE |
File Size |
194,560 KB |
주요 행위 |
파일 암호화 후 금전 요구 |
||
드롭 파일 |
readme_contact_alex.dali@iran.ir.htm\ Rs.bmp |
Polar ransomware 분석
랜섬웨어가 실행되면 사용자의 파일 복구를 방지하기 위해 로그 및 섀도우 복사본을 삭제한다.
암호화를 원활하게 하기 위해 다음 목록의 프로세스를 찾아 실행을 중지한다.
드라이브 암호화를 위해 현재 사용하고 있는 볼륨 드라이브 정보를 가져온다.
이후 드라이브를 돌며 제외 폴더 및 대상 파일을 검사한 뒤 대상 파일이면 암호화를 수행한다. 그리고 피해자에게 금전을 요구하기 위해 폴더마다 "readme_contact_alex.dali@iran.ir.htm" 이름의 랜섬노트를 생성한다.
파일 암호화는 파일 크기에 따라 다른 암호화 방식을 수행하는데, 파일의 크기가 약 61MB 미만일 경우파일 확장자에 ".locked"가 붙고 61MB 이상일 경우 ".cryptd"가 붙는다. 암호화에 사용되는 값(password)은 하드코딩 된 문자열에서 랜덤으로 생성된다.
파일의 크기가 61MB 미만일 경우 20byte의 password값과 하드코딩 된 salt 값을 1,000번의 반복을 통해 암호화 키와 초기화 벡터를 생성한다. 이후 생성된 키와 초기화 벡터를 통해 AES-CBC 알고리즘으로 대상 파일을 암호화한 뒤 [원본파일명].lock로 변경한다.
파일의 크기가 61MB 이상일 경우 빠른 진행을 위해 "암호화 된 16byte + 정상 12,800byte" 형식으로 진행된다. 생성된 8byte password 값과 하드코딩 된 8byte값을 합쳐서 암호화 키를 생성한다. 이후 생성된 키로 AES-ECB 알고리즘을 사용해 암호화를 진행하고 [원본파일명].cryptd 파일을 생성해 암호화 된 데이터를 넣은 뒤 원본파일을 삭제한다.
암호화가 끝난 이후 바탕화면을 랜섬노트 이미지로 변경한 뒤 로그 삭제를 재시도한다. 그리고 사용자 컴퓨터의 이름을 탈취해 C&C서버로 보낸다.
- C&C 서버 : http://www[.]therockbrazil[.]com[.]br/assinaturas/logs[.]php
결론
Polar 랜섬웨어는 2020년 최초로 발견되었으며, 주로 정부를 목표로 수행하는 중국 APT 그룹에서 백도어와 함께 사용되었다. Ubisoft에서 서명한 합법적인 컴퓨터 게임 구성요소인 GDFInstall.exe 파일과 함께 암호화 되어있는 악성코드 파일, 악성코드를 복호화하는 GameuxInstallHelper.dll 파일을 함께 배포한다.
이런 식으로 합법적인 애플리케이션이 악성 라이브러리를 로드하고, 이를 통해 악성 파일이 복호화 되어 실행되는 방식의 페이로드 호출 구성을 아시아 APT 그룹인 APT27, APT10, APT41, TA459, Bronze Union 등에서 발견 할 수 있다.
해당 그룹들은 2010년부터 활동하며 주로 정부, 방위 및 에너지 산업과 항공우주 및 제조 분야를 대상으로 활동하고 있다. 가장 일반적으로는 취약점을 악용해 웹 서버를 손상시키거나 무차별 대입 공격으로 접근 권한을 얻어 활동하고 있다.
많은 랜섬웨어 변종이 TrickBot과 Emotet과 같은 상용 악성코드 변종을 사용하여 배포되기 때문에 특정 APT에 대한 귀속을 정확하게 파악하기 어렵고, 재정적 동기를 가진 위협 행위자가 향후 공격에 랜섬웨어를 사용 할 가능성이 높기 때문에 각별한 주의가 필요하다.
해당 악성코드의 감염을 막기 위해 Windows 업데이트와, 사용 중인 백신의 버전을 최신으로 유지할 것을 권고한다.
IOC