Articles

Getting started with Wireless Wireshark

Wireshark is an important tool in any system engineers toolbox. An application that is able to capture and decode the network packets from multiple layers of the network stack.

Wireless Wireshark requires a little extra work to be able to capture the airborne layers of the stack and select the correct channel(s). This article will show how to prepare your machine for Wireless Wireshark and gives examples of how to filter out relevant wireless packets.

Requirements

To capture more that your own traffic the network interface need to be in monitor mode. Notice that this is not the same as promiscuous mode, known from LAN.

Windows Wireless Wireshark

Wireless capture with Windows requires a special AirPcap USB network adaptor from Riverbed. Windows are not able to set a wireless NIC in monitor mode. The AirPcap and the software for it is a great tool. Go get it if your are a Windows user.

MacBook Wireless Wireshark

Download and install Wireshark

Select “Capture i monitor mode” and observe that Link-layer header type is “802.11 plus radiotap header”.  Skærmbillede 2012-12-18 kl. 00.12.21

Create an “airport” link on you mac

Make it easy to use the airport command. Only needed once (and some times after upgrading your OS).

sudo ln -s /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport /usr/sbin/airport

View the channel set for the nic

airport -I

Disconnect you connect

sudo airport -z

Change channel

sudo airport –-channel <channel>

Det kan være en smule forvirrende at finde den rigtige kanal. Når man sniffer, vil man hurtigt se probe-request som er klient der scanner efter AP’ere og probe-response som er AP’ere der svarer tilbage. Dette gør de på alle kanaler. Herefter vil en klient forbinde eller fortsætte sin forbindelse på den kanal som AP’et køre på. Husk derfor at være opmærksom på hvilke kanal dit interface er sat til. Et netkort kan kun sniffe på en kanal af gangen.

TCP Dump alternativ

I stedet for at fange sniffer trace med wireshark kan det gøres med tcpdump til en pcap fil der kan åbnes med wireshark.

sudo tcpdump -s0 -I -i en0 -w capturefile.pcap

Linux Wireless Wireshark

I linux er det muligt at sætte interface i monitor mode. Afhængig af version og network er der forskellige metoder. Søg og du skal find 😉 Start med at få kismet til at virke så er netkortet også kommet i monitor mode. I linux er det typisk iwconfig kommandoen der kontrollerer det trådløst netkort.

Display filter

Når Wireshark køre, hvad enten det er med en Winpcap USB adapter, med Linux eller på en MacBook kan man lave en række displayfiltre for at udlede noget fornuftigt. F.eks.

wlan.fc.type == 0 Management frames
wlan.fc.type == 1 Control frames
wlan.fc.type == 2 Data frames
wlan.fc.type_subtype == 0 Association request
wlan.fc.type_subtype == 1 Association response
wlan.fc.type_subtype == 2 Reassociation request
wlan.fc.type_subtype == 3 Reassociation response
wlan.fc.type_subtype == 4 Probe request
wlan.fc.type_subtype == 5 Probe response
wlan.fc.type_subtype == 8 Beacon
wlan.addr ==  fields matches the given MAC address.

Eksempler

Association og Reassociation for en enkelt klient:

(wlan.addr==04:f7:e4:f3:8d:41)&&(wlan.fc.type_subtype>=0&&wlan.fc.type_subtype<=3)

Eye PA

Wireshark givet et dybt – meget dybt – indblik i, hvad der sker pakke for pakke. Men det kan være svært (hvis ikke umuligt) at få et overblik over, hvordan den trådløse trafik fordeler sig på accesspunkter, netværk og klienter. Firmaet Metageek har et program der hedder Eye PA. Det tager en pcap-fil (den som Wireshark kan gemme) og præsenterer data i en række lagkagediagrammer der i nogle situationer giver bedre overblik. Men opgaven med at opsamle et sniffer trace er den samme.

Remote Expert 🙂

Selvom du ikke selv er særlig velbevandret i den magiske verden af Wireshark er det værdifuldt at kunne opsamle en capturefil. Filen kan sendes til en specialist der kan grave dybere i den. F.eks. i forbindelse med en Cisco support sag (TAC-sag).

Leave a Reply