network security and network attacks

70
Мрежова сигурност Мрежова сигурност и мрежови атаки и мрежови атаки Добре дошли! Добре дошли! http://www.nedyalkov.com/securi Атанас Бъчваров Атанас Бъчваров Васил Колев Васил Колев Георги Чорбаджийски Георги Чорбаджийски Николай Недялков Николай Недялков Петър Пенчев Петър Пенчев Светлин Наков Светлин Наков Климентови дни в СУ "Св. Климент Охридски" – Климентови дни в СУ "Св. Климент Охридски" – 26.11.2003 26.11.2003

Upload: svetlin-nakov

Post on 18-Nov-2014

3.611 views

Category:

Documents


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Network Security and Network Attacks

Мрежова сигурностМрежова сигурности мрежови атакии мрежови атаки

Добре дошли!Добре дошли!

http://www.nedyalkov.com/security/

Атанас БъчваровАтанас Бъчваров Васил КолевВасил Колев Георги ЧорбаджийскиГеорги ЧорбаджийскиНиколай НедялковНиколай Недялков Петър ПенчевПетър Пенчев Светлин НаковСветлин Наков

Климентови дни в СУ "Св. Климент Охридски" – 26.11.2003Климентови дни в СУ "Св. Климент Охридски" – 26.11.2003

Page 2: Network Security and Network Attacks

2

Относно настоящата лекцияОтносно настоящата лекция

• Настоящата демонстрационна Настоящата демонстрационна лекция е част от курса “Мрежова лекция е част от курса “Мрежова сигурност”, четен във ФМИ на СУсигурност”, четен във ФМИ на СУ

• Обхваща темата “Мрежови атаки Обхваща темата “Мрежови атаки върху datalink, network и transport върху datalink, network и transport слоевете от OSI мрежовия модел”слоевете от OSI мрежовия модел”

• Лектори ще бъдат експерти от Лектори ще бъдат експерти от екипа на курса “Мрежова екипа на курса “Мрежова сигурност”сигурност”

Page 3: Network Security and Network Attacks

3

ЛекториЛектори

Атанас БъчваровАтанас Бъчваров• Системен и мрежов администраторСистемен и мрежов администратор

• Системен програмистСистемен програмист

• Състезател по информатикаСъстезател по информатика

• Специалист по UNIX OS. Занимава се с Специалист по UNIX OS. Занимава се с UNIX от 1994 (System V/286)UNIX от 1994 (System V/286)

• Старши системен администратор в Старши системен администратор в голяма българска компанияголяма българска компания

• Проектирал и изградил мрежовата и Проектирал и изградил мрежовата и инфраструктура и много вътрешни инфраструктура и много вътрешни решениярешения

Page 4: Network Security and Network Attacks

4

ЛекториЛектори

Васил КолевВасил Колев• Програмист и състезател по Програмист и състезател по

информатика от 1992информатика от 1992

• Системен и мрежов администратор Системен и мрежов администратор от 1996от 1996

• Приет за студент във ФМИ от Приет за студент във ФМИ от олимпиада по информатикаолимпиада по информатика

• Технически директор в Internet Технически директор в Internet компания от 2001компания от 2001

Page 5: Network Security and Network Attacks

5

ЛекториЛектори

Георги ЧорбаджийскиГеорги Чорбаджийски• Системен и мрежов администратор от Системен и мрежов администратор от

19961996

• Технически директор и съдружник в Технически директор и съдружник в Unix Solutions – Unix Solutions – http://unixsol.org/

• Компанията е основен технически Компанията е основен технически консултант и изпълнител по проекта консултант и изпълнител по проекта за изграждане на оптична (MAN) за изграждане на оптична (MAN) мрежа в гр. София и странатамрежа в гр. София и страната

• Член на "Сдружение свободен Член на "Сдружение свободен софтуер"софтуер"

Page 6: Network Security and Network Attacks

6

ЛекториЛектори

Петър ПенчевПетър Пенчев• Програмист от 1995, един от Програмист от 1995, един от

разработчиците на операционната система разработчиците на операционната система FreeBSDFreeBSD

• Системен и мрежов администратор от 1998Системен и мрежов администратор от 1998

• Проектирал и изградил националната Проектирал и изградил националната мрежова инфраструктура на Office 1 мрежова инфраструктура на Office 1 SuperstoreSuperstore

• Участвал в проектирането и изграждането Участвал в проектирането и изграждането на dial-up системата на 0rbitelна dial-up системата на 0rbitel

Page 7: Network Security and Network Attacks

7

ЛекториЛектори

Светлин НаковСветлин Наков• Консултант по разработка на софтуерКонсултант по разработка на софтуер• Състезател по информатика от 1992Състезател по информатика от 1992• Медалист от няколко международни Медалист от няколко международни

олимпиади по информатикаолимпиади по информатика• Приет за студент във ФМИ от олимпиадаПриет за студент във ФМИ от олимпиада• Автор на десетки статии в български и Автор на десетки статии в български и

чуждестранни издания, свързани с чуждестранни издания, свързани с алгоритми, софтуерни технологии и алгоритми, софтуерни технологии и мрежова сигурностмрежова сигурност

