Wireshark

Подробен урок за WireShark

Подробен урок за WireShark
Wireshark е инструмент за проверка на мрежовия трафик с отворен код и безплатен. Той улавя и показва пакети в реално време за офлайн анализ в четим от човека формат с микроскопични детайли. Това изисква известни познания за основните мрежи и се счита за основен инструмент за системните администратори и експертите по мрежова сигурност.

Wireshark е фактическият инструмент за няколко мрежови проблема, които варират от отстраняване на неизправности в мрежата, проверка на проблемите със сигурността, проверка на мрежовия трафик на подозрително приложение, внедряване на протоколи за отстраняване на грешки, заедно с целите на обучението по мрежов протокол и т.н.

Проектът Wireshark е стартиран през 1998 г. Благодарение на доброволния принос на експерта по глобални мрежи, той продължава да прави актуализации за нови технологии и стандарти за криптиране. Следователно, това е един от най-добрите инструменти за анализ на пакети и се използва като стандартен търговски инструмент от различни държавни агенции, образователни институти и организации с нестопанска цел.

Инструментът Wireshark се състои от богат набор от функции. Някои от тях са следните:

Wireshark обаче няма да ви предупреди за злонамерена дейност. Това само ще ви помогне да проверите и идентифицирате какво се случва във вашата мрежа. Нещо повече, той ще анализира само мрежовия протокол / дейности и няма да извършва друга дейност като изпращане / прихващане на пакети.

Тази статия предоставя задълбочен урок, който започва с основите (т.е.д., филтриране, мрежови слоеве на Wireshark и др.) и ще ви отведе в дълбочината на анализа на трафика.

Wireshark филтри

Wireshark се предлага с мощни филтърни машини, Capture Filters и Display Filters, за да премахне шума от мрежата или вече заловения трафик. Тези филтри стесняват ненужния трафик и показват само пакетите, които искате да видите. Тази функция помага на мрежовите администратори да отстраняват наличните проблеми.

Преди да влезете в подробностите за филтрите. В случай, че се чудите как да уловите мрежовия трафик без никакъв филтър, можете да натиснете Ctrl + E или да отидете до опцията Capture в интерфейса на Wireshark и да щракнете върху Start.

Сега, нека се задълбочим в наличните филтри.

Филтър за улавяне

Wireshark осигурява поддръжка за намаляване на размера на заснемане на необработен пакет, като ви позволява да използвате филтър за улавяне. Но той улавя само пакетния трафик, който съответства на филтъра, и пренебрегва останалата част от него. Тази функция ви помага да наблюдавате и анализирате трафика на конкретно приложение, използващо мрежата.

Не бъркайте този филтър с филтри за показване. Това не е филтър за показване. Този филтър се появява в главния прозорец, който е необходим за настройка преди започване на улавяне на пакети. Освен това не можете да модифицирате този филтър по време на улавянето.

Можете да отидете на Улавяне опция на интерфейса и изберете Филтри за улавяне.

Ще бъдете подканени с прозорец, както е показано на моментната снимка. Можете да изберете всеки филтър от списъка с филтри или да добавите / създадете нов филтър, като щракнете върху + бутон.

Примери за списъка с полезни филтри за улавяне:

Показване на филтър

Филтрите за показване ви позволяват да скриете някои пакети от вече уловения мрежов трафик. Тези филтри могат да бъдат добавени над заснетия списък и могат да бъдат модифицирани в движение. Вече можете да контролирате и стеснявате пакетите, върху които искате да се концентрирате, докато скривате ненужните пакети.

Можете да добавите филтри в лентата с инструменти за показване на филтъра точно над първия панел, съдържащ информация за пакета. Този филтър може да се използва за показване на пакети въз основа на протокол, IP адрес на източника, IP адрес на дестинация, портове, стойност и информация за полета, сравнение между полетата и много други.

Това е вярно! Можете да изградите комбинация от филтри, използвайки логически оператори като ==.!=, ||, && и др.

