Formbook은 Infostealer 유형의 악성코드로, 주로 메일의 첨부파일을 통해 유포되며 유포량이 매우 많다. ASEC 블로그에도 관련 게시글을 여러 차례 게시하였다.
ASEC 분석팀은 최근 Formbook 악성코드가 이메일을 통해 새로운 버전으로 유포 중인 것을 확인했다. 기존 Formbook 악성코드는 내부에 버전을 의미하는 숫자가 “4.1” 이었지만 최근 유포 중인 Formbook 악성코드는 “2.3”을 사용한다. 본 게시글에서는 Formbook 악성코드를 유포 중인 실제 이메일 내용과 변화된 버전의 차이점을 공유하고자 한다.
공격자는 국내 대형 건설사를 사칭하여 악성 메일을 전송하였으며 내용은 다음 [그림 1]과 같다. 해당 내용은 실제 진행 중인 프로젝트로, 과거에 동일한 내용으로의 악성코드 유포가 보고된 바 있다. 공격자는 과거에 활용한 템플릿을 그대로 활용한 것으로 추정된다.

메일 내부에는 첨부파일 3개가 존재한다. 각각의 첨부파일 모두 Formbook 악성코드를 담고 있다.
첨부파일은 “.img” 확장자로, 대부분의 압축 프로그램에서 해당 파일을 열 수 있도록 지원한다. Win 10 환경에서는 압축 프로그램을 사용하지 않아도 윈도우 기본 기능을 통해 자동으로 가상 드라이브로 마운트되어 내부 파일을 확인 및 실행할 수 있다.

각 이미지 파일의 내부에는 모두 Formbook 악성코드가 담겨 있으며, 행위는 동일하지만 파일마다 PE 구조가 조금씩 다르다.
실행 시 인터넷 연결을 확인한다. google 또는 bing에 연결되지 않을 경우 행위가 발현되지 않는다. 실행된 파일의 경로 및 이름을 확인한 뒤 C:\Windows\Microsoft.NET\Framework\ 하위에 존재하는 AddInProcess32.exe 파일을 %TEMP% 경로에 복사한다. 이후 자기 자신을 %APPDATA% 경로의 RFQ.exe 이름으로 복제 및 실행한다. 이때 해당 파일은 레지스트리 Run 키를 통해 자동실행 등록된다. RFQ.exe 이름으로 실행된 프로세스는 AddInProcess32.exe 파일을 실행한 후 Formbook 악성코드 바이너리를 할로잉한다. Formbook 악성코드 실행이 완료되면 AddInProcess32.exe 파일을 삭제한다.


여기까지는 악성 패커의 Formbook 로드 과정이며, 이후 Formbook 악성코드는 자신이 실행한 System32 하위 정상 프로세스와 실행 중인 explorer.exe에 각각 인젝션되어 악성 행위를 수행한다. System32 프로세스는 정보 수집 및 명령 수행, explorer.exe는 C2 데이터 전송 및 명령 수신의 역할을 한다.
최근 Formbook 악성코드 버전의 변경이 확인되었다. 내부 사용되는 문자열 중 버전에 해당하는 문자열이 기존 4.1에서 2.3으로 변경되었으며 변경된 버전에서는 크게 다음과 같은 차이점이 존재한다.
시그니처 문자열 변경 및 암호화
Formbook 악성코드는 “FBNG” 문자열의 시그니처를 사용해왔다. 해당 데이터는 C2로 전송되는 데이터와 C2로부터 수신되는 데이터의 맨 앞에 위치하여 Formbook 악성코드에 의한 데이터임을 식별한다. 2.3 버전에서는 “FBNG” 문자열이 “XLNG”로 변경되었다.

또한 C2로부터 명령 수신 시 이전에는 “FBNG” 시그니처 문자열은 평문으로 존재한 채 데이터만 암호화된 패킷을 응답하였지만, 변경된 버전에서는 “XLNG” 시그니처 문자열을 포함하여 암호화된 데이터를 응답한다. 따라서 Formbook C2의 명령 데이터라는 것을 식별하기 더욱 어려워졌다.

위 그림과 같이 2.3 버전에서는 C2 응답 데이터에 시그니처가 존재하지 않는다. 해당 응답 데이터를 복호화 하면 다음과 같이 데이터 시작과 끝에 “XLNG” 시그니처를 확인 가능하다.

2. 데이터 암호화 알고리즘 변경
C2로 데이터 전송 시의 암호화 알고리즘이 변경되었다. 기존에는 RC4 암호화, Base64 인코딩, 문자열 치환 과정을 거쳐 데이터를 암호화하였다. 변경된 버전에서는 또 다른 키를 사용한 RC4 암호화 과정이 추가되었다. 특정 연산을 통해 키를 계산하여 사용한다. 따라서 변경된 암호화 과정은 다음과 같다.
- 1차 rc4 암호화
- 2차 rc4 암호화
- base64 인코딩
- 특정 문자 치환

3. 클립보드 데이터 실시간 전송 기능 추가
기존에는 클립보드 데이터를 System32 인젝션 프로세스가 파일로 드롭할 경우 explorer.exe는 해당 파일을 주워 C2로 전송하는 구조였다. 변경된 버전에서는 explorer.exe에서 동작하는 코드에 실시간으로 클립보드 데이터를 전송하는 행위로 변경되었다. 따라서 주기적으로 클립보드 데이터가 메모리상에 누적되며 C2로 전송된다. 전송되는 데이터는 다음 그림과 같이 Foreground Window의 제목과 클립보드 데이터가 차례로 작성된 문자열이다.

이와 같이 변경된 버전의 Formbook 악성코드가 활발히 유포되고 있어 사용자의 주의가 필요하다. 한편 Ahnlab V3 제품에서는 해당 악성코드를 다음과 같이 차단하고 있다.

[파일진단]
Trojan/Win32.Formbook.C4356034
[행위진단]
Malware/MDP.Injection.M3509
[IOC 정보]
1be5def739c9cede7a1bf189fc8c8bf6
www[.]contex3.info/knf4/
Categories:악성코드 정보
[…] 메일을 통해 유포 중인 새로운 버전의 Formbook 악성코드 […]
[…] 메일을 통해 유포 중인 새로운 버전의 Formbook 악성코드 […]
[…] 메일을 통해 유포 중인 새로운 버전의 Formbook 악성코드 […]
[…] 메일을 통해 유포 중인 새로운 버전의 Formbook 악성코드 […]
[…] 메일을 통해 유포 중인 새로운 버전의 Formbook 악성코드 […]