- FLARE team của Mandiant vừa công bố gopacket: 63 công cụ viết lại Impacket bằng Go.
- Nextron compile thử và THOR bắt ngay 9/62 tool chỉ bằng generic rules — không cần signature riêng.
- Đây là trận đánh giữa tradecraft compiled và detection engineering.
TL;DR
Ngày 20/04/2026, Mandiant FLARE team public beta mandiant/gopacket — bản viết lại toàn bộ Impacket bằng Go, gồm 63 CLI tool + 24 library package cho SMB, LDAP, Kerberos, DCE/RPC, NTLM relay, WMI, RDP… Chỉ vài ngày sau, Nextron compile thử và THOR phát hiện 9/62 hacktool ngay lập tức qua generic detection rules, trước khi bất kỳ signature riêng nào được viết.
What's new
gopacket do Jacob Paullus (Google/Mandiant) công bố, là clean-room Go implementation của Impacket — thư viện Python lâu đời nhất của fortra mà red team và attacker dùng để enumerate + attack Active Directory. Điểm nổi bật:
- 63 tool: psexec, smbexec, wmiexec, dcomexec, atexec, secretsdump, getTGT, getST, GetUserSPNs, ntlmrelayx, addcomputer, rbcd, dacledit, badsuccessor, mssqlclient, wmiquery…
- Protocols: SMB2/3, LDAP, DCE/RPC (20+ services), Kerberos, NTLM, TDS, MQTT, WMI, RDP, EWS.
- Auth: password, NTLM hash (pass-the-hash), Kerberos ticket (pass-the-ticket).
- Build: Go 1.24.13+, GCC, libpcap. Chạy trên Linux/macOS; Windows phải qua WSL.
- License: Apache 2.0.
Why it matters
Trong 2–3 năm gần đây, attacker ngày càng bỏ Python Impacket để chuyển sang compiled tooling Go và Rust — Sliver, BRC4, Geacon, loader riêng. Vấn đề: phần lớn detection logic cũ (EDR rule, YARA, Sigma) được viết cho artefact Python execution — khi attacker ship 1 binary Go static, coverage sẽ rớt.
gopacket deliberately expose tradecraft Go-based lên công khai để defender có thể nghiên cứu trước, thay vì đợi gặp trong incident thật. Đây cũng là lý do FLARE team chấp nhận rủi ro “dual-use” khi publish.
Impacket đã 20 năm tuổi. Nó là xương sống của gần như mọi AD attack playbook: secretsdump để dump hash từ NTDS.dit, ntlmrelayx để relay NTLM authentication, wmiexec/psexec để lateral movement không cần RDP. Nhưng mỗi công cụ đều kéo theo Python runtime — một dấu vết rõ ràng mà EDR có thể flag. Khi attacker chuyển sang Go binary tĩnh, chain đó biến mất: không còn python.exe spawn, không còn site-packages, không còn import hook. Điều còn lại chỉ là network traffic — và đó là tầng Nextron đang đánh cược vào.
Nextron detection: 9/62 ngay round đầu
Ngay sau release, Nextron Research compile toàn bộ toolset và chạy qua THOR. Kết quả: 9/62 hacktool bị flag bởi generic rules — không có signature riêng, không ai biết gopacket khi rule được viết. 3 SHA-256 được công bố:
170ef61d8089a3c57ed1a078f81af7e4a433321c6a96b2a96e35a950dc0834e0
1badb2936e22803cceca5bf792fb1b8376af0b1cd920569458107ed473220d1f
481e7b5bc44a924d048d054fc8d165b8427d3a2ba5e7a24e255c47f53d5fefa3Tỉ lệ ~14.5% nghe nhỏ, nhưng đây là zero-day coverage: bắt tool trước khi bất kỳ ai biết nó tồn tại. Sau đó Nextron bổ sung dedicated signature cho 53 tool còn lại.
Cách đọc con số này: generic rule của THOR không biết gopacket, không biết Mandiant release, không biết binary Go nào. Nó bắt bằng behavioral pattern — string artefact trong binary, import Windows API đặc thù, cấu trúc SMB packet, pattern gọi Kerberos. 14.5% hit rate với zero context là chỉ dấu cho thấy: nhiều tradecraft AD attack có structural fingerprint không đổi dù viết bằng Python hay Go. Nhưng 85.5% còn lại thì không — và đó là bề mặt mới mà các vendor detection phải cover.
“When new tooling appears, a good part is often already covered by our generic detection logic, before we even add dedicated rules.” — Nextron Research
So sánh Impacket vs gopacket
| Tiêu chí | Impacket (fortra) | gopacket (mandiant) |
|---|---|---|
| Ngôn ngữ | Python | Go (compiled) |
| Runtime deps | Python interpreter | static binary |
| Platform | Win/Linux/macOS native | Linux/macOS (Win qua WSL) |
| Số tool | ~60 script | 63 CLI |
| Mức trưởng thành | stable, lâu năm | beta, experimental |
Ai hưởng lợi
- Red team / pentest: binary tĩnh, khỏi cài Python trên jumpbox, giống hệt tradecraft attacker đang dùng.
- Detection engineer: có codebase sạch để reverse wire-level behavior của Go-based SMB/LDAP/Kerberos client, tune EDR/NDR rule.
- Purple team: emulate đúng post-exploitation compiled mà intrusion hiện tại dùng.
- Malware analyst: reference để triage Go-based intrusion toolkit trong wild.
Limitations & pricing
- Beta, highly experimental. Core tool đã test trong AD lab, edge case vẫn còn.
- Chưa có Windows-native build — phải chạy WSL.
- Naming collision: Google có package
gopacketkhác cho TCP/IP packet serialization — dự án hoàn toàn khác. - Free, Apache 2.0. THOR scanner của Nextron là thương mại; THOR Lite (free) cũng mang generic coverage.
What's next
Mandiant sẽ iterate beta, mời community report bug. Kỳ vọng: mở rộng protocol coverage, eventually Windows-native build. Phía defender: chờ thêm round so tài generic-rule vs compiled Go tradecraft — kết quả 9/62 của THOR là baseline tốt, nhưng nhiều vendor khác sẽ công bố con số của mình.
Nguồn: mandiant/gopacket, Nextron Research, Jacob Paullus (LinkedIn).


