mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
34 lines
1.2 KiB
Markdown
34 lines
1.2 KiB
Markdown
# Analiza pcap DNSCat
|
|
|
|
{{#include ../../../banners/hacktricks-training.md}}
|
|
|
|
Jeśli masz pcap z danymi **wyekstrahowanymi przez DNSCat** (bez użycia szyfrowania), możesz znaleźć wyekstrahowaną zawartość.
|
|
|
|
Musisz tylko wiedzieć, że **pierwsze 9 bajtów** nie są rzeczywistymi danymi, ale są związane z **komunikacją C\&C**:
|
|
```python
|
|
from scapy.all import rdpcap, DNSQR, DNSRR
|
|
import struct
|
|
|
|
f = ""
|
|
last = ""
|
|
for p in rdpcap('ch21.pcap'):
|
|
if p.haslayer(DNSQR) and not p.haslayer(DNSRR):
|
|
|
|
qry = p[DNSQR].qname.replace(".jz-n-bs.local.","").strip().split(".")
|
|
qry = ''.join(_.decode('hex') for _ in qry)[9:]
|
|
if last != qry:
|
|
print(qry)
|
|
f += qry
|
|
last = qry
|
|
|
|
#print(f)
|
|
```
|
|
Dla uzyskania dodatkowych informacji: [https://github.com/jrmdev/ctf-writeups/tree/master/bsidessf-2017/dnscap](https://github.com/jrmdev/ctf-writeups/tree/master/bsidessf-2017/dnscap)\
|
|
[https://github.com/iagox86/dnscat2/blob/master/doc/protocol.md](https://github.com/iagox86/dnscat2/blob/master/doc/protocol.md)
|
|
|
|
Istnieje skrypt, który działa z Python3: [https://github.com/josemlwdf/DNScat-Decoder](https://github.com/josemlwdf/DNScat-Decoder)
|
|
```
|
|
python3 dnscat_decoder.py sample.pcap bad_domain
|
|
```
|
|
{{#include ../../../banners/hacktricks-training.md}}
|