관리 메뉴

HeeJ's

[03] Hancitor with Ficker Stealer and Cobalt Strike(2) 본문

<Project>/<Network>_2021

[03] Hancitor with Ficker Stealer and Cobalt Strike(2)

meow00 2021. 5. 12. 00:32

두 번째 pcap에서도 첫 번째 pcap 파일처럼 HTTP GET 요청에서 docs.google.com의 링크를 확인할 수 있다.

b2b.ebike-your-life.com 사이트의 HTML 페이지를 확인하여 웹 브라우저에서 열어 취약한 워드 파일을 얻을 수 있다.

 

(http.request.uri contains "/8/forum.php") or (http.host.contains api.ipify.org)

http.request.uri contains "/8/forum.php" -> 문서를 얻은 php페이지를 찾기위해 /8/forum.php를 포함하는 요청 uri확인

http.host contains api.ipify.org -> Ficker Stealer에 대한 exe는 자체적으로 악성이 아닌 api.ipifly.org/?format=xml에 대한 IP 주소 검사를 발생시키기 때문에 api.ipify.org를 포함하는 host 이름 확인

 

위에 출력된 것들은 Hancitor C2 트래픽과 함께 Hancitor 및 Ficker Stealer의 IP 및 주소이다.

 

api.ipify.org - GET
anumessensan.ru - POST /8/forum.php

api.ipify.org - GET /?format=xml

 

그리고 실행 파일(exe, bin)을 요청으로 받는 uri를 필터링해 주었다.

이는 Hancitor에서 보낸 후속 멜웨어를 필터링 한 것이다.

 

그리고 위에 나타난 것 처럼 Hancitor가 Cobalt Strike 및 Ficker Stealer에 대한 후속 악성코드를 보내는 것을 확인할 수 있다.

 

backupez.com - GET /0902.bin

backupez.com - GET /0902s.bin

backupez.com - GET /6yudfgh.exe

 

다시 웹 기본 필터((http.request or tls.handshake.type == 1) and !(ssdp))로 돌아가보면 backupez.com에 대한 트래픽 후 발생하는 HTTP 요청 유형을 확인한다.

결과에는 TCP 포트 1080을 통한 HTTP 트래픽과 TCP 포트 4443을 통한 HTTPS 트래픽이 표시되어야 한다.

 

[Analyze] - [Decode As]를 통해 TCP 포트 1080을 HTTP로 디코딩하는 새 항목을 만든다.

wireshark 설정은 TCP 포트 1080을 통한 HTTP 트래픽을 표시하지 않을 수 있으므로 이를 표시하도록 wireshark를 설정해야 한다.

 

설정을 마친 후 보면 Cobalt Strike에 대한 HTTP 및 HTTPS 트래픽이 모두 표시된 것을 확인할 수 있다.

 

위의 그림에 표시된 Cobalt Strike로 인한 트래픽은 다음과 같다.

104.160.190.114 : 8080-GET / WWFh

104.160.190.114 : 8080-GET / fwlinkk

104.160.190.114 port 4443-HTTPS 트래픽

 

104.160.190.114:8080에 대한 초기 HTTP GET 요청의 TCP 스트림

WWFh로 끝나는 첫 번째 HTTP GET 요청은 Cobalt Strike에 사용되는 Windows 바이너리이다.

여러 바이너리 중 인코딩된 base64를 가질만한 크기의 바이너리를 반환해주었다.

 

첫 번째 HTTP 요청의 104.160.190.114:8080 / fwlink는 48바이트의 인코딩된 데이터를 반환한다.

Cobalt Strike C2에 대한 HTTPS 트래픽은 TCP 포트 443을 통해 104.160.190.114에 대한 트래픽이 약 1초에 한 번 나타나며, 사용량이 많다.

 

 


Hancitor C2, Cobalt Strike C2 and Send-Safe Spambot Malware

 

(http.request or tls.handshake.type == 1) and !(ssdp)를 사용했을 때, 같은 일시에 Cobalt Strike C2 트래픽의 HTTP GET 요청을 세 개 볼 수 있다.

 

이 Windows 실행 파일을 보냈음을 확인하기 위해 필터링 해 주었다.

 

backupez.com에 대한 또 다른 HTTP GET 요청을 확인할 수 있다. 이 도메인은 Hancitor가 후속 멜웨어를 푸시하는데 사용하는 도메인이다. 이 URL은 47.exe로 끝난다.

 

47.exe를 추출하기 위해 [File] - [Export Objects] - [HTTP]를 사용해 주었다.

 

send-safe는 지금은 없어졌지만 send-safe.com이라는 이름의 상업적인 프로그램으로 팔고 있었다.

이 프로그램을 멜웨어와 같이 Windows 컴퓨터를 스팸 봇 호스트로 감염되게 할 수 있는 많은 위협 요소를 가진 멜웨어로 사용했다.

 

send-safe 스팸봇에 감염된 Windows 호스트는 다음의 트래픽을 생산한다.

 

TCP 포트 50025를 통해 31.44.184.47에 대한 HTTPS 트래픽

UDP 포트 50026을 통해 31.44.184.47로의 트래픽

Hancitor를 푸시하는 악성 스팸을 보내는 SMTP 트래픽

 

이 send-safe 스팸봇을 조금 더 간단하게 만들기 위해 두 서비스를 동일한 IP 주소에서 호스팅하고, 포트만 다르게 사용한다.

 

위의 스팸봇을 나타내는 트래픽을 찾기 위해 여러 필터들을 사용해 확인해주었다.

 

send-safe UDP 트래픽을 찾기 위한 필터링이다.

 

send-safe SMTP 트래픽 및 HTTPS 트래픽을 보기 위해 위의 필터를 사용해주었다.

 

SMTP?

더보기

SMTP(Simple Mail Transfer Protocol)

: 전자 우편을 송수신하는데 사용되는 TCP/IP 프로토콜이다.

일반적으로 POP3 또는 IMAP(Internet Message Access Protocol)와 함께 사용되어 메시지를 서버 메일함에 저장하고 사용자를 위해 서버에 주기적으로 메시지를 다운로드 한다.

 

send-safe로 인한 TCP 포트 50025를 통한 HTTPS 트래픽 확인

send-safe로 인한 TCP 포트 50025를 통한 HTTPS 트래픽은 위의 그림과 같이 send-safe를 OrganizationName 및 commonName으로 사용하는 인증서 발급자 데이터가 있다.

 

send-safe 멜웨어로 인한 HTTPS 트래픽의 send-safe 관련 인증서 발급자 데이터

 

이 pcap의 SMTP 트래픽은 암호화되지 않았으므로, Wireshark를 사용하여 이메일을 추출할 수 있다.

 

[File] - [Export Objects] - [IMF]

이 pcap에는 167개의 내보낼 수 있는 이메일을 포함한다.

 

평균적으로 send-safe에 감염된 Windows 호스트에서 초당 몇 개의 메시지가 푸시되었다.

Hancitor 스팸 항목 중 Thunderbird 이메일 클라이언트에서의 특징은 잘 알려진 은행을 스푸핑한다는 것이다.

 

위의 eml 파일을 열어보면 <a>태그로 docs.google.com/documents/d/e/... 형식의 주소가 링크 걸려있다.

메일을 열었을 때 걸려있는 링크이며, 이 링크를 실행하면 취약한 word 파일이 열리며 hancitor 감염이 시작된다.