Защитна стена

Защитната стена (на английски: firewall), срещано и като файъруол в компютърните мрежи е специализиран хардуер или софтуер, който проверява мрежовия трафик, преминаващ през него и разрешава или забранява достъпа по определени правила.
Буквалният превод на английския термин е „огнена стена“, който е лишен от смисъл в конкретния случай.
Първоначалното значение на думата идва от американските строителни норми, предписващи поставянето в сградите на пожарозащитни стени (устойчиви на огън стени), които да спират разпространението на пожари в сградата.
Реализирани са защитни стени, работещи на различни нива от OSI модела, като най-високото е приложният слой (application layer), а най-ниското – каналният слой (datalink layer) от OSI модела. Най-често защитните стени работят на нивото на мрежовия и транспортния слоеве (network layer, transport layer), където изследват пакетите данни на TCP/IP протоколите и обикновено взимат решенията си в зависимост от IP адреса на изпращача или дестинацията, порта, от който пакетът е получен или на който ще се изпрати, или всяка комбинация от тези параметри. Гледат се също така и опциите в заглавната част на пакета. Защитните стени, които работят на приложния слой от OSI модела, филтрират трафика между вътрешната и външната мрежи по отношение на пренасяната в пакетите информация, чрез зададени ключови думи и като следят за спам, компютърни вируси и троянски коне.
Всички тези дефиниции взаимно се допълват и разкриват различните аспекти на понятието защитна стена. Всички те започват с единодушното ѝ определяне като система. Освен това и при трите определения се твърди, че защитните стени служат, за да се предпазят добре регулираните вътрешни/локални/частни мрежи от неоторизиран достъп от слабо регулираната (по правилата на вътрешната мрежа) външна/глобална/обществена мрежа. Споменава се обаче и нерегламентираният достъп вътре от мрежата към ресурси отвън. Тоест защитната стена предпазва не само от изтичане на информация навън и от нежелано навлизане на вредна информация (всякакви вируси, троянски коне и спам), но и може да предпазва от достъп до безвредна от тази гледна точка външна информация и услуги (определени сайтове, електронна поща, музика, игри, филми и пр.). Причините за това ограничение на достъпа могат да са разнообразни: по този начин родител може да ограничи детето си от сайтове с порнографско съдържание, а работодател да ограничи служителите си от ползване на фирмени ресурси за лични нужди.
Точно каква информация ще бъде поставена под контрол е въпрос на политиката на защитната стена. Тази политика се реализира посредством налагането на правила за достъп.
В горните трябва да се добави и: „достъпът от и към отделен компютър през мрежите, към които е свързан“.
Този тип защитна стена, за отделен компютър, e най-разпространен. Оказа се, че Windows 9x в повечето случаи може да работи без защитна стена, като само му се направят съответните настройки. Линукс също. За Windows 2000 и Windows XP това не е така, те са лошо проектирани. Важни техни функции като Desktop компютри имат връзка с тяхното мрежово поведение. Тоест, безопасната по отношение на мрежата настройка ги прави непълно функционални за Desktop работа или игри. А като се настроят да работят пълнофункционално, се активират и мрежови компоненти, които се налага да се запушват със защитна стена.
Тези защитни стени са програми, които работят на съответния компютър.
При компютрите Епъл Макинтош с операционна система Mac OS X, по подразбиране, всички комуникационни портове са затворени, благодарение на вградена защитна стена. Това са портовете за FTP access, remote login, personal web sharing, Windows file sharing, personal file sharing, remote Apple events and printer sharing и портовете за комуникация.
Защитната стена при Mac OS X може да бъде контролирана през панела за системните настройки на операционната система. Благодарение на защитната стена компютърът е защитен от неавторизиран достъп, целият входящ трафик е под наблюдение, а всички връзки са блокирани, с изключение на изрично разрешените в системните настройки.
Фигуративно казано, защитната стена представлява „граничен контролен пункт“ за желаещите да преминат пакети. Целият трафик се осъществява през този пункт, който има за задача да пропуска само което е безопасно. При настройка на защитата има два генерални подхода:
Три са основните функции на защитната стена:
Данните се блокират тогава, когато не отговарят на правилата за сигурност, зададени от администратора на мрежата. Например, ако от определен източник са регистрирани опити за хакерски атаки или flooding, администраторът задава правило за отхвърляне на всички пакети с IP адреса на този източник. Много често за подобно филтриране не е необходим допълнителен софтуер, а е възможно то да се извърши и от маршрутизатора (всички съвременни маршрутизатори имат такава функционалност). Освен входящите данни могат да се блокират и изходящите. По този начин се защитава останалият свят от локалната мрежа и могат да се забранят някои потенциално опасни услуги и действия от даден хост Също евентуално проникнал Троянски кон няма как да се свърже със стопанина си. Блокирането на данни е в основата на втория генерален подход за реализация на защитните стени. Така по подразбиране се отхвърлят непознатите протоколи и се осъществява по-силен контрол на трафика.
Замяната на адресната информация осигурява анонимност на защитаваната мрежа. Така се прикриват вътрешните мрежови характеристики от външната мрежа. Най-често се скриват DNS, FINGER и други протоколи. Чрез тях би могла да бъде получена вътрешно мрежова информация, чрез която по-нататъшното проникване в мрежата ще бъде максимално улеснено.
В логовете на защитната стена обикновено се пази подробна информация за допуснатите и отхвърлените от стената пакети, като например мрежовите адреси на източника на пакета и дестинацията, номерата на портовете на източника и дестинацията, типа протокол, и други. На базата на тази информация може да се прави одит на причините за възникване на дадено събитие.
Освен основните си функционалности, защитната стена между мрежи има и допълнителни възможности:
Когато се налага ограничение за достъп от вътрешни хостове до определени данни и услуги от външната мрежа, то може да бъде реализирано, като се филтрира съдържанието на заявките по адрес или по ключови думи. Обикновено се блокира достъпът до сайтове с пиратско, понякога и .exe ... и пр. При тази функционалност на защитните стени списъкът със забранени (banned) сайтове трябва регулярно да се обновява. При филтрирането на съдържанието може да се избегне досадното или зловредно съдържание на pop-up рекламите, спама по електронна поща, Java аплети, ActiveX програми, троянски коне, вируси и др.
Защитната стена се използва като инструмент за използването на NAT технологията. Обявяването само на мрежовите адреси на защитната стена носи значително по-малък риск, понеже стената е специализирана и силно защитена система, достъпна за конфигуриране само от системния администратор, която концентрира контрола върху достъпа до хостовете от мрежата.
Преобразуването на номерата на портовете (port address translation, PAT) е сходно с NAT. При него във всички пакети от изходящия трафик реалният номер на порта е заменен с друг номер. Идеята е да се елиминират външните атаки, извършвани по определен номер на порт. PAT е наложително и когато множество защитавани хостове използват като клиенти един и същ външен мрежов адрес на защитната стена – в този случай PAT се използва освен за защита, но и за идентификация на връзките между многото хостове и външния сървър.
Защитните стени придобиват тази допълнителна функционалност когато в тях се интегрира система за откриване на пробивите (intrusion detection system, IDS). Тази система сканира съдържанието на всички преминаващи през стената данни и е способна да проследява хакерските атаки в развитие. Съвременните IDS типично се състоят от множество monitoring станции, свързани към централни сървъри, които анализират данните. Например, ако атакуващият сондира защитната стена за слаби места през една връзка, а се опитва да ги експлоатира през друга връзка, има много голяма вероятност IDS да разкрие източника на атаката. Недостатъкът на IDS е, че за изпълнението му са необходими повече ресурси.
Често наричани high-availability, усъвършенстваните средства за устойчивост на срив позволяват защитните стени да работят по двойки, като второто устройство стои в готовност да поеме работата на титулярното, ако настъпи срив и то престане да функционира. Някои от съвременните защитни стени, които поддържат този и други механизми за устойчивост на срив, са реализирани в Cisco PIX или Nokia/Checkpoint.
Понякога вместо по-академичното „политики“ се казва просто „настройки“.
Преди да бъде изградена защитата, трябва да се артикулира и политиката на тази защита. Тази политика обикновено представлява документ, който специфицира правата на достъп и ползване на ресурсите на глобалната мрежа за всеки от хостовете в мрежата. Политиката на защитната стена е съобразена както с характера на мрежата и външните услуги, които са ѝ необходими, така и с вътрешните ресурси, които могат да представлява интерес за външни потребители (а много често тези ресурси са и основният обект на хакерски действия).
Политиката на защитната стена определя коя част от трафика, преминаващ през стената, ще бъде пропусната и коя част ще бъде блокирана и отхвърлена. Политиката на защитната стена се състои от две независими политики: политиката на достъпа „отвън навътре“ (inbound access policy) и политиката на достъпа „отвътре навън“ (outbound access policy).
Политиката на защитната стена трябва да отговори на следните въпроси:
Когато целият Интернет трафик произлиза от локална мрежа, политиката на достъпа „отвън навътре“ е доста проста. Целият входящ трафик, който не представлява отговор на заявка от локалната мрежа, се блокира. Чрез използването на NAT адресите на хостовете в мрежата не се разкриват пред външния свят, което изключително затруднява пробива им.
Ако обаче към някои ресурси в локална мрежа, трябва да има достъп отвън, трябва да определим критерии за филтриране на този достъп. Колкото по-строги са тези критерии, толкова по-високо гарантирана е сигурността на мрежата. В идеалния случай, адресите на външните хостове с право на достъп до локалната мрежа са известни и входящият трафик от другите адреси се блокира. Други критерии са базирани на данните в TCP-хедъра на пакета, например могат да бъдат позволени само пакетите с порт на получателя 80 – пакети за уеб-сървъра.
Когато филтрирането по адрес и протокол не е достатъчно, трябва да се направи по-обстоен модел на правилата, който се реализира от по-сложни защитни стени като защитната стена с пакетно филтриране и състояние или многослойната защитна стена.
Тази политика определя какъв вид информация може да напуска локалната мрежа, както и заявките към какъв тип информация следват да бъдат удовлетворени. Също така определя кой от хостовете и за какви цели е може да използва Интернет. Например, уеб-достъпът може да е позволен на всички хостове, но FTP-достъпът да е позволен само на някои. Тази политика може да има и времеви параметри: например в една фирма mp3-файлове да могат да се свалят след 18:00, когато свърши работното време.
Съществуват 3 основни вида защитни стени – филтриращи маршрутизатори (filtering routers), поддържащи връзката пакетни филтри (stateful packet filters), и приложни шлюзове (application gateways). Повечето защитни стени прилагат съчетания от гореспоменатите видове.