지속적인 공격 대상이 되고 있는 Apache ActiveMQ 취약점 (CVE-2023-46604)

AhnLab Security Emergency response Center(ASEC)은 2023년 11월에 “Andariel 그룹의 Apache ActiveMQ 취약점 (CVE-2023-46604) 공격 정황” [1] 블로그 포스팅을 통해 Andariel 위협 그룹이 CVE-2023-46604 취약점을 공격해 악성코드를 설치한 사례를 공개한 바 있다. 해당 포스팅에서는 Andariel 그룹의 공격 사례 외에도 HelloKitty 랜섬웨어, 코발트 스트라이크, 메타스플로잇 미터프리터 공격 사례를 함께 언급하였다.

Apache ActiveMQ 취약점(CVE-2023-46604)은 이후에도 지속적으로 다양한 공격자들에 의해 사용되고 있다. 최근에는 Ladon, NetCat, AnyDesk 그리고 z0Miner를 설치하는 공격이 추가적으로 확인되었으며 여기에서는 각각에 대해 정리한다.


1. Apache ActiveMQ 취약점 (CVE-2023-46604) 공격

CVE-2023-46604는 오픈 소스 메시징 및 통합 패턴 서버인 Apache ActiveMQ 서버의 원격 코드 실행 취약점이다. 만약 패치되지 않은 Apache ActiveMQ 서버가 외부에 노출되어 있을 경우 공격자는 원격에서 악의적인 명령을 실행하여 해당 시스템을 장악할 수 있다.

  • AhnLab TIP : Apache ActiveMQ 보안 업데이트 권고 (CVE-2023-46604) [2]

취약점 공격은 classpath에 있는 클래스를 인스턴스화하도록 OpenWire 프로토콜에서 직렬화된 클래스 유형을 조작하는 방식으로 이루어진다. 만약 공격자가 조작된 패킷을 전송할 경우 취약한 서버에서는 패킷에 포함된 경로 즉 URL을 참고하여 클래스 XML 설정 파일을 로드한다.

예를 들어 취약한 Apache ActiveMQ의 자바 프로세스는 전달받은 조작된 패킷을 참고하여 “hxxp://27.191.193[.]193:555/poc2.xml” 경로에 위치하는 XML 설정 파일을 로드하게 된다. 이후에는 로드한 XML 설정 파일을 참고하여 지정한 명령을 실행하는데, 다음 사례는 CMD 및 파워쉘을 이용해 Ladon을 다운로드하고 리버스 쉘 명령을 실행하는 명령이 설정되어 있다.

Figure 1. Ladon을 설치하고 리버스 쉘을 실행하는 명령이 포함된 설정 파일


2. Ladon

Ladon은 다음과 같은 깃허브 페이지를 통해서도 알 수 있듯이 중국어를 기반으로 한 공격자들이 주로 사용하는 도구들 중 하나이다. [3] Ladon은 공격 과정에서 필요한 다양한 기능들을 지원하는데 대표적으로 스캐닝, 권한 상승, 계정 정보 탈취, 리버스 쉘과 같은 다양한 기능들이 있다.

Figure 2. Ladon 깃허브 페이지

제작자는 Ladon을 지속적으로 업데이트하고 있으며 상대적으로 최신 취약점이라고 할 수 있는 CVE-2023-46604 취약점에 대한 스캐닝도 지원한다.

Figure 3. Ladon이 지원하는 CVE-2023-46604 취약점 스캐닝 기능

공격자가 Ladon을 이용해 취약점을 스캐닝 했는지는 알 수 없지만 취약한 버전의 Apache ActiveMQ 서비스가 동작하는 것을 확인한 후에는 다음과 같은 파워쉘 명령으로 Ladon을 다운로드하고 명령을 실행하였다. ReverseTCP 명령은 리버스 쉘을 실행시키는 것을 의미하며 nc 즉 Netcat을 이용해 리버스 쉘을 실행한다.

Figure 4. 취약점 공격을 통해 실행되는 리버스 쉘


3. AnyDesk & Netcat

