통계로 알아보는 3분기 MS-SQL 악성코드 동향
안랩은 최근 발간한 2022년 3분기 ASEC 리포트를 통해 해당 기간 중 가장 활발하게 활동했던 악성코드와 MS-SQL 서버를 공격한 악성코드 통계와 분석 내용을 다뤘다. 독자들로 하여금, 특정 기간 동안의 주요 악성코드 활동 동향을 보다 직관적으로 파악할 수 있도록 하기 위함이다.
이번 글에서는 MS-SQL 서버 대상 악성코드에 관한 내용을 살펴본다.
안랩은 자사 ASD(AhnLab Smart Defense) 인프라를 활용하여 취약한 MS-SQL 서버를 대상으로 하는 공격들에 대한 대응 및 분류를 진행하고 있다. 이 글에서는 2022년 3분기에 확인된 로그를 기반으로 공격 대상이 된 MS-SQL 서버들의 피해 현황과 해당 서버들을 대상으로 발생한 공격들에 대한 통계를 다룬다. 그리고 각각의 공격에 사용된 악성코드들을 분류하여 세부적인 통계를 정리한다. 악성코드들은 CoinMiner, Backdoor, Trojan, Ransomware와 같은 유형 별로 분류한 후, 각 유형에 대해서도 알려진 악성코드들에 대해서는 구체적인 통계를 함께 제공한다.
MS-SQL 서버 대상 공격 현황
[그림 1]은 2022년 1월~9월까지 자사 인프라를 통해 확인한 MS-SQL 서버 대상 공격에 대한 통계이다.
[그림 1] 2022년 1월~9월 MS-SQL 서버 대상 공격 현황
[그림 1]에서 ‘피해 현황’ 항목은 악성코드 또는 공격자에 의해 공격 대상이 된 시스템들의 수량으로서, MS-SQL 서버에 대한 제어 획득 후 악성코드가 설치된 이력이 확인되는 시스템이다. 서버를 대상으로 하는 공격은 주로 취약점이 패치되지 않은 환경에 대한 취약점 공격이나, 부적절하게 설정되어 있는 환경에 대한 공격 그리고 부적절하게 관리되는 서버에 대한 공격이 있을 수 있다. 부적절하게 관리되는 환경은 대표적으로 무차별 대입 공격이나 사전 공격에 취약한 계정 정보가 설정되어 있는 것이다. 만약 부적절하게 관리되고 있는 시스템에 관리자 계정으로 로그인에 성공하였다면 악성코드 또는 공격자는 해당 시스템에 대한 제어를 획득할 수 있다.
‘공격 현황’ 항목은 악성코드 또는 공격자가 해당 시스템을 대상으로 수행한 공격 횟수이다. 참고로 이러한 취약한 MS-SQL 서버는 일반적으로 다수의 공격자들 및 악성코드들로부터 공격 대상이 되기 때문에 다양한 악성코드의 감염 로그가 동시에 확인되는 경향이 있다.
MS-SQL 서버 대상 공격에 사용된 악성코드 분류
[그림 2]는 2022년 3분기에 확인된 MS-SQL 서버를 대상으로 한 공격에 사용된 악성코드에 대한 분류이다.
[그림 2] MS-SQL 서버 대상 공격에 사용된 악성코드 유형별 비율
[그림 2]에서 확인할 수 있듯이 이 공격에는 여러 유형의 악성코드가 사용되었으며, 각 유형별 상세정보도 살펴보자.
1. Backdoor
[그림 3] MS-SQL 서버 대상 공격에 사용된 Backdoor 유형별 비율
이 통계에서는 C&C 서버로부터 명령을 받아 악의적인 행위를 수행하는 악성코드들을 Backdoor 유형에 정리했다. Backdoor 악성코드들은 Remcos RAT, Gh0st RAT과 같은 RAT 악성코드가 대부분이지만 CobaltStrike, Meterpreter와 같은 침투 테스트에 사용되는 유형도 일정 부분 발견되었다. 최근에는 공격자들이 악성코드 외에도 AnyDesk와 같은 정상 원격 제어 애플리케이션을 설치하는 경우도 다수 확인되고 있다.
Remcos RAT은 RAT 악성코드로서 Backdoor 유형 내에서만 아니라 악성코드 단독으로도 가장 많은 수량을 차지한다. 참고로 Remcos는 스팸메일의 첨부 파일을 통해 설치되는 대표적인 악성 코드들 중 하나로서, AgentTesla, Formbook, Lokibot과 함께 높은 비율을 차지하고 있다. 하지만 최근에는 취약한 MS-SQL 서버를 통해 설치되는 사례도 다수 확인된다. 수량은 많지만 모두 동일한 공격자에 의한 것으로 추정되며 설치 과정에서 파워쉘 명령이 사용된다.
Gh0st RAT은 과거 오픈 소스로 공개되어 최근까지도 꾸준히 다양한 공격자들에 의해 사용되는 원격 제어 악성코드이다. 그렇기 때문에 취약한 MS-SQL 서버를 대상으로 하는 공격에 사용되고 있는 Gh0st RAT도 다양한 변종들이 확인되고 있다. 대표적으로 최근에는 Gh0st RAT 변종 중 하나인 Gh0stCringe가 이러한 공격에 사용되는 것이 확인되었다.
CobaltStrike 및 Metsploit의 Meterpreter는 상용 침투 테스트 도구로서 주로 APT 및 랜섬웨어를 포함한 대다수의 공격에서 내부 시스템 장악을 위한 중간 단계로 사용되고 있다. 최초 침투 과정에는 다른 악성코드가 사용되는 일반적인 공격 사례들과 달리, 취약한 MS-SQL 서버를 대상으로 하는 공격에서는 코발트스트라이크가 직접적으로 설치된다.
2. CoinMiner
[그림 4] MS-SQL 서버 대상 공격에 사용된 CoinMiner 유형별 비율
CoinMiner 악성코드는 크게 Vollgar, PurpleFox, LoveMiner, MyKings 등 4가지 종류가 대부분을 차지한다. 4가지 유형 모두 일반적인 CoinMiner 악성코드처럼 XMRig 즉 모네로 가상 화폐를 채굴하는 것이 목적이다. 해당 악성코드들은 주로 취약한 계정 정보가 설정되어 있는 시스템들을 대상으로 유포되는 악성코드들이다.
LoveMiner는 exe 실행 파일이나 CLR 어셈블리 형태의 다운로더 악성코드를 거쳐 취약한 MSSQL 서버에 설치된다. 마이닝 외에 추가적인 기능이 없는 LoveMiner와 달리 다른 악성코드들은 여러 가지 특징들이 존재한다. 예를 들어 MyKings나 PurpleFox는 감염 이후 스캐닝 모듈이 추가적으로 설치되어 또 다른 시스템을 감염시킬 수 있다. 전파 대상으로는 취약한 MS-SQL 서버 외에도 SMB 취약점을 이용하여 취약점이 패치되지 않은 내부 네트워크의 시스템들이 대상이 된다.
3. Trojan
[그림 5] MS-SQL 서버 대상 공격에 사용된 Trojan 유형별 비율
Trojan 유형들 중에서는 CLR 어셈블리 쉘 악성코드가 가장 많은 수량을 차지하고 있다. MS-SQL 환경에서는 xp_cmdshell 명령 외에도 OS 명령을 실행할 수 있는 다양한 기법들이 존재하는데, 이 중 CLR 어셈블리를 이용하는 방식이 존재한다. 해당 기능은 원래 SQL 서버에서 확장된 기능을 제공하기 위해 사용되는 방식이다. 하지만 공격자들이 이를 악용하여 악의적인 기능을 포함시켜 사용할 수 있으며, LoveMiner의 경우도 CLR 어셈블리 형태의 다운로더가 사용되고 있다.
CLR Shell은 CLR 어셈블리 형태의 악성코드들 중에서, 웹 서버의 웹쉘처럼 공격자로부터 명령을 전달받아 악성 행위를 수행할 수 있는 기능을 제공하는 형태이다. LemonDuck은 추가 모듈을 설치하기 위해 xp_cmdshell 명령을 직접 이용하기도 하지만, CLR Shell을 설치하여 이것이 지원하는 명령을 이용해 추가 모듈을 설치하는 기능도 함께 포함되어 있다.
Trojan으로 분류된 악성코드들은 다양한 형태들이 존재하는데, 대표적으로 감염 시스템에 사용자 계정을 추가하고 RDP를 활성화하여 추후 접근할 수 있도록 하는 유형이 있다. 이외에도 코인 마이너와 유사하게 감염 시스템에 설치되어 인터넷 대역폭을 제공하는 Proxyware 유형의 악성코드도 다수 존재한다.
안랩에서는 2013년부터 확인되고 있는 ShadowForce 활동에 대한 분석 보고서를 발간한 바 있다. ShadowForce 활동은 아직까지 계속되고 있으며, 공격자는 취약한 MS-SQL 서버를 대상으로 침투하여 백도어나 리버스 쉘뿐만 아니라 권한 상승 툴을 포함한 다양한 악성코드들을 설치한다.
4. HackTool
공격자는 감염 시스템에 대한 제어를 획득한 후에도 추가적인 목적을 달성하기 위해 다양한 도구들을 이용한다. 대표적으로 권한 상승 도구들이나 프록시 유형들이 있다. 자사 ASD 로그에 따르면 추가적으로 사용되는 HackTool 유형들 중에서 권한 상승 도구 중 하나인 Sweet Potato, Juicy Potato 유형들이 대부분을 차지하고 있다. 물론 이외에도 권한 상승 취약점을 악용하는 도구들도 함께 확인되고 있다.
[그림 6] Sweet Potato 악성코드
5. Ransomware
현재 취약한 MS-SQL을 대상으로 설치되고 있는 랜섬웨어는 Mallox, GlobeImposter 2개가 확인된다. Mallox는 2021년부터 확인되고 있는 랜섬웨어로서, 다른 사례가 확인되지 않는 것으로 보아 공격자가 취약한 MS-SQL 서버 만을 대상으로 하는 것으로 추정된다.
[그림 7] MS-SQL 서버 대상 공격에 사용된 Ransomware 유형별 비율
GlobeImposter는 2017년 2월 이후 꾸준히 변종이 확인되고 있는 랜섬웨어이며, 그만큼 다양한 공격 사례가 존재한다. 예를 들어 2017년 9월에는 스팸메일을 통해 유포되었으며, 최근에는 GlobeImposter 변종 중 하나인 Lockis 랜섬웨어 공격 사례가 존재한다.
6. Downloader
Downloader 악성코드들은 현재 확인되지 않지만 대부분 Remcos RAT이나 CobaltStrike를 다운로드했을 것으로 추정되는 유형들이다. 위에서 다룬 Remcos RAT, CobaltStrike 유형들도 다운로드가 성공하여 실제 동작한 점이 차이일 뿐 실제 여기에서 다루는 동일한 다운로더 악성코드가 사용되었다. 참고로 2022년 4월에는 Remcos RAT, CobaltStrike 외에도 RedLine 정보 탈취형 악성코드가 다운로드되었다.
공통점이라고 한다면 다운로더 악성코드들은 닷넷으로 개발되어 있으며, [그림 8]과 같이 외부에서 패킹되어 있는 바이너리를 다운로드해 메모리 상에서 실행한다.
[그림 8] 패킹된 Remcos RAT을 다운로드하는 루틴
MS-SQL 데이터베이스 서버를 대상으로 하는 공격에는 대표적으로 부적절하게 계정 정보를 관리하고 있는 시스템들에 대한 무차별 대입 공격(Brute Forcing Attack)과 사전 공격(Dictionary Attack)이 있다. 일반적으로 이러한 방식들이 공격의 대부분을 차지하고 있는 것으로 보이지만, 이 외에도 취약점이 패치되지 않은 시스템들에 대한 취약점 공격이 있을 수 있다.
공격 대상이 되는 MS-SQL 서버의 경우 일반적으로 데이터베이스 서버로 사용하기 위해 직접 구축한 형태가 대부분을 차지한다. 하지만 이외에도 ERP 및 업무용 솔루션에서 데이터 관리를 위해 MSSQL을 이용할 경우 설치 과정에서 MS-SQL 서버가 함께 설치되는 경우도 다수 존재하며, 실제 자사 ASD 로그 상에서도 이러한 MS-SQL 서버들 또한 공격 대상이 되고 있는 것을 확인할 수 있다.
이에 따라 관리자들은 계정의 비밀번호를 추측하기 어려운 형태로 사용하고 주기적으로 변경하여 이러한 공격들로부터 데이터베이스 서버를 보호해야 하며, 최신 버전으로 패치하여 취약점 공격을 방지해야 한다. 또한 외부에 공개되어 접근 가능한 데이터베이스 서버에 대해 방화벽과 같은 보안 제품을 이용해 공격자로부터의 접근을 통제해야 한다.
출처 : AhnLab