Някои примери за дисплейни филтри на един протокол TCP и комбиниран филтър са показани по-долу:

Мрежови слоеве в Wireshark

Освен проверка на пакети, Wireshark представя OSI слоеве, които помагат в процеса на отстраняване на неизправности. Wireshark показва слоевете в обратен ред, като:

  1. Физически слой
  2. Слой за връзка към данни
  3. Мрежов слой
  4. Транспортен слой
  5. Приложен слой

Имайте предвид, че Wireshark не винаги показва физическия слой. Сега ще разровим всеки слой, за да разберем важния аспект на анализа на пакетите и какво представлява всеки слой в Wireshark.

Физически слой

Физическият слой, както е показано на следващата снимка, представя физическото резюме на кадъра, като хардуерна информация. Като мрежов администратор обикновено не извличате информация от този слой.

Слой за връзка към данни

Следващият слой за връзка с данни съдържа адреса на мрежовата карта на източника и дестинацията. Това е относително просто, тъй като доставя само кадъра от лаптопа до рутера или следващия съседен кадър във физическия носител.

Мрежов слой

Мрежовият слой представя IP адресите на източника и местоназначението, IP версията, дължината на заглавката, общата дължина на пакета и много друга информация.

Транспортен слой

В този слой Wireshark показва информация за транспортния слой, който се състои от SRC порт, DST порт, дължина на заглавката и пореден номер, който се променя за всеки пакет.

Приложен слой

В последния слой можете да видите какъв тип данни се изпращат през носителя и кое приложение се използва, като FTP, HTTP, SSH и т.н.

Анализ на трафика

Анализ на трафика на ICMP

ICMP се използва за докладване и тестване на грешки, като се определя дали данните достигат до предвиденото местоназначение навреме или не. Помощната програма Ping използва ICMP съобщения, за да тества скоростта на връзката между устройствата и да докладва колко време отнема пакета, за да достигне дестинацията си, след което да се върне.

Пингът използва съобщение ICMP_echo_request към устройството в мрежата и устройството отговаря със съобщение ICMP_echo_reply. За да уловите пакети на Wireshark, стартирайте функцията Capture на Wireshark, отворете терминала и изпълнете следната команда:

ubuntu $ ubuntu: ~ $ ping google.com

Използвайте Ctrl + C за прекратяване на процеса на улавяне на пакети в Wireshark. В моментната снимка по-долу можете да забележите ICMP пакет изпратен = ICMP пакет получен с 0% загуба на пакети.

В екрана за улавяне на Wireshark изберете първия пакет ICMP_echo_request и наблюдавайте подробностите, като отворите средния панел Wireshark.

В мрежовия слой можете да забележите източника Src като моя ip_address, докато дестинацията Dst ip_address е на сървъра на Google, докато IP слоят споменава протокола като ICMP.

Сега увеличаваме подробностите за ICMP пакета, като разширяваме Internet Control Message Protocol и декодираме маркираните полета в моментната снимка по-долу:

Идентификаторът и номерата на последователностите се съчетават, за да помогнат при идентифицирането на отговорите на ехо-заявките. По същия начин, преди предаване на пакети, контролната сума се изчислява и добавя към полето, което се сравнява с контролната сума в получения пакет данни.

Сега, в пакета за отговор на ICMP, забележете слоя IPv4. Адресите на източника и местоназначението са разменени.

В слоя ICMP проверете и сравнете следните важни полета:

Можете да забележите, че ICMP отговорът повтаря същата контролна сума на заявката, идентификатор и пореден номер.

HTTP анализ на трафика

HTTP е протокол на приложния слой на Hypertext Transfer. Той се използва от световната мрежа и определя правила, когато HTTP клиентът / сървърът предава / получава HTTP команди. Най-често използваните HTTP методи ae POST и GET:

ПОЩА: този метод се използва за безопасно изпращане на поверителна информация на сървъра, която не се показва в URL адреса.