위 공격 사례에서는 Lodon이 지원하는 Netcat 명령이 사용되었지만 Netcat은 다른 공격 사례에서도 확인된다. Netcat은 TCP / UDP 프로토콜로 연결된 네트워크 상에서 특정 대상과 데이터를 송수신하게 해주는 유틸리티로서 리눅스뿐만 아니라 윈도우 환경도 지원하는 것이 특징이다. 네트워크 테스트 목적에서 다양한 기능들을 제공하기 때문에 네트워크 관리자들도 자주 사용하는 도구라고 할 수 있지만 공격자들에 의해서도 악용할 수 있는 도구이다.

공격자는 Netcat을 실행하면서 전달하는 명령을 이용해 리버스 쉘이나 바인드 쉘로써 사용할 수 있으며 실제 취약한 웹 서버나 MS-SQL 서버를 대상으로 하는 다양한 공격에서 사용된 사례들이 존재한다. [4] [5] 이번에 확인된 공격에서는 외부에서 Netcat을 다운로드한 이후 리버스 쉘 명령으로 감염 시스템에 대한 쉘을 획득하였다.

Figure 5. 취약점 공격을 통해 설치 및 실행되는 Netcat

비록 리버스 쉘을 통해 감염 시스템을 제어할 수 있지만 커맨드 라인 환경으로 명령을 내리는 것은 한계가 있다. 일반적으로 공격자들은 감염 시스템을 장악한 이후 원격에서 화면을 제어하기 위한 목적으로 VNC나 RDP 그리고 원격 제어 도구들을 추가적으로 설치하는 경향이 있다. 특히 AnyDesk나 NetSupport, 크롬 원격 데스크톱과 같은 원격 제어 도구들을 최근 보안 제품을 우회하기 위한 목적으로 자주 사용되고 있다. [6]

이번에 확인된 공격에서 공격자는 Netcat을 설치한 이후 추가적으로 AnyDesk를 설치하였다. 위 과정에서 설치한 Netcat을 이용해 AnyDesk를 설치하였으며 정상 홈페이지의 다운로드 주소에서 설치 파일을 다운로드하였다.

Figure 6. Netcat을 이용한 AnyDesk 설치

공격자는 AnyDesk를 Silent 모드로 설치한 이후 “–set-password” 인자로 비밀번호를 설정하고 실행하였다.

Figure 7. 설정된 비밀번호로 실행되는 AnyDesk

이는 과거 MS-SQL 서버 대상 공격 사례에서 확인된 사례와 거의 동일한 방식이다.

Figure 8. 과거 공격 사례에서 확인된 AnyDesk 설치 파워쉘 루틴

공격자는 이후 감염 시스템에 접속하여 실행 시 “–set-password” 인자로 전달했던 비밀번호를 입력해 원격에서 감염 시스템을 제어할 수 있을 것이다.

Figure 9. AnyDesk를 설치한 원격 시스템에 로그인하는 과정


4. z0Miner

최근에는 이외에도 XMRig 코인 마이너를 설치하는 공격 캠페인도 함께 확인된다. XML 설정 파일의 이름은 “paste.xml”이며 다음과 같이 CMD를 이용해 파워쉘 명령을 실행하는 데이터가 포함되어 있다. 참고로 “shella”는 파워쉘 파일로 추정되며 공격자가 이전 공격 과정에서 파워쉘 프로그램을 해당 이름으로 복사했을 것으로 보인다. 복호화 된 파워쉘 명령은 또 다른 파워쉘 스크립트를 다운로드해 실행한다.

Figure 10. 암호화된 파워쉘 명령이 포함된 설정 파일

다운로드되는 파워쉘 스크립트는 XMRig 코인 마이너와 설정 파일을 다운로드하고 실행하는 단순한 형태이다.

Figure 11. XMRig 코인 마이너를 설치하는 파워쉘 스크립트
Figure 12. 설정 파일에 존재하는 마이닝 풀 및 지갑 주소

공격에 사용된 파워쉘 스크립트를 분석한 결과 변수명, 함수명 그리고 전체적인 구조가 z0Miner와 유사한 것을 확인하였다. Z0Miner는 2020년 Tencent Security Team에서 처음으로 보고하였으며 Oracle Weblogic 원격 코드 실행 취약점(CVE-2020-14882 / CVE-2020-14883) 공격으로 유포되었다. 2021년에는 Atlassian Confluence의 원격 코드 실행 취약점(CVE-2021-26084) 취약점으로 유포된 사례가 보고되었으며 [7] [8], 과거 ASEC 블로그에서도 해당 공격 사례를 다룬 바 있다. [9]


