개요
XWorm은 모듈식 설계로 잘 알려진 탐지 회피성과 유연성을 갖춘 악성코드입니다. 탐지를 피하기 위해 난독화 기술을 사용합니다. 명령 및 제어 서버와 통신하여 악성 활동을 실행합니다. 실행 후, 악성코드는 구성 설정을 복호화하고 여러 인스턴스가 동시에 실행되는 것을 방지하기 위해 뮤텍스를 생성하여 은밀하게 활동합니다. XWorm과 C2 서버 간의 통신은 AES 암호화로 암호화되어 공격자가 감염된 시스템을 모니터링하고 원격으로 명령을 내릴 수 있도록 합니다. 또한, 중요한 시스템 정보를 수집 및 전송하고, DNS 설정을 조작하고, 시스템의 흔적을 삭제하면서 자체 업데이트를 수행할 수 있습니다.
기술 분석
처음에 맬웨어는 구성 설정을 복호화하기 전에 64초 동안 대기합니다. BaseXNUMX와 AES로 암호화된 이 설정에는 호스트, 포트, 키, 버전 등의 세부 정보가 포함됩니다.

구성 설정을 복호화한 후, 악성코드는 "2gdQBDwS8QGIOTWD"라는 이름의 뮤텍스를 생성합니다. 뮤텍스가 이미 존재하는 경우, 악성코드는 스스로 종료됩니다. 이러한 동작은 일반적으로 충돌을 방지하고 보안 도구의 탐지 위험을 줄이기 위해 구현됩니다.


이 악성코드는 TCP 소켓을 사용하여 명령 및 제어(C2) 서버에 연결합니다. 이 연결은 C2 도메인에서 확인된 IP 주소를 사용합니다. 소켓은 데이터를 송수신하도록 설정되어 있습니다. 활성 연결을 유지하기 위해 몇 초마다 C2 서버에 ping을 전송하고 퐁 응답을 기다립니다. 이를 통해 C2 서버에서 명령과 데이터가 중단 없이 실행되고 전송될 수 있습니다.

초기 연결이 설정되면 악성 코드 피해자의 컴퓨터에서 포괄적인 시스템 정보를 수집하여 공격자에게 전송합니다. 수집된 데이터에는 호스트 이름, 사용자 이름, 드라이버 세부 정보, 그리고 CPU 및 GPU 정보와 같은 하드웨어 사양이 포함됩니다. 이 정보는 공격자가 시스템을 분석하고 추가적인 악성 활동을 계획하는 데 도움이 됩니다.

ClientSocket.Send() 함수는 수집된 데이터를 C2 서버로 전송하기 전에 AES 암호화를 사용하여 암호화합니다. 이 암호화는 전송 중 데이터 보안에 도움이 되며, 보안 시스템이 전송되는 정보를 탐지하거나 분석하기 어렵게 만듭니다.

수집된 데이터가 전송되면 맬웨어는 ClientSocket.BeginReceive()를 호출하고 C2 서버의 응답을 기다립니다. 응답을 받으면 messages.read() 함수가 AES 암호화를 사용하여 데이터를 복호화합니다. 복호화된 정보는 하드코딩된 값과 비교하여 다음 단계에 취할 적절한 조치를 결정합니다. 그림: AES 복호화를 사용한 Read 함수 및 하드코딩된 문자열 비교.


XWorm 맬웨어는 피해자의 호스트 파일을 읽고 수정하여 DNS 조작 공격을 가능하게 합니다. 호스트 명령을 사용하면 XWorm이 호스트 파일의 사본을 공격자에게 전송하고, 공격자는 이를 수정된 버전으로 덮어쓸 수 있습니다. 변경 후 XWorm은 공격자에게 확인 메시지를 전송하여 작업이 성공적으로 수행되었음을 확인합니다.

Xworm은 자체 업데이트 기능을 갖추고 있으며 시스템에서 흔적을 제거합니다. IsUpdate가 true이면 맬웨어는 임시 디렉터리에 파일을 작성합니다. 그런 다음 실행 후 원본 실행 파일과 배치 파일 자체를 삭제하는 배치 파일을 생성합니다. 이를 통해 맬웨어는 숨겨진 상태를 유지하고, 자체 업데이트하며, 존재의 흔적을 제거합니다. 임시 디렉터리를 사용하고 자체 삭제함으로써 맬웨어는 탐지를 피하고 감염된 시스템에서 계속 실행됩니다.

플러그인 형태로 새로운 기능을 추가하거나 기존 기능을 제거할 수 있는 유연성을 제공합니다. 이러한 모듈형 구조 덕분에 공격자는 악성코드를 맞춤 설정하여 다양한 환경에 적응할 수 있습니다.

"플러그인" 명령은 C2 응답에서 콘텐츠를 검색하고 로드하는데, 여기에는 "ngork", "ENC", "DEC"와 같은 다양한 값과 비교되는 메서드 이름이 포함됩니다. 이러한 값은 ngork 설치, 랜섬웨어 암호화 및 복호화 프로세스와 일치할 가능성이 높습니다.


결론 :
XWorm 맬웨어 변종은 지속성과 제어를 유지하기 위해 우회 기법을 사용합니다. 구성 설정을 암호화하고, 뮤텍스를 생성하여 단일 인스턴스만 실행되도록 하며, 명령 및 제어 서버와의 지속적인 통신을 보장합니다. 시스템 정보를 수집하고 안전하게 전송함으로써 XWorm은 공격자에게 추가 공격을 위한 귀중한 통찰력을 제공합니다. 이러한 특징은 맬웨어의 적응성과 복원력을 강조하며, 강력한 보안 관행, 지속적인 모니터링, 그리고 사전 예방적 조치의 중요성을 강조합니다. 위협 이러한 정교한 위협을 방어하기 위한 탐지 기능.
IOC:
MD5
3EEACBE10835A79077EF83C93DCF636B
0B796B2F6383FE2916F678E78666F713
보호:
트로이 목마.X웜.S34251703
트로이 목마.제네릭FC.S29960909
미터 공격:
| 술책 | 기술 ID | 이름 |
| 난처 | T1027 | 난독화된 파일 또는 정보 |
| 실행 | T1059.005 | 명령 및 스크립팅 인터프리터: Visual Basic |
| 화면 캡처 | T1113 | 화면 캡처 |
| 피해자 호스트 정보 수집 | T1592 | 시스템 정보를 수집합니다 |
| 입력 캡처 | T1056 | 키 로깅 |
| 방어 회피 | T1055.002 | 프로세스 주입: 휴대용 실행 파일 주입 |
| 콘텐츠 주입 | T1659 | 시스템에 악성 코드 주입 |
| 명령 및 제어 | T1071.001 | 애플리케이션 계층 프로토콜: 웹 프로토콜 |
저자:
바이바브 크루슈나 빌라데
루마나 시디키