ВЗЕМЕТЕ: този метод обикновено се използва за извличане на данни от адресната лента от уеб сървър.

Преди да разгледаме по-задълбочено анализа на HTTP пакетите, първо ще демонстрираме накратко TCP трипосочното ръкостискане в Wireshark.

TCP трипосочно ръкостискане

При трипосочно ръкостискане клиентът инициира връзка чрез изпращане на SYN пакет и получаване на SYN-ACK отговор от сървъра, който се потвърждава от клиента. Ще използваме командата за сканиране на Nmap TCP connect, за да илюстрираме TCP ръкостискане между клиент и сървър.

ubuntu $ ubuntu: ~ $ nmap -sT google.com

В екрана за улавяне на пакети Wireshark превъртете до горната част на прозореца, за да забележите различни трипосочни ръкостискания, установени въз основа на определени портове.

Използвай tcp.порт == 80 филтър, за да видите дали връзката е установена чрез порт 80. Можете да забележите пълното ръкостискане в три посоки, т.е.д., SYN, SYN-ACK, и ACK, подчертано в горната част на моментната снимка, илюстриращо надеждна връзка.

HTTP анализ на пакети

За анализ на HTTP пакети отидете в браузъра си и поставете URL адреса на документацията за Wireshark: http: // www.вафладжия.com и изтеглете ръководството за потребителя PDF. Междувременно Wireshark трябва да улавя всички пакети.

Приложете HTTP филтър и потърсете HTTP ВЗЕМЕТЕ заявка, изпратена до сървъра от клиента. За да видите HTTP пакет, изберете го и разширете слоя на приложението в средния панел. В заявката може да има много заглавки, в зависимост от уебсайта и браузъра. Ще анализираме заглавията, присъстващи в нашето искане в моментната снимка по-долу.

В HTTP OK пакет от сървър към клиент, наблюдавайки информацията в слоя на протокола за прехвърляне на хипертекст показва „200 ОК„. Тази информация показва нормален успешен трансфер. В HTTP OK пакета можете да наблюдавате различни заглавки в сравнение с HTTP ВЗЕМЕТЕ пакет. Тези заглавки съдържат информация за исканото съдържание.

В този раздел научихте как работи HTTP и какво се случва, когато поискаме съдържание в мрежата.

Заключение

Wireshark е най-популярният и мощен инструмент за анализ и анализ на мрежи. Той се използва широко в ежедневните задачи за анализ на пакети в различни организации и институти. В тази статия изучихме някои теми за начинаещи до средно ниво на Wireshark в Ubuntu. Научихме типа филтри, предлагани от Wireshark за анализ на пакети. Покрихме модела на мрежовия слой в Wireshark и извършихме задълбочен анализ на ICMP и HTTP пакети.

Изучаването и разбирането на различни аспекти на този инструмент обаче е дълъг труден път. Следователно има много други онлайн лекции и уроци, които ще ви помогнат да определите конкретни теми на Wireshark. Можете да следвате официалното ръководство за потребителя, достъпно на уебсайта Wireshark. Освен това, след като сте изградили основното разбиране за анализ на протокол, препоръчва се също да използвате инструмент като Varonis, който ви насочва към потенциалната заплаха и след това да използвате Wireshark за проучване за по-добро разбиране.

Как да изтеглите и пуснете Civilization VI на Сид Майер на Linux
Въведение в играта Civilization 6 е модерен поглед върху класическата концепция, въведена в поредицата от игрите Age of Empires. Идеята беше доста про...
Как да инсталирате и играете Doom на Linux
Въведение в Doom Серията Doom възниква през 90-те години след пускането на оригиналния Doom. Това беше незабавен хит и от този момент нататък серията ...
Vulkan за потребители на Linux
С всяко ново поколение графични карти виждаме, че разработчиците на игри преместват границите на графичната вярност и се приближават една крачка до фо...