1. 개요

악성코드는 감염 시스템에서의 장기적인 활동 및 목적 달성을 위해 다양한 지속 메커니즘을 활용하고 있다. 시스템 재부팅이나 여타 이유로 프로세스가 종료되더라도 특정 조건에 따라 자동으로 다시 실행되도록 하는 것이다. 이러한 지속 메커니즘은 랜섬웨어, 인포스틸러, 원격제어, 백도어 등 각종 악성코드에서 채택하고 있으며, 이를 구현하는 방식은 저마다 다양하다. 일반적으로 많이 활용되는 지속 메커니즘으로는 레지스트리, 서비스, 작업스케줄, 시작프로그램을 이용하는 방식이 있지만, 이 외에도 다소 독창적인 접근 방식들도 존재한다. 본 글에서는 그 중 링크 파일의 단축키 설정 기능을 이용한 지속 메커니즘에 대해 살펴보고자 한다. 먼저, 본론으로 들어가기에 앞서 윈도우 운영체제에서 일반적으로 많이 활용되는 악성코드 지속 메커니즘에 대해 간략히 알아보도록 하자.

2. 일반적으로 많이 활용되는 지속 메커니즘

(1) 레지스트리

레지스트리는 윈도우 시스템 설정과 구성 정보를 저장하는 데이터베이스이다. 악성코드는 자동 실행을 위해 특정 레지스트리 키에 자신을 등록한다. 악성코드가 활용하는 대표적인 레지스트리 키 경로는 다음과 같으며, 이를 통해 사용자가 로그온할 때마다 악성코드가 자동으로 실행되도록 할 수 있다.

<aside> 💡 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

</aside>

[ 악성코드 활용 사례 ]

Phobos 랜섬웨어가 레지스트리 설정을 통해 지속 메커니즘을 구현한 사례이다. 레지스트리 값 이름과 파일명은 정상 압축 소프트웨어로 위장하기 위해 “winrar” 로 설정되어 있다.

[그림 1] 레지스트리 등록 (분석 샘플 : Phobos 랜섬웨어)

[그림 1] 레지스트리 등록 (분석 샘플 : Phobos 랜섬웨어)

Makop 랜섬웨어에서 레지스트리 설정을 통해 지속성을 확보한 사례이다.

[그림 2] 레지스트리 등록 (분석 샘플 : Makop 랜섬웨어)

[그림 2] 레지스트리 등록 (분석 샘플 : Makop 랜섬웨어)