mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
156 lines
6.8 KiB
Markdown
156 lines
6.8 KiB
Markdown
# Wireshark tricks
|
||
|
||
{{#include ../../../banners/hacktricks-training.md}}
|
||
|
||
## Покращте свої навички Wireshark
|
||
|
||
### Підручники
|
||
|
||
Наступні підручники чудові для вивчення деяких класних базових трюків:
|
||
|
||
- [https://unit42.paloaltonetworks.com/unit42-customizing-wireshark-changing-column-display/](https://unit42.paloaltonetworks.com/unit42-customizing-wireshark-changing-column-display/)
|
||
- [https://unit42.paloaltonetworks.com/using-wireshark-display-filter-expressions/](https://unit42.paloaltonetworks.com/using-wireshark-display-filter-expressions/)
|
||
- [https://unit42.paloaltonetworks.com/using-wireshark-identifying-hosts-and-users/](https://unit42.paloaltonetworks.com/using-wireshark-identifying-hosts-and-users/)
|
||
- [https://unit42.paloaltonetworks.com/using-wireshark-exporting-objects-from-a-pcap/](https://unit42.paloaltonetworks.com/using-wireshark-exporting-objects-from-a-pcap/)
|
||
|
||
### Проаналізована інформація
|
||
|
||
**Експертна інформація**
|
||
|
||
Натискаючи на _**Analyze** --> **Expert Information**_, ви отримаєте **огляд** того, що відбувається в **аналізованих** пакетах:
|
||
|
||
.png>)
|
||
|
||
**Вирішені адреси**
|
||
|
||
У _**Statistics --> Resolved Addresses**_ ви можете знайти кілька **інформації**, яка була "**вирішена**" Wireshark, наприклад, порт/транспорт до протоколу, MAC до виробника тощо. Цікаво знати, що залучено в комунікацію.
|
||
|
||
.png>)
|
||
|
||
**Ієрархія протоколів**
|
||
|
||
У _**Statistics --> Protocol Hierarchy**_ ви можете знайти **протоколи**, **залучені** в комунікацію, та дані про них.
|
||
|
||
.png>)
|
||
|
||
**Розмови**
|
||
|
||
У _**Statistics --> Conversations**_ ви можете знайти **резюме розмов** у комунікації та дані про них.
|
||
|
||
.png>)
|
||
|
||
**Точки доступу**
|
||
|
||
У _**Statistics --> Endpoints**_ ви можете знайти **резюме точок доступу** в комунікації та дані про кожну з них.
|
||
|
||
.png>)
|
||
|
||
**DNS інформація**
|
||
|
||
У _**Statistics --> DNS**_ ви можете знайти статистику про захоплені DNS запити.
|
||
|
||
.png>)
|
||
|
||
**I/O графік**
|
||
|
||
У _**Statistics --> I/O Graph**_ ви можете знайти **графік комунікації.**
|
||
|
||
.png>)
|
||
|
||
### Фільтри
|
||
|
||
Тут ви можете знайти фільтри Wireshark в залежності від протоколу: [https://www.wireshark.org/docs/dfref/](https://www.wireshark.org/docs/dfref/)\
|
||
Інші цікаві фільтри:
|
||
|
||
- `(http.request or ssl.handshake.type == 1) and !(udp.port eq 1900)`
|
||
- HTTP та початковий HTTPS трафік
|
||
- `(http.request or ssl.handshake.type == 1 or tcp.flags eq 0x0002) and !(udp.port eq 1900)`
|
||
- HTTP та початковий HTTPS трафік + TCP SYN
|
||
- `(http.request or ssl.handshake.type == 1 or tcp.flags eq 0x0002 or dns) and !(udp.port eq 1900)`
|
||
- HTTP та початковий HTTPS трафік + TCP SYN + DNS запити
|
||
|
||
### Пошук
|
||
|
||
Якщо ви хочете **шукати** **вміст** всередині **пакетів** сесій, натисніть _CTRL+f_. Ви можете додати нові шари до основної інформаційної панелі (No., Time, Source тощо), натиснувши праву кнопку миші, а потім редагуючи стовпець.
|
||
|
||
### Безкоштовні лабораторії pcap
|
||
|
||
**Практикуйтеся з безкоштовними викликами на:** [**https://www.malware-traffic-analysis.net/**](https://www.malware-traffic-analysis.net)
|
||
|
||
## Ідентифікація доменів
|
||
|
||
Ви можете додати стовпець, який показує заголовок Host HTTP:
|
||
|
||
.png>)
|
||
|
||
І стовпець, який додає ім'я сервера з ініціюючого HTTPS з'єднання (**ssl.handshake.type == 1**):
|
||
|
||
 (1).png>)
|
||
|
||
## Ідентифікація локальних імен хостів
|
||
|
||
### З DHCP
|
||
|
||
У сучасному Wireshark замість `bootp` вам потрібно шукати `DHCP`
|
||
|
||
.png>)
|
||
|
||
### З NBNS
|
||
|
||
.png>)
|
||
|
||
## Дешифрування TLS
|
||
|
||
### Дешифрування HTTPS трафіку з приватним ключем сервера
|
||
|
||
_edit>preference>protocol>ssl>_
|
||
|
||
.png>)
|
||
|
||
Натисніть _Edit_ і додайте всі дані сервера та приватний ключ (_IP, Port, Protocol, Key file and password_)
|
||
|
||
### Дешифрування HTTPS трафіку з симетричними сесійними ключами
|
||
|
||
Як Firefox, так і Chrome мають можливість записувати сесійні ключі TLS, які можна використовувати з Wireshark для дешифрування TLS трафіку. Це дозволяє проводити детальний аналіз захищених комунікацій. Більше деталей про те, як виконати це дешифрування, можна знайти в посібнику на [Red Flag Security](https://redflagsecurity.net/2019/03/10/decrypting-tls-wireshark/).
|
||
|
||
Щоб виявити це, шукайте в середовищі змінну `SSLKEYLOGFILE`
|
||
|
||
Файл спільних ключів виглядатиме так:
|
||
|
||
.png>)
|
||
|
||
Щоб імпортувати це в Wireshark, перейдіть до \_edit > preference > protocol > ssl > і імпортуйте його в (Pre)-Master-Secret log filename:
|
||
|
||
.png>)
|
||
|
||
## ADB комунікація
|
||
|
||
Витягніть APK з ADB комунікації, де APK був надісланий:
|
||
```python
|
||
from scapy.all import *
|
||
|
||
pcap = rdpcap("final2.pcapng")
|
||
|
||
def rm_data(data):
|
||
splitted = data.split(b"DATA")
|
||
if len(splitted) == 1:
|
||
return data
|
||
else:
|
||
return splitted[0]+splitted[1][4:]
|
||
|
||
all_bytes = b""
|
||
for pkt in pcap:
|
||
if Raw in pkt:
|
||
a = pkt[Raw]
|
||
if b"WRTE" == bytes(a)[:4]:
|
||
all_bytes += rm_data(bytes(a)[24:])
|
||
else:
|
||
all_bytes += rm_data(bytes(a))
|
||
print(all_bytes)
|
||
|
||
f = open('all_bytes.data', 'w+b')
|
||
f.write(all_bytes)
|
||
f.close()
|
||
```
|
||
{{#include ../../../banners/hacktricks-training.md}}
|