• 위협 인텔리전스
    • 악성코드
    • 다크웹
    • 취약점
    • 피싱/스캠
    • CERT
    • 스미싱
    • EndPoint
    • 모바일
    • Networks
    • APT
    • 트렌드
  • 데일리 위협
  • 보안 권고문
  • RSS
  • Feedly
  • 언어
    • 한국어
    • English
    • 日本語
한국어
English
日本語
RSS
Feedly
APT 악성코드

Lazarus 그룹의 윈도우 웹 서버 대상 공격 사례 분석

  • 3월 05 2025
Lazarus 그룹의 윈도우 웹 서버 대상 공격 사례 분석

AhnLab SEcurity intelligence Center(ASEC)은 정상 서버를 침해해 C2로 악용하는 Lazarus 그룹의 공격 사례들을 확인하였다. 국내 웹 서버를 대상으로 웹쉘 및 C2 스크립트를 설치하는 공격 사례들은 지속적으로 발생하고 있으며 나아가 LazarLoader 악성코드와 권한 상승 도구가 확인되는 사례들도 존재한다.

 

1. C2 스크립트 (Proxy)

2024년 5월 Lazarus 그룹이 국내 웹 서버를 공격해 첫 번째 단계의 C2 서버로 활용한 사례가 확인되었다. 첫 번째 단계의 C2 서버는 다음 단계의 C2 서버에 대한 프록시로 동작하면서 악성코드와 두 번째 단계의 C2 서버와의 통신을 중개하는 역할을 담당한다. 참고로 공격 대상 웹 서버는 IIS 서버였기 때문에 ASP 포맷의 웹쉘 및 C2 스크립트가 사용되었으며 이는 2020년 12월 Kaspersky사에서 공개한 유형과 동일하였다. [1]

Figure 1. Kaspersky사에서 공개한 C2 스크립트와 동일한 유형

2025년 1월 확인된 공격 사례 또한 과거 사례와 유사하게 Lazarus 그룹이 첫 번째 단계의 C2 서버로 악용하기 위한 인프라로 사용한 것으로 추정된다. 즉 첫 번째 단계의 C2 스크립트가 확인되었는데 과거 사례와 동일하지는 않지만 프록시로 동작한다는 실질적인 기능은 유사하다. 이전 사례와의 차이점 중 하나는 통신 과정에서 Form 데이터뿐만 아니라 Cookie 데이터를 지원한다는 점이다.

Figure 2. 새롭게 확인된 C2 스크립트

Form 데이터일 경우 명령은 “code” 항목으로 전달된 번호에 따라 달라지며 Cookie를 통해 전달받는 경우 내부적으로 파싱하여 사용한다.

code 명령 기능
0 MidRequest 데이터 리다이렉트
1 ProxyCheck Mid Info 저장
2 ReadFile 파일 읽기
3 WriteFile 파일 쓰기
4 ClientHello Mid Info 응답 및 Proxy Log 쓰기
5 ProxyLog Proxy Log 응답
6 CheckFileTransfer 파일 조회

Table 1. Form 방식에서 지원하는 명령

code 명령 기능
0 MidRequest 데이터 리다이렉트
2 ReadFile 파일 읽기
3 WriteFile 파일 쓰기
4 ClientHello Mid Info 응답 및 Proxy Log 쓰기

Table 2. Cookie 방식에서 지원하는 명령

과거 사례에서는 “_ICEBIRD007.dat”, “~F05990302ERA.jpg”와 같은 파일들이 사용되었다면 이번에 사용되는 데이터는 웹쉘 변수명을 참고할 경우 다음과 같다.

경로 목적
Bottom1.gif Mid Info (Mode 및 ID 번호)
Bottom2.gif Proxy Log
Bottom3.gif Response Page

Table 3. 사용하는 데이터 파일

 

2. WebShell 분석

2025년 1월 공개된 공격 사례 또한 2024년 5월 공개된 사례와 유사하게 RedHat Hacker 웹쉘이 사용되었는데 “function2.asp”라는 이름으로 설치되었다. 참고로 이전 사례에서 RedHat Hacker 웹쉘은 과거 HvS-Consulting AG에서 공개한 보고서와 동일한 비밀번호인 “1234qwer”이 사용되었지만 이번에 사용된 웹쉘은 “2345rdx”가 사용된 것이 특징이다.

Figure 3. RedHat Hacker 웹쉘