• Хоноруван преподавател в ФМИ на СУХоноруван преподавател в ФМИ на СУ• Спечелил стипендията “Джон Атанасов” Спечелил стипендията “Джон Атанасов”

за високи постижения в компютърните за високи постижения в компютърните наукинауки

Page 8: Network Security and Network Attacks

8

ЛекториЛектори

Николай НедялковНиколай Недялков• Програмист и състезател по Програмист и състезател по

информатика от 1995информатика от 1995

• Спечелил студентски права от Спечелил студентски права от олиампиадата по информатикаолиампиадата по информатика

• Проектирал и реализирал Проектирал и реализирал инфраструктурата за сигурност по инфраструктурата за сигурност по проекти на български министерства и проекти на български министерства и чужди компаниичужди компании

• Организатор на курсовете “Мрежова Организатор на курсовете “Мрежова сигурност” във ФМИ през 2002 и 2003сигурност” във ФМИ през 2002 и 2003

Page 9: Network Security and Network Attacks

9

За курса “Мрежова За курса “Мрежова сигурност”сигурност”• Курсът “Мрежова сигурност” е изборна Курсът “Мрежова сигурност” е изборна

дисциплина към ФМИ на СУдисциплина към ФМИ на СУ

• Целта на курса е да запознае аудиторията Целта на курса е да запознае аудиторията с:с:• Основните принципи за сигурност в локални Основните принципи за сигурност в локални

мрежи и Интернетмрежи и Интернет

• Основните протоколи и услуги, използвани в Основните протоколи и услуги, използвани в компютърните мрежи и тяхната сигурносткомпютърните мрежи и тяхната сигурност

• Начини за защита на компютърни мрежи и Начини за защита на компютърни мрежи и предпазване от евентуални атакипредпазване от евентуални атаки

• Курсът е най-предпочитаната изборна Курсът е най-предпочитаната изборна дисциплина във факултетадисциплина във факултета

• Избран е от повече от 500 студента!Избран е от повече от 500 студента!

Page 10: Network Security and Network Attacks

10

План на лекциятаПлан на лекцията

• Въведение. Цели на демонстрацията. Въведение. Цели на демонстрацията. Необходими знания и уменияНеобходими знания и умения

• Описание на тестовата мрежова Описание на тестовата мрежова инфраструктураинфраструктура

• Демонстрация на атаките:Демонстрация на атаките:• На datalink слоя – ARP poisoning, SniffingНа datalink слоя – ARP poisoning, Sniffing

• На network слоя – IPID атаки (idle scan)На network слоя – IPID атаки (idle scan)

• На transport слоя – TCP kill, TCP nice, SYN На transport слоя – TCP kill, TCP nice, SYN flood, Blind TCP spoofingflood, Blind TCP spoofing

• На application слоя – DNS spoofНа application слоя – DNS spoof

• Дискусия – веднага след Дискусия – веднага след демонстрациитедемонстрациите

Page 11: Network Security and Network Attacks

11

ВъведениеВъведение

• Цели на демонстрациятаЦели на демонстрацията• Запознаване с често срещани атаки Запознаване с често срещани атаки

върху datalink, network и transport върху datalink, network и transport слоевете от OSI мрежовия моделслоевете от OSI мрежовия модел

• Необходими знания и уменияНеобходими знания и умения• Основни познания по компютърни Основни познания по компютърни

мрежи и протоколите TCP/IPмрежи и протоколите TCP/IP

• Не злоупотребявайте!Не злоупотребявайте!• Демонстрацията на атаките е Демонстрацията на атаките е

изключително и само с учебна целизключително и само с учебна цел

• Не злоупотребявайте с придобитите Не злоупотребявайте с придобитите знаниязнания

Page 12: Network Security and Network Attacks

12

Tестова мрежова Tестова мрежова инфраструктураинфраструктура

• Разполагаме с 4 компютъра, свързани Разполагаме с 4 компютъра, свързани в локална мрежа посредством switch:в локална мрежа посредством switch:• server – 10.0.1.14 – gateway – DNS, POP3, FTP, WWWserver – 10.0.1.14 – gateway – DNS, POP3, FTP, WWW• attacker – 10.0.1.190attacker – 10.0.1.190• win9x – 10.0.1.186 – SMTPwin9x – 10.0.1.186 – SMTP• client – 10.0.1.185client – 10.0.1.185

Page 13: Network Security and Network Attacks

13

План за демонстрациитеПлан за демонстрациите

• За всяка атака ще разгледаме:За всяка атака ще разгледаме:

• Цел на атакатаЦел на атаката

• Необходими условияНеобходими условия

• Теоретично обяснениеТеоретично обяснение

• Схематично представяне и Схематично представяне и участнициучастници

• ИнструментиИнструменти

• Начини за защитаНачини за защита

• Проиграване на атаката (на живо)Проиграване на атаката (на живо)

Page 14: Network Security and Network Attacks

14

Начало на демонстрациятаНачало на демонстрацията

Page 15: Network Security and Network Attacks

15

Datalink слой от OSI моделаDatalink слой от OSI модела

