Ce este WireShark? Introducere in WireShark (indrumar de laborator) Wireshark este un sniffer de pachete gratuit, care captureaza pachetele care sunt vehiculate pe o anumita interfata de retea. Aceasta aplicatie este utilizata pentru solutionarea problemelor care apar in retelele de calculatoare, analiza, dezvoltarea software si a protocoalelor de telecomunicatii, dar si in scop educational. In Iunie 2006 proiectul a fost redenumit din Ethereal in Wireshark datorita unor probleme de trademark. Functionalitatea Wireshark-ului este asemanatoare cu cea a tcpdump, dar primul are o interfata grafica, si mult mai multe optiuni de sortare si filtrare a informatiei. Permite utilizatorului sa vizualizeze tot traficul care trece prin retea (in mod usual retea Ethernet dar exista support si pentru alte tipuri de retele) prin configurarea interfetei de retea in promiscuous mode. Wireshark poate rula pe diverse sisteme de operare (dintre care amintim Linux, Mac OS X, sau Microsoft Windows). Cel mai important lucru de retinut este ca Wireshark este un soft gratuit care se apropie din punct de vedere al performantelor de o solutie comerciala. Pentru a utiliza Wireshark, este nevoie atat de programul instalat pe un computer, dar si de libraria specifica capturii de pachete numita fie libcap, fie WinPCap. Primul pas care trebuie intreprins pentru utilizarea aplicatiei Wireshark consta bineinteles din descarcarea programului de la adresa http://www.wireshark.org/download.html, urmata de instalarea acestuia. Urmeaza rularea aplicatiei, care va lansa spre executie un GUI (graphical
user interface), ilustrat mai jos: Fig.1 Interfata Grafica a Wireshark Interfata Wireshark are 5 componente majore: Meniurile de comanda, sunt meniuri tipice drop-down aflate in partea superioara a ferestrei. Meniul File permite salvarea pachetelor capturate sau deschiderea pachetelor si trace-urilor salvate anterior, precum si iesirea din aplicatie. Meniul Capture permite capturarea pachetelor. Fereastra de listare a pachetelor capturate afiseaza fiecare pachet capturat, incluzand aici numarul pachetului (asignat de Wireshark), timpul
dupa care pachetul a fost capturat, adresa sursei pachetului si a destinatiei acestuia, tipul protocolului, si informatia specifica tipului de protocol continut in pachet. Listarea pachetelor poate fi ordonata in functie de orice categorie amintita, dand click pe numele unei coloane. Campul numit tipul protocolului (protocol type) afiseaza protocolul de nivelul cel mai inalt din stiva OSI, care a emis sau receptionat acest pachet. Fereastra de afisare a detaliilor din headerele pachetelor selectate, prezinta detalii despre pachetele selectate (highlighted) din lista pachetelor capturate. (Pentru selectarea si vizualizarea informatiei unei subdiviziuni ierarhice a pachetului, trebuie selectata aceasta din interiorul pachetului, pentru a putea fi afisata doar informatia specifica entitatii metionate). Aceasta informatie include detalii despre frame-ul Ethernet (presupunand ca pachetul a fost emis/receptionat prin intermediul unei interfete Ethernet) si despre pachetele IP care contin acest pachet. Informatiile de nivel OSI Ethernet si IP pot fi detaliate prin apasarea butoanelor de plus sau minus din stanga frameului Ethernet sau pachetului IP. Fereastra de afisare a continutului pachetelor prezinta intregul continut al unui frame capturat, atat in format ASCII cat si hexadecimal. In partea de sus a interfatei grafice se gaseste campul de definire a filtrelor de display, avand o sintaxa standard (vezi http://wiki.wireshark.org/displayfilters) folosite pentru a filtra informatia care este afisata in fereastra de listare a pachetelor capturate. Este foarte important sa se faca distinctia intre display filters (filtrare de tip offline), care doar ascund informatia care nu e conforma cu un criteriu de filtrare, si are deci doar un efect vizual si capture filters (filtrare de tip online) care
exclud din captura informatia care nu este conforma cu un filtru, aceasta nefiind recuperabila spre a fi vizualizata ulterior ca in cazul display filters. Pentru utilizatorii incepatori, se recomanda filtrarea de de tip offline. Cum lucram cu WireShark: 1. Deschideti un browser web si incarcati o pagina la alegere (ex. mail.yahoo.com) 2. Lansati Wireshark. Initial este afisata o fereasta asemanatoare celeia din figura 1, insa fara a avea vreun pachet in lista de pachete capturate, intrucat captura nu ruleaza inca. 3. Pentru a incepe captura trebuie sa apasati pe Capture -> Interface apoi pe butonul de Options din dreptul interfetei de retea pe care doriti sa o monitorizati. Se va afisa fereastra Wireshark: Capture Options cum se poate vedea si in figura 2; 4. Se pot folosi majoritatea configuratiilor default, dar trebuie deselectat Hide capture info dialog de sub Display Options. Interfetele de retea pe care le are computerul conectat la retea, vor aparea in meniul drop-down aflat in partea superioara a ferestrei "Capture Options". In cazul in care computerul are mai multe interfete de retea functionale (ex. daca exista atat adaptor wired cat si wireless) va trebui aleasa interfata care este folosita pentru a receptiona si transmite pachete. Dupa alegerea interfetei de retea se apasa Start. Captura de pachete va incepe, iar toate pachetele transmise si receptionate de/de la computerul care este echipat cu placa de retea mai sus amintita, vor fi capturate de Wireshark.
Fig.2 Fereastra "Wireshark Capture Options" Exercitii: 1. Afisati tot traficul HTTP rezultat in urma accesarii site-ului vega.unitbv.ro 2. Determinati adresa IP a site-ului http://www.iec.org folosind Wireshark 3. Afisati tot traficul care are ca sursa statia dvs 4. Utilizand capture filters capturati doar pachetele care au ca destinatie statia dvs. (http://www.wireshark.org/docs/wsug_html_chunked/chcapcapturefilters ection.html)