감염 시스템에는 RedHat Hacker 외에도 “file_uploader_ok.asp”, “find_pwd.asp” 2개의 웹쉘이 함께 확인되었으며 실질적으로 동일한 웹쉘이다. UI는 제공되지 않지만 파일 및 프로세스 작업이나 SQL 쿼리와 같은 조회 기능들을 지원하는 웹쉘이다. 참고로 확인된 웹쉘 및 C2 스크립트들은 모두 인코딩된 형태의 VBE 포맷이며 복호화 후에도 난독화된 것이 특징이다.

웹쉘 “file_uploader_ok.asp”, “find_pwd.asp”는 전달받은 데이터의 두 번째 및 세 번째 바이트가 “OK” 문자열인지를 검사하며 첫 번째 바이트는 패킷 데이터 복호화의 키로 사용한다. 패킷 데이터는 첫 번째 1바이트 키뿐만 아니라 랜덤한 문자열을 함께 사용하는데 각각 “xdmCz1eQ:?EkQ0d%c%r%jgY!fjabTTA0″와 “#N@BGjn8g5!yCJAfiEFzq04Cqr%dFvcX”가 사용된다.

Figure 4. 초기화 및 전달 패킷 검증 루틴

해당 웹쉘은 JSON 포맷의 데이터를 전달받아 동작하며 다음과 같은 명령들을 지원한다.

명령 기능
check OS 버전 및 웹쉘 버전 응답
index 웹 서버 루트 경로, 현재 스크립트 경로, 사용 가능한 드라이브 정보 응답
dir 디렉터리 조회
dn 파일 다운로드
up 파일 업로드
del 파일 또는 디렉터리 삭제
create 파일 또는 디렉터리 생성
mv 파일 이동
mtime 파일 수정 시간 변경
mhash 파일 해시 계산
read 파일 읽기
write 파일 쓰기
run 명령 실행
test 전달받은 주소에 대한 SQL 연결 테스트
sql SQL 쿼리 또는 덤프

Table 4. 지원하는 웹쉘 명령

 

3. LazarLoader 및 권한 상승 도구 분석

위에서 다룬 웹쉘이 확인된 또 다른 웹 서버에서는 LazarLoader 악성코드와 UAC Bypass 기능을 담당하는 권한 상승 악성코드가 확인되기도 하였다. 여기에서는 로더 악성코드로서 외부에서 페이로드를 다운로드하거나 시스템에 저장된 파일 또는 레지스트리에서 페이로드를 읽어 메모리 상에서 복호화하여 실행하는 악성코드를 LazarLoader로 분류한다.

자사 ASD(AhnLab Smart Defense) 인프라에 따르면 공격자는 최초 침투 과정에서 웹쉘을 설치한 이후 이를 악용해 LazarLoader를 추가적으로 설치한 것으로 추정된다. 다음은 IIS 웹 서버 프로세스인 w3wp.exe를 통해 LazarLoader가 설치된 로그이다.

Figure 5. ASD에서 확인되는 LazarLoader 설치 로그

공격 사례에서 확인된 LazarLoader는 다운로더 유형으로서 다음과 같이 페이로드를 다운로드하는데 사용되는 주소가 하드코딩되어 있는 것이 특징이다. 복호화 과정을 거쳐 PE 여부를 확인하며 최종적으로 메모리 상에서 로드하는 부분은 다른 LazarLoader 유형들과 동일하다. 다운로드한 페이로드를 복호화하는 과정에서는 “Node.Js_NpmStart”라는 16Bytes 크기의 키가 사용된다.

Figure 6. 복호화에 사용되는 문자열

공격에 사용된 LazarLoader는 현재 다운로드가 불가하지만 백도어 유형을 다운로드했을 것으로 추정된다. 설치 이후 다음과 같이 추가 악성코드를 실행하는 로그가 확인되기도 하였다.

> rundll32.exe C:\ProgramData\USOShared\sup.etl,SerializeMarketTable_32 x9nsB3iYUWiDT6BZKO5pgtMW -v 62 -m D:/www/**********/********/******/****/ac_lst.exe > C:\ProgramData\USOShared\log.txt

Figure 7. 권한 상승 도구를 실행하는 LazarLoader

“sup.etl”은 권한 상승 악성코드로서 외형은 패커이다. 처음 실행되면 인자로 전달받은 키인 “x9nsB3iYUWiDT6BZKO5pgtMW“를 이용해 내부에 암호화되어 있는 원본 악성코드를 복호화하고 메모리 상에서 실행한다.