• Слоят datalink отговаря за логическата Слоят datalink отговаря за логическата организация на битовете данни, които се организация на битовете данни, които се прехвърлят по дадена преносна средапрехвърлят по дадена преносна среда

• Например в Ethernet мрежа:Например в Ethernet мрежа:

• datalink слоят се грижи за изпращане и datalink слоят се грижи за изпращане и получаване на Ethernet framesполучаване на Ethernet frames

• Адресирането става по MAC адреса на Адресирането става по MAC адреса на мрежовия адаптермрежовия адаптер

• Атаките, които работят на datalink слоя, Атаките, които работят на datalink слоя, се прилагат в локални мрежисе прилагат в локални мрежи

Page 16: Network Security and Network Attacks

16

ARP PoisoningARP Poisoning

• Предварителна подготовкаПредварителна подготовка

• Разликата между switch и hubРазликата между switch и hub

• Hub устройствата са най-обикновени Hub устройствата са най-обикновени

повторители – разпращат получените повторители – разпращат получените

пакети към всичките си портовепакети към всичките си портове

• Switch устройствата са по-Switch устройствата са по-

интелигентни и изпращат интелигентни и изпращат

получените пакети само до порта, на получените пакети само до порта, на

който е свързан техния получателкойто е свързан техния получател

Page 17: Network Security and Network Attacks

17

ARP PoisoningARP Poisoning

• Цели на атаката:Цели на атаката:• Да се промени маршрута на чужд Да се промени маршрута на чужд

мрежов трафик в Ethernet локална мрежов трафик в Ethernet локална мрежа, така че да преминава през мрежа, така че да преминава през атакуващата машинаатакуващата машина

• Подслушване на чужд мрежов трафик Подслушване на чужд мрежов трафик (sniffing)(sniffing)

• Възможност за промяна на чуждия Възможност за промяна на чуждия мрежов трафик, преминаващ през мрежов трафик, преминаващ през атакуващия (man in the middle)атакуващия (man in the middle)

• Използва се за осъществяване на Използва се за осъществяване на много други мрежови атакимного други мрежови атаки

Page 18: Network Security and Network Attacks

18

ARP PoisoningARP Poisoning

• Необходими условия:Необходими условия:• Ethernet локална мрежаEthernet локална мрежа

• Свързаността може да е чрез hub или Свързаността може да е чрез hub или switch – за атаката няма значениеswitch – за атаката няма значение

• Мрежата трябва да няма ефективна Мрежата трябва да няма ефективна защита срещу тази атака – така е в защита срещу тази атака – така е в почти всички Ethernet мрежипочти всички Ethernet мрежи

• Операционните системи нямат Операционните системи нямат значениезначение

• В някои операционни системи има В някои операционни системи има някаква защита, но тя е неефективнанякаква защита, но тя е неефективна

Page 19: Network Security and Network Attacks

19

ARP PoisoningARP Poisoning

•Теоретично обяснение:Теоретично обяснение:• Атакуващият изпраща Атакуващият изпраща

фалшифицирани (spoofed) ARP пакети фалшифицирани (spoofed) ARP пакети към машината жертва и към gateway-към машината жертва и към gateway-а в мрежата и чрез тях отклонява а в мрежата и чрез тях отклонява трафика между тях през себе ситрафика между тях през себе си

• Възможно е да се отклони трафика Възможно е да се отклони трафика между произволни две машини от между произволни две машини от локалната мрежалокалната мрежа

• Жертвата не знае, че изпращайки Жертвата не знае, че изпращайки пакети към своя gateway, те пакети към своя gateway, те преминават първо през атакуващияпреминават първо през атакуващия

Page 20: Network Security and Network Attacks

20

ARP PoisoningARP Poisoning

Page 21: Network Security and Network Attacks

21

ARP PoisoningARP Poisoning

• Инструмент за провеждане на Инструмент за провеждане на атакатаатаката

• arpspoofarpspoof

Page 22: Network Security and Network Attacks

22

ARP PoisoningARP Poisoning

Демонстрация на атакатаДемонстрация на атакатаARP PoisoningARP Poisoning

Page 23: Network Security and Network Attacks

23

ARP PoisoningARP Poisoning

• Начини за защитаНачини за защита

• Разпознаване на ARP Poisoning Разпознаване на ARP Poisoning атакаатака

• arparp

• ping -rping -r

• traceroutetraceroute

• Проблем: Атаката може да бъде Проблем: Атаката може да бъде прикритаприкрита

Page 24: Network Security and Network Attacks

24

ARP PoisoningARP Poisoning

• Начини за защитаНачини за защита• Ефективна защита е възможна като Ефективна защита е възможна като

се използва managed switch с филтри, се използва managed switch с филтри, който спира подправените ARP който спира подправените ARP пакетипакети

• Managed switch-ът знае за всеки порт Managed switch-ът знае за всеки порт правилните MAC и IP адреси и не правилните MAC и IP адреси и не допуска измамидопуска измами

• Много скъпо устройствоМного скъпо устройство

• Статична ARP таблица на всички Статична ARP таблица на всички машини в мрежата – трудно за машини в мрежата – трудно за реализация и поддръжкареализация и поддръжка

Page 25: Network Security and Network Attacks

25

ARP PoisoningARP Poisoning

