
DOUBLEPULSAR 임플란트로 전송된 C2 트래픽을 복호화하기 위해 PCAP 파일을 처리하는 python2 스크립트
저자: Luke Jennings ([email protected] - @jukelennings)
회사: Countercept (@countercept)
웹사이트: https://countercept.com
PCAP 파일에서 DOUBLEPULSAR SMB 임플란트가 사용하는 C2 트래픽을 복호화하는 python2 스크립트입니다. 사용되는 암호화는 간단한 4바이트 XOR로, FUZZBUNCH 툴셋의 명령 출력에서 자주 볼 수 있습니다. 이 스크립트는 첫 번째 비-핑(non-ping) 패킷의 SESSION_SETUP 매개변수에 연속된 4개의 0이 존재한다는 사실을 이용하여 XOR 키를 직접 알아내고, 이 키를 사용해 모든 트래픽을 복호화합니다.
이것은 초기 릴리스이며 네트워크 패킷에서 특정 구성 요소를 찾는 데 의존하고, DLL 인젝션 기능으로 테스트되었습니다. 가장 좋은 결과를 얻으려면 트래픽에 명령이 하나만 포함된 PCAP 파일을 제공하십시오.
테스트 목적으로 이 저장소에는 DLL 인젝션 명령을 사용하여 대상 시스템에서 실행 중인 calc.exe 프로세스에 표준 Windows DLL인 wininet.dll을 인젝션하여 캡처한 PCAP 파일이 포함되어 있습니다. 이 스크립트를 실행한 복호화 출력도 저장소에 있으며, 4885바이트의 셸코드와 그 뒤에 이어지는 wininet.dll의 바이트 단위 복사본을 포함합니다.
이 스크립트는 python-pcapng 라이브러리에 의존합니다. 사용 예는 아래와 같습니다:
root@kali:~# pip install python-pcapng
root@kali:~# python decrypt_doublepulsar_traffic.py --pcapng inject-dll-wininet-into-calc.pcapng --output decrypted_data.bin