
AcrStealer의 리버스 엔지니어링 분석 — 맞춤형 프로토콜, 브라우저 자격 증명 탈취, 페이로드 추출을 사용하는 정교한 정보 탈취기입니다. Task.Protocol, BrowserQueryEnabledDomains, WriteProcessMemory 및 전체 API 목록을 포함합니다.
Process Hacker 메모리 분석 결과 AcrStealer는 C2 서버와의 보안 통신을 위해 SSL/TLS를 사용하여 네트워크 연결을 설정하는 것으로 나타났습니다.
SslClientCert – 인증에 클라이언트 인증서를 사용합니다(탐지 회피).EnabledProtocols – 지원되는 TLS 프로토콜(예: TLS 1.2, 1.3)을 지정합니다.EnabledRevertToSelfClientCertificate – 자체 서명 인증서로의 대체를 허용합니다.Connection / DataChunks – 활성 데이터 전송을 나타냅니다.Available – 전송 준비가 완료된 데이터 버퍼입니다.DataChunks는 대량의 탈취 데이터가 전송되고 있음을 시사합니다.
SSL/TLS 구성(SslClientCert, EnabledProtocols)과 네트워크 활동을 보여주는 Process Hacker 화면.
추출된 .bin 파일에 대한 Binary Ninja 분석 결과 AcrStealer는 Task.Protocol 구조를 기반으로 한 사용자 정의 네트워크 프로토콜을 사용하여 C2와 통신하는 것으로 나타났습니다.
Task.Protocol.SendData – C2 서버로 데이터를 전송합니다.Task.Protocol.ReceiveData – C2 서버로부터 데이터를 수신합니다.Task.Protocol.Configuration – 프로토콜 구성을 저장합니다.Task.Protocol.CancelHandle – 진행 중인 작업을 취소합니다.CreateProtocolHandle – 통신을 위한 프로토콜 핸들을 생성합니다.CloseProtocolHandle – 프로토콜 핸들을 닫습니다.CONNECT – 연결을 설정합니다.SEND – 데이터를 전송합니다(유출).RECEIVE – 명령을 수신합니다.CLOSE – 연결을 닫습니다.GLOBAL – 전역 구성입니다.CONFIGURATION – 프로토콜 설정입니다.SEND 명령은 탈취한 데이터를 유출하는 데 사용됩니다.
Task.Protocol 구조와 프로토콜 키워드(CONNECT, SEND, RECEIVE)를 보여주는 Binary Ninja 화면.
Process Hacker 메모리 분석 결과 AcrStealer가 브라우저 데이터와 네트워크 자격 증명을 탈취 대상으로 삼는 것으로 나타났습니다.
BrowserQueryEnabledDomains – 브라우저에서 활성화된 도메인을 쿼리합니다.BrowserQueryOtherDomains – 다른 도메인을 쿼리합니다(쿠키 탈취 가능성).BrowserResetStatistics – 브라우저 통계를 재설정합니다(탐지 회피).BrowserRefresh – 브라우저 데이터를 새로 고칩니다(새 자격 증명 캡처).NetworkAddress – 네트워크 어댑터 정보를 캡처합니다.NetChannelSet – 네트워크 채널을 관리합니다.NetDNSHostName – DNS 호스트 이름을 캡처합니다.NTGetLogonControl – 로그온 컨트롤을 쿼리합니다(자격 증명 탈취).
브라우저 및 네트워크 자격 증명 탈취 문자열을 보여주는 Process Hacker 화면.
추출된 .bin 파일에 대한 Binary Ninja 분석 결과 브라우저 및 네트워크 자격 증명을 탈취하는 실제 코드가 확인되었습니다.
BrowserQueryEnabledDomains – 활성화된 브라우저 도메인을 쿼리합니다.BrowserQueryOtherDomains – 다른 도메인을 쿼리합니다(쿠키 탈취).BrowserResetStatistics – 브라우저 통계를 재설정합니다(탐지 회피).NetworkAddress – 네트워크 어댑터 정보를 캡처합니다.NetDNSHostName – DNS 호스트 이름을 캡처합니다.NTGetLogonControl – 로그온 컨트롤을 쿼리합니다(자격 증명 탈취).
브라우저 및 네트워크 자격 증명 탈취 함수를 보여주는 Binary Ninja 화면.
추출된 .bin 파일에 대한 Binary Ninja 분석 결과 AcrStealer가 프로세스 인젝션과 파일 작업을 수행할 수 있음을 확인하는 포괄적인 Windows API 목록이 발견되었습니다.
VirtualAllocEx – 원격 프로세스에 메모리를 할당합니다(인젝션).WriteFile – 파일에 데이터를 씁니다(유출 또는 로깅).WaitForSingleObject – 스레드를 동기화합니다(인젝션 조정).VirtualProtectEx – 메모리 보호를 변경합니다(인젝션용).WaitForDebugEvent – 디버깅 작업(탐지 회피).VirtualAllocEx와 VirtualProtectEx는 인젝션에 사용됩니다.WriteFile은 탈취한 데이터를 디스크나 C2에 기록합니다.WaitForDebugEvent는 디버깅을 피하는 데 도움이 됩니다.
프로세스 인젝션 및 파일 작업 API를 보여주는 Binary Ninja 화면.
이 분석에서는 고급 네트워크 통신, 사용자 정의 프로토콜, 브라우저 자격 증명 탈취, 프로세스 인젝션을 결합한 정교한 정보 탈취형 악성코드인 AcrStealer를 발견했습니다.
SslClientCert를 사용한 SSL/TLS와 사용자 정의 프로토콜(Task.Protocol)을 사용합니다.BrowserQueryEnabledDomains) 및 네트워크 설정(NetDNSHostName)을 대상으로 삼습니다.VirtualAllocEx와 VirtualProtectEx를 사용합니다.WriteFile을 사용합니다.WaitForDebugEvent와 BrowserResetStatistics를 사용합니다.VirtualAllocEx 및 VirtualProtectEx 호출을 모니터링합니다.BrowserQueryEnabledDomains 및 NetDNSHostName을 탐지합니다.WriteFile 작업을 모니터링합니다.분석된 AcrStealer 샘플은 직접 분석을 원하는 사람들을 위해 MalwareBazaar에서 제공됩니다:
🔗 MalwareBazaar의 AcrStealer 샘플
사용된 도구: Process Hacker, Binary Ninja, x64dbg