• Разпознаване на ARP Poisoning атакаРазпознаване на ARP Poisoning атака

• arparp• Командата arp показва Командата arp показва

съдържанието на локалния ARP кеш съдържанието на локалния ARP кеш – съответствието между IP и MAC – съответствието между IP и MAC адресиадреси

• Можем да видим, че няколко машини Можем да видим, че няколко машини в локалната мрежа имат еднакъв в локалната мрежа имат еднакъв MAC адресMAC адрес

• Проблем: възможно е само в нашата Проблем: възможно е само в нашата локална мрежалокална мрежа

• Проблем: Атакуващата машина може Проблем: Атакуващата машина може да няма адрес в локалната мрежада няма адрес в локалната мрежа

Page 26: Network Security and Network Attacks

26

ARP PoisoningARP Poisoning

• Разпознаване на ARP Poisoning атакаРазпознаване на ARP Poisoning атака

• ping -rping -r• Командата ping -r изпраща ICMP пакети с включен Командата ping -r изпраща ICMP пакети с включен

“record route” флаг в IP хедъра“record route” флаг в IP хедъра

• Можем да видим, че нашият трафик минава през Можем да видим, че нашият трафик минава през съмнителна машина (при не повече от 8 машини)съмнителна машина (при не повече от 8 машини)

• Проблем: атакуващият може да изключи “record Проблем: атакуващият може да изключи “record route” опцията от ядрото си и да стане прозрачен:route” опцията от ядрото си и да стане прозрачен:

• Премахване на “record route” опцията от Linux Премахване на “record route” опцията от Linux ядрото – ядрото – http://vasil.ludost.net/22mx1.patch

• При FreeBSD може да се включи IPSTEALTH При FreeBSD може да се включи IPSTEALTH опцията на ядротоопцията на ядрото

Page 27: Network Security and Network Attacks

27

ARP PoisoningARP Poisoning

• Разпознаване на ARP Poisoning атакаРазпознаване на ARP Poisoning атака

• traceroutetraceroute• Командата traceroute проследява пътя Командата traceroute проследява пътя

на пакетите между две машинина пакетите между две машини

• Можем да видим, че нашият трафик Можем да видим, че нашият трафик минава през съмнителна машинаминава през съмнителна машина