첫 번째 인자는 내부 페이로드 복호화에 사용되며 두 번째 인자 즉 “-v” 이후의 값은 62가 사용되었다. 복호화된 페이로드는 공격자가 UACMe에서 특정 기능만을 가져와서 제작한 것으로 추정된다. 인자로 62가 사용될 경우 “ComputerDefaults.exe”를 악용하는 방식의 UAC Bypass 기법이 사용되는데 이는 실제 UACMe에서 지원하는 번호와 동일하기 때문이다. “-v” 옵션이 62일 경우에는 “ComputerDefaults.exe”를 악용하며, 아닐 경우에는 “fodhelper.exe”를 악용한다. 그리고 만약 “11259375” 즉 “0xABCDEF”인 경우에는 동작하지 않고 종료하는 것이 특징이다.

순서 인자 기능
1 N/A 내부 페이로드 복호화에 사용되는 키
2 -v UACMe 번호
3 -m 실행할 파일 경로

Table 5. 권한 상승 도구의 인자

“ComputerDefaults.exe” 및 “fodhelper.exe”를 악용하는 UAC Bypass 기법들은 모두 레지스트리 키 “HKCU\Software\Classes\ms-settings\Shell\Open\command”를 악용하는 방식들이다. 다음과 같이 레지스트리에 악성코드 경로 즉 여기에서는 “-m”을 인자로 전달받은 “ac_lst.exe”를 설정한 후 “ComputerDefaults.exe” 또는 “fodhelper.exe”를 실행하면 해당 프로그램이 지정한 악성코드인 “ac_lst.exe”를 관리자 권한으로 실행시키는 방식이다.

Figure 8. 레지스트리에 설정된 악성코드 경로

“ComputerDefaults.exe”와 “fodhelper.exe”는 모두 UAC 팝업 없이 관리자 권한으로 실행되는 autoElevate 프로그램이다. 실행 시 위의 레지스트리 경로를 참고하여 자식 프로세스로 지정한 프로그램을 실행하는데 관리자 권한으로 실행되는 프로세스의 자식 프로세스임에 따라 자동으로 권한 상승이 가능한 방식이다. 

참고로 권한 상승 악성코드를 통해 실행된 프로세스는 해당 악성코드 자체를 실행한 “ac_lst.exe”이기 때문에 최초 침투 과정에서 백도어로서 “ac_lst.exe”를 설치한 이후 다시 관리자 권한으로 권한 상승시키기 위한 목적으로 악용한 것으로 추정된다. 

 

4. 결론

ASEC은 최근 Lazarus 그룹이 국내 웹 서버들을 공격하여 웹쉘과 LazarLoader를 설치하고 있는 것을 확인하였다. 공격자는 이러한 공격을 수행한 이후에는 C2 스크립트를 설치해 다른 공격의 C&C 주소로 악용하였다.

공격자는 부적절하게 관리되고 있거나 취약점이 패치되지 않은 웹 서버를 공격하여 웹쉘을 설치할 수 있다. 관리자는 웹 서버에 존재하는 파일 업로드 취약점을 점검하여 초기 침투 경로인 웹쉘 업로드를 사전에 막을 수 있도록 해야 한다. 그리고 비밀번호를 주기적으로 변경하고 접근 제어를 설정하여 탈취된 계정 정보를 이용한 측면 이동 공격에 대응해야 한다. 또한 V3를 최신 버전으로 업데이트하여 악성코드의 감염을 사전에 차단할 수 있도록 신경 써야 한다.

파일 진단
– Trojan/ASP.Proxy.SC198862 (2025.01.16.02)
– WebShell/ASP.Generic (2025.01.20.02)
– WebShell/ASP.Generic (2025.01.20.02)
– WebShell/ASP.Generic (2025.01.17.01)
– Trojan/Win.LazarLoader.C5730315 (2025.02.14.03)
– Trojan/Win.LazarLoader.R692195 (2025.02.14.03)
– Trojan/Win.UACMe.R455616 (2021.12.28.00)

 

MD5

0620fa617bc9ef32b93adcf40fe291a4
0734a2c3e827ccf558daf48290d06d8c
41ffc15c24259156db000af297c71703
89921e5f39407a5e63df013468181991
adabf920682fac1e6a81e655b1182590

AhnLab TIP를 구독하시면 연관 IOC 및 상세 분석 정보를 추가적으로 확인하실 수 있습니다. 자세한 내용은 아래 배너를 클릭하여 확인해보세요.

Tags:

IIS LazarLoader Lazarus PrivilegeEscalation proxy RedHatHacker UACBypass UACMe WEBSERVER WebShell
Previous Post

주간 탐지 룰(YARA, Snort) 정보 – 2025년 3월 1주차

Next Post

2025년 2월 피싱 이메일 동향 보고서