5. 결론

공격자들은 패치되지 않은 취약한 Apache ActiveMQ 서비스를 대상으로 지속적으로 공격을 수행하고 있다. 확인된 공격들 중에는 코인 마이너를 설치하여 암호 화폐를 채굴하는 사례도 존재하지만 감염 시스템을 제어하기 위한 악성코드들이 다수 확인된다. 공격자는 감염 시스템을 장악한 이후 정보를 탈취하거나 랜섬웨어를 설치할 수 있다.

시스템 관리자는 사용 중인 Apache ActiveMQ 서비스가 다음과 같이 취약한 버전인지 점검하고 최신 버전으로 패치해 기존에 알려진 취약점으로부터 공격을 방지해야 한다.

Apache ActiveMQ 5.18.0 이상 5.18.3 미만 버전
Apache ActiveMQ 5.17.0 이상 5.17.6 미만 버전
Apache ActiveMQ 5.16.0 이상 5.16.7 미만 버전
Apache ActiveMQ 5.15.16 미만 버전
Apache ActiveMQ Legacy OpenWire Module 5.18.0 이상 5.18.3 미만 버전
Apache ActiveMQ Legacy OpenWire Module 5.17.0 이상 5.17.6 미만 버전
Apache ActiveMQ Legacy OpenWire Module 5.16.0 이상 5.16.7 미만 버전
Apache ActiveMQ Legacy OpenWire Module 5.8.0 이상 5.15.16 미만 버전

또한 외부에 오픈되어 접근 가능한 서버에 대해 방화벽과 같은 보안 제품을 이용해 공격자로부터의 접근을 통제해야 한다. 마지막으로 V3를 최신 버전으로 업데이트하여 악성코드의 감염을 사전에 차단할 수 있도록 신경 써야 한다.

파일 진단
– Exploit/PS.Ladon (2023.12.09.00)
– Downloader/XML.Generic (2023.12.13.00)
– HackTool/Win.Netcat.R5561954 (2023.12.12.03)
– Downloader/XML.Generic (2023.12.13.00)
– CoinMiner/PS.Agent (2023.12.13.03)
– Win-Trojan/Miner3.Exp (2020.01.23.00)
– CoinMiner/Text.Config (2023.12.13.03)

행위 진단
– Execution/MDP.Powershell.M2514
– Execution/MDP.AnyDesk.M4547

IOC
MD5

– eb0e70ea44e578201df1e3c49e905144 : Ladon (Ladon.ps1)
– 1a7e8e719e29c2cca5083053bb240dbc : XML (poc2.xml)
– b6e0db27c2b3e62db616b0918a5d8ed8 : Netcat (ncat.exe)
– c1aa596dc33f2ba4aadbd689a1652701 : XML (paste.xml)
– baeee25ebf0efeec414dce64b9e7aca7 : Downloader (paste.ps1)
– 2a0d26b8b02bb2d17994d2a9a38d61db : XMRig (s.rar)
– da12148890bc665a8a27bf695955d8b0 : XMRig Config (config.json)

C&C
– 27.191.193[.]193:50000 : Ladon Netcat
– 62.233.50[.]97:6666 : Netcat

Download
– hxxp://27.191.193[.]193:555/Ladon.ps1 : Ladon
– hxxp://27.191.193[.]193:555/poc2.xml : XML
– hxxp://62.233.50[.]101:11197/ncat.exe : Netcat
– hxxp://121.190.90[.]250:8081/js/3/paste.xml : XML
– hxxp://121.190.90[.]250:8081/js/3/paste.ps1 : Downloader
– hxxp://121.190.90[.]250:8081/js/s.rar : XMRig
– hxxp://121.190.90[.]250:8081/js/3/config.json : XMRig Config

연관 IOC 및 관련 상세 분석 정보는 안랩의 차세대 위협 인텔리전스 플랫폼 ‘AhnLab TIP’ 구독 서비스를 통해 확인 가능하다.

5 2 votes
별점 주기
Subscribe
Notify of
guest

0 댓글
Inline Feedbacks
View all comments