• Проблем: атакуващият може да стане Проблем: атакуващият може да стане прозрачен за traceroute чрез ipt_TTL прозрачен за traceroute чрез ipt_TTL ((http://www.iptables.org/)) или с опцията или с опцията IPSTEALTH под FreeBSDIPSTEALTH под FreeBSD

Page 28: Network Security and Network Attacks

28

ARP PoisoningARP Poisoning

Демонстрация на начините за Демонстрация на начините за откриване на атаката ARP Poisoning откриване на атаката ARP Poisoning

и начините за маскирането ии начините за маскирането и

Page 29: Network Security and Network Attacks

29

Анализ на чужд мрежов Анализ на чужд мрежов трафиктрафик

• Цели на атаката:Цели на атаката:• Да се подслуша чужд мрежов трафик и Да се подслуша чужд мрежов трафик и

да се извлече информация от негода се извлече информация от него

• Може да се придобие информация, Може да се придобие информация, полезна за много други атакиполезна за много други атаки

• Може да се придобие конфиденциална Може да се придобие конфиденциална информация (пароли за достъп)информация (пароли за достъп)

• Необходими условия:Необходими условия:• Локална мрежа, в която да има Локална мрежа, в която да има

възможност да се подслушва трафика възможност да се подслушва трафика или трафикът да минава през или трафикът да минава през атакуващияатакуващия

Page 30: Network Security and Network Attacks

30

• Теоретично обяснениеТеоретично обяснение

• Ако чуждият мрежов трафик Ако чуждият мрежов трафик достига по някакъв начин до достига по някакъв начин до атакуващия, той може да го атакуващия, той може да го подслушаподслуша

• Инструменти за провеждане на Инструменти за провеждане на атакатаатаката

• EtherealEthereal

• arpspoofarpspoof

Анализ на чужд мрежов Анализ на чужд мрежов трафиктрафик

Page 31: Network Security and Network Attacks

31

• Начини за защита:Начини за защита:

• Защита в локалната мрежаЗащита в локалната мрежа• Не използваме hub-овеНе използваме hub-ове

• Не допускаме възможност за ARP Не допускаме възможност за ARP poisoning атакаpoisoning атака

• Реална защитаРеална защита• Използваме криптографска защита Използваме криптографска защита

на трафика (VPN, SSL, PGP)на трафика (VPN, SSL, PGP)

Анализ на чужд мрежов Анализ на чужд мрежов трафиктрафик

Page 32: Network Security and Network Attacks

32

• Демонстрация на атаката Демонстрация на атаката “подслушване на чужд трафик “подслушване на чужд трафик по мрежата”по мрежата”

Анализ на чужд мрежов Анализ на чужд мрежов трафиктрафик

Page 33: Network Security and Network Attacks

33

DNS SpoofingDNS Spoofing

• DNS е много важна услуга в ИнтернетDNS е много важна услуга в Интернет

• Атаката е върху network и application Атаката е върху network и application слоевете от OSI мрежовия моделслоевете от OSI мрежовия модел

• Цели на атаката:Цели на атаката:• Атакуващият се представя за друга машина Атакуващият се представя за друга машина

(например някой Web сървър) и пренасочва (например някой Web сървър) и пренасочва трафика за тази машина към себе ситрафика за тази машина към себе си

• Необходими условия:Необходими условия:• Трафикът на жертвата трябва да преминава Трафикът на жертвата трябва да преминава

през машината на атакуващия – например през машината на атакуващия – например като резултат от ARP spoofing атакакато резултат от ARP spoofing атака

Page 34: Network Security and Network Attacks

34

DNS SpoofingDNS Spoofing

• Теоретично обяснениеТеоретично обяснение

• Жертвата изпраща заявка за Жертвата изпраща заявка за намиране на IP адреса по името намиране на IP адреса по името на дадена машинана дадена машина

• Атакуващият прихваща заявката Атакуващият прихваща заявката и връща неверен отговор и връща неверен отговор (собственото си IP)(собственото си IP)

• Жертвата не подозира, че Жертвата не подозира, че комуникира не с търсената комуникира не с търсената машина, а с атакуващата машинамашина, а с атакуващата машина

Page 35: Network Security and Network Attacks

35

DNS SpoofingDNS Spoofing

Page 36: Network Security and Network Attacks

36

DNS SpoofingDNS Spoofing

• Инструменти за провеждане Инструменти за провеждане на атакатана атаката

• DNSspoofDNSspoof

• arpspoofarpspoof

Page 37: Network Security and Network Attacks

37

• Начини за защитаНачини за защита

• Защита в локалната мрежаЗащита в локалната мрежа• Не използваме hub-овеНе използваме hub-ове

• Не допускаме възможност за ARP Не допускаме възможност за ARP poisoning атакаpoisoning атака

• Реална защитаРеална защита• Използване на протокола DNSSEC, Използване на протокола DNSSEC,

който има криптографска защитакойто има криптографска защита

DNS SpoofingDNS Spoofing

Page 38: Network Security and Network Attacks

38

DNS SpoofingDNS Spoofing

Демонстрация на атакатаДемонстрация на атакатаDNS SpoofingDNS Spoofing

Page 39: Network Security and Network Attacks

39

Network слой от OSI моделаNetwork слой от OSI модела

• Слоят network дефинира по какъв начин Слоят network дефинира по какъв начин чрез последователност от обмяна на frames чрез последователност от обмяна на frames от datalink слоя могат да се пренасят данни от datalink слоя могат да се пренасят данни между две машини в мрежамежду две машини в мрежа

• Например в TCP/IP мрежи network слоят:Например в TCP/IP мрежи network слоят:• Е представен от IP протоколаЕ представен от IP протокола

• Пренася данните като последователност от IP Пренася данните като последователност от IP пакетипакети

• Адресирането става по IP адресАдресирането става по IP адрес

• Пакетите могат да се рутират и да преминават Пакетите могат да се рутират и да преминават през междинни машини по пътя сипрез междинни машини по пътя си

• Атаките, които работят на network слоя, Атаките, които работят на network слоя, могат да се прилагат както в локални могат да се прилагат както в локални мрежи, така и в Интернетмрежи, така и в Интернет

Page 40: Network Security and Network Attacks

40

IPID Games – Idle ScanIPID Games – Idle Scan

• Цели на атаката:Цели на атаката:• Да се сканират TCP портовете на дадена Да се сканират TCP портовете на дадена

машина без сканираният да разбере кой машина без сканираният да разбере кой наистина го сканиранаистина го сканира

• Необходими условия:Необходими условия:• Свързаност между атакуващата машина, Свързаност между атакуващата машина,

машината-жертва и Zombie машинатамашината-жертва и Zombie машината• Zombie наричаме машина в Интернет, Zombie наричаме машина в Интернет,

която генерира лесно предвидими IPID-та която генерира лесно предвидими IPID-та (например Windows)(например Windows)

Page 41: Network Security and Network Attacks

41

IPID Games – Idle ScanIPID Games – Idle Scan

• Теоретично обяснение:Теоретично обяснение:• Атакуващата машина изпраща spoofed SYN Атакуващата машина изпраща spoofed SYN

пакет до някой порт на машината-жертва от пакет до някой порт на машината-жертва от името на Zombie машинатаимето на Zombie машината

• Машината-жертва отговаря с ACK или RST в Машината-жертва отговаря с ACK или RST в зависимост дали съответният порт е зависимост дали съответният порт е отворенотворен

• IPID-то на Zombie машината се увеличава с IPID-то на Zombie машината се увеличава с различна константа в зависимост дали е различна константа в зависимост дали е получила ACK или RST пакет от жертватаполучила ACK или RST пакет от жертвата

• Атакуващата машина проверява IPID-то на Атакуващата машина проверява IPID-то на машината Zombie и по него разбира дали машината Zombie и по него разбира дали сканираният порт е бил отворенсканираният порт е бил отворен

Page 42: Network Security and Network Attacks

42

IPID Games – Idle ScanIPID Games – Idle Scan

Page 43: Network Security and Network Attacks

43

• Инструменти за провеждане на Инструменти за провеждане на атакатаатаката• hpinghping

• Начини за защитаНачини за защита• Zombie машината може да се защити, Zombie машината може да се защити,

като си смени операционната система или като си смени операционната система или поне имплементацията на TCP/IP стекапоне имплементацията на TCP/IP стека

• Интернет доставчиците могат да защитят Интернет доставчиците могат да защитят Интернет от своите клиенти чрез egress Интернет от своите клиенти чрез egress филтриране, което не допуска spoofed филтриране, което не допуска spoofed пакетипакети

IPID Games – Idle ScanIPID Games – Idle Scan

Page 44: Network Security and Network Attacks

44

IPID Games – Idle ScanIPID Games – Idle Scan

Демонстрация на атакатаДемонстрация на атакатаIdle ScanIdle Scan

Page 45: Network Security and Network Attacks

45

• Измерване на трафика на дадена Измерване на трафика на дадена машинамашина

• Чрез следене как се променят Чрез следене как се променят стойностите на IPID-то може да се стойностите на IPID-то може да се установи колко трафик генерира установи колко трафик генерира дадена машинададена машина

• Машината-жертва трябва да има лесно Машината-жертва трябва да има лесно предвидими IPID-та (например предвидими IPID-та (например Windows)Windows)

IPID Games – измерване на трафикIPID Games – измерване на трафик

Page 46: Network Security and Network Attacks

46

Transport слой от OSI моделаTransport слой от OSI модела

• Слоят transport дефинира как да се извършва Слоят transport дефинира как да се извършва пренасянето на информация по network слоя, пренасянето на информация по network слоя, така, че да се гарантира надеждносттака, че да се гарантира надеждност

• Например в TCP/IP мрежи transport слоят:Например в TCP/IP мрежи transport слоят:

• Е представен чрез TCP и UDP протоколитеЕ представен чрез TCP и UDP протоколите

• TCP осигурява надеждни сесийни двупосочни TCP осигурява надеждни сесийни двупосочни комуникационни канали между две точки в комуникационни канали между две точки в мрежата, използвайки network слоямрежата, използвайки network слоя

• Адресирането става по IP адрес + номер на Адресирането става по IP адрес + номер на портпорт

• Атаките, които работят на transport слоя, Атаките, които работят на transport слоя, могат да се прилагат както в локални мрежи, могат да се прилагат както в локални мрежи, така и в Интернеттака и в Интернет

Page 47: Network Security and Network Attacks

47

Установяване на TCP връзкаУстановяване на TCP връзка

• 3-way handshake при TCP протокола:3-way handshake при TCP протокола:

Page 48: Network Security and Network Attacks

48

Живот на една TCP връзкаЖивот на една TCP връзка

• Първоначалното установяване на Първоначалното установяване на TCP връзка става с SYN пакет TCP връзка става с SYN пакет посредством 3-way handshakingпосредством 3-way handshaking

• RST пакетите прекратяват RST пакетите прекратяват безусловно връзката, независимо безусловно връзката, независимо от коя от страните ги изпращаот коя от страните ги изпраща

• FIN пакетите служат за нормално FIN пакетите служат за нормално прекратяване на TCP връзкапрекратяване на TCP връзка

Page 49: Network Security and Network Attacks

49

TCP KillTCP Kill

• Цел на атаката:Цел на атаката:• Да се прекрати насилствено TCP връзкаДа се прекрати насилствено TCP връзка

• Да не се позволява отваряне на TCP Да не се позволява отваряне на TCP връзкивръзки

• Необходими условия:Необходими условия:• Да имаме възможност да подслушваме Да имаме възможност да подслушваме

мрежовия трафик на атакуваните мрежовия трафик на атакуваните машини (например чрез ARP poisoning) машини (например чрез ARP poisoning) или да можем лесно да отгатваме ISN или да можем лесно да отгатваме ISN номератаномерата

• Операционните системи нямат значениеОперационните системи нямат значение

Page 50: Network Security and Network Attacks

50

TCP KillTCP Kill

• Теоретично обяснениеТеоретично обяснение• Атакуващата страна подслушва трафика Атакуващата страна подслушва трафика

на жертвата и прихваща неговите TCP на жертвата и прихваща неговите TCP sequence номераsequence номера

• Знаейки TCP sequence номерата, Знаейки TCP sequence номерата, атакуващата страна генерира и изпраща атакуващата страна генерира и изпраща подходящ RST пакет, който прекратява подходящ RST пакет, който прекратява незабавно връзкатанезабавно връзката

• Инструменти за провеждане на Инструменти за провеждане на атакатаатаката• tcpkilltcpkill

• arpspoofarpspoof

Page 51: Network Security and Network Attacks

51

TCP KillTCP Kill

• Начини за защита:Начини за защита:• Не допускаме нашият трафик да Не допускаме нашият трафик да

бъде подслушванбъде подслушван

• В локална мрежаВ локална мрежа• Не използваме мрежа с hubНе използваме мрежа с hub

• Не допускаме възможност за ARP Не допускаме възможност за ARP Poisoning атака (използваме Poisoning атака (използваме интелигентен Managed Switch)интелигентен Managed Switch)

• Използване на ОС, при която не е Използване на ОС, при която не е лесно да се отгатнат ISN номераталесно да се отгатнат ISN номерата

Page 52: Network Security and Network Attacks

52

TCP KillTCP Kill

Демонстрация на атакатаДемонстрация на атакатаTCP KillTCP Kill

Page 53: Network Security and Network Attacks

53

Методи за контрол на скоростта в Методи за контрол на скоростта в TCP/IPTCP/IP

• TCP window sizeTCP window size• Количеството чакащи данни (непотвърдени от Количеството чакащи данни (непотвърдени от

получателя с ACK пакет), които изпращачът получателя с ACK пакет), които изпращачът може да изпрати по дадена отворена TCP може да изпрати по дадена отворена TCP връзка без да чака потвърждениевръзка без да чака потвърждение

• MTU – Maximum Transmit UnitMTU – Maximum Transmit Unit• Максималното количество данни в един IP пакетМаксималното количество данни в един IP пакет

• ICMP source quenchICMP source quench• ICMP пакет, който сигнализира, че някъде по ICMP пакет, който сигнализира, че някъде по

пътя има препълване на капацитета на някоя пътя има препълване на капацитета на някоя линиялиния

Page 54: Network Security and Network Attacks

54

TCP NiceTCP Nice

• Цел на атаката:Цел на атаката:• Да се забави скоростта на отворена Да се забави скоростта на отворена

TCP връзкаTCP връзка

• Необходими условия:Необходими условия:• Атакуващият трябва да има Атакуващият трябва да има

възможност да разбира текущия TCP възможност да разбира текущия TCP sequence за дадена TCP сесия, sequence за дадена TCP сесия, например чрез подслушване (ARP например чрез подслушване (ARP poisoning)poisoning)

• Операционните системи нямат Операционните системи нямат значениезначение

Page 55: Network Security and Network Attacks

55

TCP NiceTCP Nice

• Теоретично обяснениеТеоретично обяснение• Чрез подходящи spoofed пакети Чрез подходящи spoofed пакети

атакуващият принуждава машините-атакуващият принуждава машините-жертви да си изпращат данните една на жертви да си изпращат данните една на друга по-бавно:друга по-бавно:• чрез намаляване на TCP window size-ачрез намаляване на TCP window size-а

• чрез намаляване на MTU-то на пакетитечрез намаляване на MTU-то на пакетите

• чрез изпращане на фалшифицирани ICMP чрез изпращане на фалшифицирани ICMP source quench пакетиsource quench пакети

• Инструменти за провеждане на Инструменти за провеждане на атакатаатаката• tcpnicetcpnice

• arpspoofarpspoof

Page 56: Network Security and Network Attacks

56

TCP NiceTCP Nice

• Начини за защита:Начини за защита:• Не допускаме нашият трафик да Не допускаме нашият трафик да

бъде подслушванбъде подслушван

• В локална мрежаВ локална мрежа• Не използваме мрежа с hubНе използваме мрежа с hub

• Не допускаме възможност за ARP Не допускаме възможност за ARP Poisoning атака (използваме Poisoning атака (използваме интелигентен Managed Switch)интелигентен Managed Switch)

• Използване на ОС, при която не е Използване на ОС, при която не е лесно да се отгатнат ISN номераталесно да се отгатнат ISN номерата

Page 57: Network Security and Network Attacks

57

TCP NiceTCP Nice

Демонстрация на атакатаДемонстрация на атакатаTCP NiceTCP Nice

Page 58: Network Security and Network Attacks

58

SYN FloodSYN Flood

• Цел на атаката:Цел на атаката:• Да направим невъзможно приемането Да направим невъзможно приемането

на нови TCP връзки на определен портна нови TCP връзки на определен порт

• По този начин може да се блокира По този начин може да се блокира дадена услугададена услуга

• Необходими условия:Необходими условия:• Атакуваната машина трябва да няма Атакуваната машина трябва да няма

защита от SYN floodзащита от SYN flood

• Необходими са множество недостъпни Необходими са множество недостъпни машини, за които атакуващият се машини, за които атакуващият се представяпредставя

Page 59: Network Security and Network Attacks

59

SYN FloodSYN Flood

• Теоретично обяснениеТеоретично обяснение• Атакуващият изпраща голям брой Атакуващият изпраща голям брой

фалшифицирани SYN пакети от името на фалшифицирани SYN пакети от името на различни недостъпни машиниразлични недостъпни машини

• Операционната система на жертвата им Операционната система на жертвата им отговаря по нормалния начин – добавя ги в отговаря по нормалния начин – добавя ги в опашката за TCP връзки в състояние опашката за TCP връзки в състояние SYN_RCDV, т.е. чакащи да завършат своя 3-SYN_RCDV, т.е. чакащи да завършат своя 3-way handshakeway handshake

• Тъй като няма кой да завърши handshake-а, Тъй като няма кой да завърши handshake-а, опашката се препълва с чакащи връзкиопашката се препълва с чакащи връзки

• Операционната система започва да не Операционната система започва да не приема нови заявки за TCP връзки на приема нови заявки за TCP връзки на атакувания портатакувания порт

Page 60: Network Security and Network Attacks

60

SYN FloodSYN Flood

Page 61: Network Security and Network Attacks

61

SYN FloodSYN Flood

• Инструменти за провеждане на Инструменти за провеждане на атакатаатаката• synksynk

• Начини за защита:Начини за защита:• SYN cookiesSYN cookies

• Не се използва опашка за частично Не се използва опашка за частично отворените TCP връзкиотворените TCP връзки

• Информацията за опашката се кодира Информацията за опашката се кодира в ISN чрез криптографски алгоритмив ISN чрез криптографски алгоритми

• Реализирани са в Linux, *BSD, ...Реализирани са в Linux, *BSD, ...

• В Windows няма защитаВ Windows няма защита

Page 62: Network Security and Network Attacks

62

SYN FloodSYN Flood

Демонстрация на атакатаДемонстрация на атакатаSYN FloodSYN Flood

Page 63: Network Security and Network Attacks

63

Blind TCP SpoofingBlind TCP Spoofing

• Цел на атаката:Цел на атаката:• Да се осъществи TCP връзка до Да се осъществи TCP връзка до

определена машина от името на определена машина от името на произволен IP адреспроизволен IP адрес

• Необходими условия:Необходими условия:• Атакуваната машина трябва да има Атакуваната машина трябва да има

лесно предвидими ISN (например лесно предвидими ISN (например Windows 95/98)Windows 95/98)

• Машината, за която атакуващият се Машината, за която атакуващият се представя, не трябва да има връзка до представя, не трябва да има връзка до машината-жертвамашината-жертва

Page 64: Network Security and Network Attacks

64

Blind TCP SpoofingBlind TCP Spoofing

• Теоретично обяснение:Теоретично обяснение:• Атакуващият изпраща SYN пакет към жертвата Атакуващият изпраща SYN пакет към жертвата

от името на някоя недостижима машина M, от името на някоя недостижима машина M, която няма връзка до жертватакоято няма връзка до жертвата

• Жертвата изпраща SYN+ACK до машината MЖертвата изпраща SYN+ACK до машината M

• Атакуващият налучква ISN на изпратения от Атакуващият налучква ISN на изпратения от жертвата пакет и изпраща правилен ACK пакет, жертвата пакет и изпраща правилен ACK пакет, данни и FINданни и FIN

• Възможно е да се изпратят няколко пакета с Възможно е да се изпратят няколко пакета с данниданни

• Жертвата не разбира, че пакетите не идват от Жертвата не разбира, че пакетите не идват от M, а от атакуващата машинаM, а от атакуващата машина

• Като резултат атакуващата машина реално Като резултат атакуващата машина реално отваря еднопосочна TCP връзка от името на Mотваря еднопосочна TCP връзка от името на M

Page 65: Network Security and Network Attacks

65

Blind TCP SpoofingBlind TCP Spoofing

Page 66: Network Security and Network Attacks

66

Blind TCP SpoofingBlind TCP Spoofing

• Инструменти за провеждане на Инструменти за провеждане на атакатаатаката

• Саморъчно разработени инструментиСаморъчно разработени инструменти

• Начини за защита:Начини за защита:

• Смяна на операционната система или Смяна на операционната система или поне на TCP/IP имплементацията, така поне на TCP/IP имплементацията, така че да се използват трудно предвидими че да се използват трудно предвидими ISNISN

Page 67: Network Security and Network Attacks

67

Blind TCP SpoofingBlind TCP Spoofing

Демонстрация на атакатаДемонстрация на атаката

Blind TCP SpoofingBlind TCP Spoofing

Page 68: Network Security and Network Attacks

68

Ресурси, свързани с тематаРесурси, свързани с темата

• Курс “Мрежова сигурност” – Курс “Мрежова сигурност” – http://www.nedyalkov.com/security/

• Wireless Access Points and ARP Poisoning – Wireless Access Points and ARP Poisoning – http://www.cigitallabs.com/resources/papers/download/arppoison.pdf

• An Introduction to ARP Spoofing An Introduction to ARP Spoofing ––http://packetstormsecurity.org/papers/protocols/intro_to_arp_spoofing.pdf

• DSniff –DSniff – http://www.monkey.org/~dugsong/dsniff/

• The Ethereal Network Analyzer – The Ethereal Network Analyzer – http://www.ethereal.com/

Page 69: Network Security and Network Attacks

69

Ресурси, свързани с тематаРесурси, свързани с темата

• Idle Scanning and related IPID games Idle Scanning and related IPID games –– http://www.insecure.org/nmap/idlescan.html

• hping - http://www.hping.org/

• SYN Flood DoS Attack Experiments – http://www.niksula.cs.hut.fi/~dforsber/synflood/result.html

• Linux Blind TCP Spoofing – http://ciac.llnl.gov/ciac/bulletins/j-035.shtml

• Computer and Network Security Threats - http://www.cas.mcmaster.ca/~wmfarmer/SE-4C03-03/slides/06-threats.pdf

Page 70: Network Security and Network Attacks

70

ДискусияДискусия

Вашите въпроси?Вашите въпроси?