TigerDemon

5주차 APT 악성코드 사례 - IceFog 본문

2025-SWLUG/악성코드 스터디

5주차 APT 악성코드 사례 - IceFog

호랑2D 2025. 10. 26. 20:38

제 3 장 악성코드 상세 분석

제 7 절 아이스포그(IceFog) APT 악성코드

국내와 일본을 대상으로 공격하는 소규모 APT공격 조직으로 2011년부터 시작되었으며 지난 수년간 규모와 범위가 확대되었다.

 

가. 백도어

기본적으로 시스템 정보를 수집하고, cmd 명령어 수행, 파일 다운로드/업로드 행위, 암/복호화 루틴이 존재하며, 특정 샘플에서는 이메일을 통한 다운로드/업로드 행위를 수행한다.

먼저 호스트 이름, 프록시, 사용자 이름, 시스템 디렉토리 위치, OS 언 어, 시스템 버전을 수집하고 저장한다.

(그림 3-78) 정보 수집

핵심 함수

GetUserNameA(&v11, &pcbBuffer) 현재 시스템에 로그인된 사용자의 이름을 가져옵니다.
GetVersionExA(&VersionInformation) 현재 시스템의 운영체제(OS) 버전 정보를 가져옵니다.
GetComputerNameA(&name, 128) 현재 컴퓨터의 이름을 가져옵니다.
gethostbyname(&name) 컴퓨터 이름(&name)을 사용하여 호스트 정보를 가져옵니다.
*이는 주로 IP 주소를 얻는 데 사용됩니다.
GetSystemDirectoryA(&:Buffer, 0x100u) Windows 시스템 디렉토리의 경로(예: C:\Windows\System32)를 가져옵니다.

 

특정 C&C서버 주소에 접근하여 명령을 수신하고, 명령에 따라 cmd 명령어를 실행하거나 파일 다운로드/업로드, 코드를 암/복호화하는 행위 를 수행한다.

 

(그림 3-79) C&C 서버 접속 / (그림 3-80) cmd 명령어

 

(그림 3-81) 파일 업로드 명령어 루틴

핵심 함수 설명

sprintf(&v40, "/dj/uploads/%s", v22 + 1) 업로드 URL 경로 생성
sub_100016CD(&v40, &CommandLine) 업로드 실행 
sub_1000181F("uploads", v12) 후속 명령 또는 로깅

 

(그림 3-82) 파일 다운로드 명령어 루틴

 

핵심 함수 설명

v15 = CreateFileA(&CommandLine, 0x80000000u, 1u, 0, 3u, 0x80u, 0)

&CommandLine 로컬 파일 이름 (경로가 없는 파일 이름일 수 있음).
0x80000000u (GENERIC_WRITE) 파일에 데이터를 쓸 수 있는 권한으로 오픈
3u (OPEN_EXISTING 또는 CREATE_ALWAYS와 같은 모드) 파일 생성/열기 방식

 

 

(그림 3-83) 코드 명령어 루틴

 

핵심 함수 설명

unknown_libname_76(0, 0, sub_1000102B, v22, 0, 0)

v22 실행할 명령어 문자열이 포함
sub_1000102B 명령어 실행에 필요한 콜백 함수 또는 프로세스 생성 함수의 주소

 

(그림 3-84) 파일 암/복호화 루틴

핵심 함수 설명

do { ... } while ( v10 ); 데이터 복호화 루프
*v6 = *(v6 + v4 - v5) ^ 0x39; XOR 복호화 연산

 

(그림 3-85)은 백도어 유형의 아이스포그(IceFog) APT 악성코드 중 특정 샘플에만 존재하며, 이메일 계정을 통해 파일을 업로드하거나 다운로 드를 시도한다.

(그림 3-85) 이메일을 통한 업로드/다운로드 루틴

2. 분석 결과

가. C&C 서버

아이스포그(IceFog) APT 악성코드에서 사용하는 C&C 서버의 주소는 아래 표와 같다. 악성코드에 감염된 PC는 해당 C&C 서버에 수집된 정보를 업로드하거나 파일을 다운로드하고, 추가 명령어를 수신해 cmd 명령을 수신한다

 

나. 이메일 주소 

IceFog APT 악성코드에서 사용하는 이메일 주소는 아래 표와 같다. 악 성코드에 감염된 PC는 해당 이메일 주소를 통해 수집된 정보를 업로드 하거나 파일을 다운로드하고 추가 명령을 수신한다.

다. 악성코드 통계

아이스포그(IceFog) APT 악성코드 샘플 10개 중 6개의 샘플이 백도어 (60%), 3개의 샘플이 드롭퍼(30%), 1개의 샘플이 실행 불가능(10%)이며, 전체 악성코드 유형 통계는 (그림 3-86)이다.