Security trend

We will deliver the up-to-date security information timely.

[분석보고서] Masscan 랜섬웨어 사고 사례

2022-12-01

I. 분석 개요

기업의 중요 데이터베이스는 해커들에게 표적이 된다. 최근에는 인터넷에 노출되어 취약하게 운영 중인 Microsoft社의 DB 관리시스템(MS-SQL)만을 노린 랜섬웨어(masscan, Globeimposter, mallox 등) 감염 사례가 급증하였다. Masscan랜섬웨어는 올해 6월 말 국내 첫 감염사례 이후 7월을 기점으로 급속히 확산되고 있는 상황이다. Masscan랜섬웨어의 감염되면 파일의 확장자가 masscan-[대문자 한 글자(F, R, G)]-[GUID 8자리]로 변경된다. 랜섬웨어 및 확장자를 통해 현재 version 3(F, R, G 버전 등)까지 나온 것으로 추정된다.

 

본 문서에서는 Masscan 랜섬웨어 사례를 ATT&CK 프레임워크에 기반하여 공격자의 공격전략과 기법 및 침투 단계에 대해 설명하고자 한다.

 

분석 개요

 

분석 대상

 

고객사 식별 정보 대체 표기

 

II. 사건 시나리오

공격자는 외부에 노출되어 있는 MS-SQL 데이터베이스 서버를 스캔하여 기본 계정이나 취약한 관리자 계정을 무작위 대입 공격을 통해 획득한다. 이후, MS-SQL 서버 내 명령 프롬프트(xp_cmdshell)을 활성화해 계정을 생성하고 악성 도구를 다운받아 피해 서버에 원격 접속한다. 원격 접속 이후 권한 상승 및 정보 수집을 통해 동일 네트워크로 내부 이동을 한다. 이때, 백업서버를 운영하거나 관리자 PC를 거점으로 삼아 랜섬웨어를 배포 및 감염시키고 있다.

 

공격자의 주요 공격 단계를 요약하면 다음과 같다.

[그림 1] 주요 공격 시나리오

 

III. MITRE ATT&CK Mapping

 

[그림 2] MITRE ATT&CK Mapping Attack Flow

 

IV. 분석 결과

Reconnaissance

 

공격자는 외부에 노출된 기업의 데이터베이스(MS-SQL, 1433 포트) 서버를 스캔하여 공격 대상을 찾는다.

[그림 3] 국내 노출되어있는 MS-SQL 서버 현황 – Shodan

 

Initial Access

 

타겟된 데이터베이스 서버에 Bruteforce 공격을 한다.

 

Credential Access

 

공격자(220.166.231[.]176, CN)는 sa계정 및 자주 사용하는 계정*을 타겟으로 Bruteforce 공격을 하여 계정정보를 수집한다.

* admin, administrator, administrators 등과 같이 ERP 서버에서 사용하는 관리자 계정

[그림 4] sa 계정에 대한 Bruteforce Attack Log - Event Log(UTC+9)

 

Execution

 

수집된 데이터베이스 계정 정보를 이용해서 xp_cmdshell을 활성화하는 쿼리*를 보낸다. xp_cmdshell을 활성화 후 xp_cmdshell을 통 해 스크립트 파일을 생성하거나 파워셸을 실행시킨다.

*xp_cmdshell 활성화 : show advanced options 1로 변경, xp_cmdshell을 1로 변경

[그림 5] MS-SQL 고급 설정 및 CLR 실행 옵션 활성화 - Event Log(UTC+9)

 

Persistence

 

공격자는 원활한 원격 접속을 위해 획득한 시스템 권한을 이용하여 [USER]라는 새로운 계정을 생성한다.

[그림 6] [USER] 계정 생성 - Registry(UTC+0)

 

Command and Control

 

공격자는 피해 서버에 원격 접속 프로그램인 AnyDesk 7.0.10을 C:\[PATH-01]\[PATH-02] 경로에 설치한다. Anydesk의 경우 CLI 환경에서 명령어로 설치와 패스워드 설정을 할 수 있다.

[그림 7] AnyDesk 설치 - MFT(UTC+9)

 

Privilege Escalation

 

공격자는 설치한AnyDesk를 통해 피해 서버에 원격 접속한다. connection_trace.txt 파일은 AnyDesk 설치 이후 최초 접속 시 생성되며, ad_svr.trace 파일을 통해 Anydesk로 접속한 공격자 IP 확인이 가능하다.

[그림 8] AnyDesk 최초 접속 - MFT(UTC+0)

 

Defense Evasion

 

관리자 계정으로 접속한 공격자는 윈도우 디펜더 및 백신을 중지시킨다. 모니터링 도구를 이용해서 프로세스 확인 후 종료시킨다.

 

 

공격자는 관리자 계정으로 접속하여 방화벽 차단을 막기위해 원격 접속(netsh.exe, Anydesk.exe)을 허용한다.

[그림 9] 방화벽 설정 변경 - Event Log(UTC+9)

 

Discovery

 

내부이동을 위해 네트워크 스캔 도구(msfconsole.bat)를 사용해 같은 내트워크 대역을 대상으로 포트 스캐닝(RDP/3389, SMB/445, MSSQL/1433)을 하고, MS-SQL 포트(1433)를 대상으로 Bruteforce Attack을 수행한다.

 

Lateral Movement

 

공격자는 이전에 수집한 정보를 이용하여 다른 서버로 원격 접속하여 내부 이동한다. 내부이동 시 위에서 사용한 RDP 정보수집 도구 및 네트워크 스캔 도구를 통해 추가 서버를 찾으며, 가장 많은 정보를 가지고 있는 서버*를 거점으로 삼아 랜섬웨어 공격 준비를 한다.

* 대체로 백업서버는 모든 서버와 연결되기 때문에 공격자가 거점으로 많이 선택한다.

 

Defense Evasion

 

공격자는 랜섬웨어를 실행하기 전, 공격 흔적을 지우기 위해 이벤트 로그(Security, System)를 삭제한다.

[그림 10] 감사 로그 삭제 - Event Log(UTC+9)

 

[그림 11] 시스템 로그 삭제 - Event Log(UTC+9)

 

Impact

 

랜섬웨어 감염을 위해RunExe.exe 파일과 EnCrypt.exe 파일이 실행된다. RunExe.exe는 VSS(VolumShadowCopy Service)를 삭제하고 디렉터리내 exe파일을 실행시킨다. RunExe.exe를 통해 실제 파일을 암호화하는 EnCrypt.exe(masscan-F-[GUID 8자리])가 실행되어 파일을 암호화한다.

[그림 12] 랜섬웨어 파일(RunExe.exe) 생성 – MFT(UTC+9)

 

랜섬웨어가 동작하면 파일 암호화가 진행되며, 암호화된 파일은 확장자가 masscan-F-[GUID 8자리]로 변경된다. 랜섬웨어에 감염된 후, 각 폴더에는 랜섬노트(RECOVERY INFORMATION !!!.txt)가 생성된다.

[그림 13] 복호화 안내를 위한 랜섬노트

 

 

공격자는 랜섬웨어를 실행한 뒤 생성한 [USER] 계정을 삭제하고 서버를 재부팅한 후, 원격 접속을 해제한다.

[그림 14] [USER] 계정 삭제 - Event Log(UTC+9)

 

 

 

LIST