Сетевая защита - второй уровень защиты Symantec. Защита от сетевых атак

После установки Ubuntu в качестве основной ОС вы должны научиться устанавливать защиту от полезных нагрузок, передаваемых с помощью USB-уточек (Rubber Ducky), от изъятия ваших данных правоохранительными органами и в целом уменьшить количество мишеней, по которым можно нанести удар. При защите от сетевых атак вам необходимо минимизировать раскрытие информации о ваших аппаратных средствах, предотвратить работу снифферов пакетов, ужесточить правила брандмауэра и многое другое.

Продолжаем нашу мини-серию по усилению защиты операционной системы Ubuntu. В этой части вы научитесь подделывать MAC-адрес с целью запутывания пассивных хакеров, отключать неиспользуемые сетевые службы, такие как CUPS и Avahi, создавать правила брандмауэра для определенных портов с целью блокировки попыток несанкционированного доступа и изъятия ваших данных, защищаться от сниффинга паролей и cookie-файлов в ваших пакетах с помощью VPN.

Если вы пропустили предыдущую статью, то обязательно с ней ознакомьтесь, даже если у вас уже установлена Ubuntu и вы просто хотите усилить ее защиту. Вы узнаете, что побудило нас писать эту серию из четырех частей.

Шаг 1. Защититесь от определения вашего оборудования

При подключении к новым Wi-Fi сетям и маршрутизаторам подделывайте MAC-адрес вашего Wi-Fi адаптера. Конечно, это не помешает мотивированному хакеру узнать, какую операционную систему вы используете, но может его запутать и не дать ему собрать информацию о вашем оборудовании.

Например, хакер, подключенный к Wi-Fi сети в кафе, может сосредоточить свои усилия на взломе любых устройств, кроме Apple. Если же вы появляетесь в сети с , то злоумышленник полностью проигнорирует ваше устройство. Или же он может попробовать на вашем устройстве некоторые атаки, специфичные для MacOS, которые не сработают, потому что вы на самом деле не используете MacBook, вы только отображаетесь в сети так, как будто используете технику Apple. В сочетании с поддельным User-Agent браузера это сможет действительно запутать не очень умного противника.

Чтобы изменить MAC-адрес в Ubuntu, откройте Network Manager и перейдите в меню «Edit» вашего Wi-Fi-соединения. На вкладке «Identity» введите в поле «Cloned Address» MAC-адрес, который вы хотите использовать.

Шаг 2. Защититесь от атак на «слушающие» сервисы

Когда фоновый процесс (или сервис) находится в состоянии « » (прослушивания) , то это означает, что другие службы (сервисы) и приложения на вашем устройстве и в сети могут с ним взаимодействовать. Эти «слушающие» службы всегда ожидают на вход какие-нибудь данные, получив которые, сервис должен дать определенный ответ. Любая служба с локальным адресом 0.0.0.0, находясь в состоянии прослушивания, скорее всего, будет доступна для всех пользователей в данной локальной сети и, возможно, в Интернете тоже.

У свежеустановленной Ubuntu будет всего несколько запущенных сервисов, поэтому по умолчанию не нужно беспокоиться о страшном прослушивании портов. Но всегда помните о приложениях, которые вы еще установите в будущем. Они могут открыть порты для прослушивания, не сообщая вам об этом.

Чтобы отслеживать то, какие фоновые процессы находятся в состоянии прослушивания, мы будем использовать netstat - инструмент, используемый для вывода информации о сетевых подключениях, открытых портах и запущенных сервисах. Поскольку мы использовали минимальную установку Ubuntu, то необходимый нам набор утилит net-tools для работы с сетями (включая netstat) придется установить вручную. Это можно сделать с помощью команды sudo apt-get install net-tools.

Sudo apt-get install net-tools Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: net-tools 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 194 kB of archives. After this operation, 803 kB of additional disk space will be used. Selecting previously unselected package net-tools. (Reading database ... 149085 files and directories currently installed.) Preparing to unpack .../net-tools_1.60+git20161116.90da8a0-1ubuntu1_amd64.deb ... Unpacking net-tools (1.60+git20161116.90da8a0-1ubuntu1) ... Processing triggers for man-db (2.8.3-2) ... Setting up net-tools (1.60+git20161116.90da8a0-1ubuntu1) ...

Используйте следующую команду netstat для просмотра служб в состоянии «LISTEN».

Sudo netstat -ntpul Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN 651/systemd-resolve tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 806/cupsd tcp6 0 0::1:631:::* LISTEN 806/cupsd udp 47616 0 127.0.0.53:53 0.0.0.0:* 651/systemd-resolve udp 0 0 0.0.0.0:631 0.0.0.0:* 812/cups-browsed udp 2304 0 0.0.0.0:5353 0.0.0.0:* 750/avahi-daemon: r udp 0 0 0.0.0.0:38284 0.0.0.0:* 750/avahi-daemon: r udp6 0 0:::37278:::* 750/avahi-daemon: r udp6 25344 0:::5353:::* 750/avahi-daemon: r

Systemd-resolve используется для разрешения доменных имен и, понятное дело, его не стоит ни изменять, ни удалять. Про «cupsd» и «avahi-daemon» мы поговорим ниже в следующих разделах.

Отключите или удалите CUPS

В 2011 году в avahi-daemon была обнаружена уязвимость, - DDoS. Хотя этот CVE довольно старый и у него весьма незначительная степень серьезности, но, тем не менее, он демонстрирует, каким образом хакер в локальной сети обнаруживает уязвимости в сетевых протоколах и манипулирует запущенными службами на устройстве жертвы.

Если вы не планируете взаимодействовать с продуктами или сервисами Apple на других устройствах, avahi-daemon можно отключить, используя следующую команду sudo systemctl disa avahi-daemon.

Sudo systemctl disable avahi-daemon Synchronizing state of avahi-daemon.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install disable avahi-daemon Removed /etc/systemd/system/dbus-org.freedesktop.Avahi.service. Removed /etc/systemd/system/sockets.target.wants/avahi-daemon.socket.

Avahi также можно полностью удалить с помощью sudo apt-get purge avahi-daemon.

Sudo apt-get purge avahi-daemon Reading package lists... Done Building dependency tree Reading state information... Done The following packages will be REMOVED: avahi-daemon* (0.7-3.1ubuntu1) avahi-utils* (0.7-3.1ubuntu1) libnss-mdns* (0.10-8ubuntu1) 0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded. After this operation, 541 kB disk space will be freed. Do you want to continue? y

Шаг 3. Защитите ваши порты

Хакер-любитель может попытаться извлечь данные через или создать обратный шелл на (прямо указанный в Википедии в качестве дефолтного порта для Metasploit). Брандмауэр, который разрешает только исходящие пакеты на нескольких портах, будет блокировать любые входящие пакеты.

Для управления доступностью портов мы будем использовать - программу, которая представляет собой простой интерфейс для настройки брандмауэров. UFW буквально означает Uncomplicated FireWall. Он действует как фронтенд для (пакетный фильтр) и не предназначен для обеспечения полной функциональности брандмауэра, а вместо этого является удобным средством добавления или удаления правил брандмауэра.

1. Запретите все входящие и исходящие соединения

Чтобы включить UFW, используйте команду sudo ufw enable.

Sudo ufw enable Firewall is active and enabled on system startup

Отключите все входящие соединения с помощью этой команды:

Sudo ufw default deny incoming

Затем запретите все переадресации:

Sudo ufw default deny forward

И запретите все исходящие соединения:

Sudo ufw default deny outgoing

С этого момента доступ к Интернету с помощью Firefox или любого другого приложения у вас будет закрыт.

2. Найдите ваш Wi-Fi интерфейс

Чтобы разрешить исходящие подключения, сначала нужно найти имя Wi-Fi-адаптера, используя команду ifconfig -a.

Ifconfig -a enp0s8: flags=4163 mtu 1500 inet 192.168.1.44 netmask 255.255.255.0 broadcast 192.168.1.255 ether e8:e1:e8:c2:bc:b9 txqueuelen 1000 (Ethernet) RX packets 631 bytes 478024 (478.0 KB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 594 bytes 60517 (60.5 KB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 device interrupt 16 base 0xd040 lo: flags=73 mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6::1 prefixlen 128 scopeid 0x10 loop txqueuelen 1000 (Local Loopback) RX packets 259 bytes 17210 (17.2 KB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 259 bytes 17210 (17.2 KB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

Для целей этой статьи мы используем Ubuntu в VirtualBox, поэтому имя нашего интерфейса «enp0s8». Команда ifconfig может отображать ваш беспроводной интерфейс как «wlp3s0», «wlp42s0» или что-то в этом роде.

3. Создайте исключения брандмауэра и настройте защищенное разрешение DNS

Разрешить DNS, HTTP и HTTPS трафик на беспроводном интерфейсе можно с помощью этих трех команд.

Sudo ufw allow out on to 1.1.1.1 proto udp port 53 comment "allow DNS on " sudo ufw allow out on to any proto tcp port 80 comment "allow HTTP on " sudo ufw allow out on to any proto tcp port 443 comment "allow HTTPS on "

Адрес «1.1.1.1» в команде DNS - это новый DNS-резолвер . Многие интернет-пользователи не понимают, что даже если они просматривают веб-сайт с использованием зашифрованного соединения (небольшой зеленый замочек в строке URL), Интернет-провайдеры все равно могут видеть имя каждого домена, посещаемого с помощью DNS-запросов. Использование DNS-резолвера CloudFlare поможет предотвратить попытки Интернет-провайдеров (ISP) отслеживать ваш трафик.

4. Обновите конфигурацию DNS в Network Manger’е

После установки правил UFW в Network Manager перейдите в меню «Edit» вашего Wi-Fi-соединения и измените поле DNS на 1.1.1.1. Отключитесь и снова подключитесь к Wi-Fi сети, чтобы изменения DNS вступили в силу.

Просмотрите вновь созданные правила с помощью команды sudo ufw status numbered.

Sudo ufw status numbered Status: active To Action From -- ------ ---- [ 1] 1.1.1.1 53/udp ALLOW OUT Anywhere on enp0s8 (out) # allow DNS on enp0s8 [ 2] 443/tcp ALLOW OUT Anywhere on enp0s8 (out) # allow HTTPS on enp0s8 [ 3] 80/tcp ALLOW OUT Anywhere on enp0s8 (out) # allow HTTP on enp0s8

Ubuntu сможет делать стандартные HTTP/HTTPS запросы на портах 80 и 443 на указанном вами беспроводном интерфейсе. Если эти правила слишком строгие для вашей повседневной активности, то можно разрешить все исходящие пакеты с помощью этой команды:

Sudo ufw default allow outgoing

5. Мониторьте брандмауэр

Если вы пытаетесь отладить входящие или исходящие соединения, то для этого можно использовать команду tail с аргументом -f, чтобы следить за сообщениями и расхождениями в логах UFW в реальном времени. Полностью эта команда будет выглядеть так:

Tail -f /var/log/ufw.log kernel: [ 3900.250931] IN= OUT=enp0s8 SRC=192.168.1.44 DST=104.193.19.59 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=47090 DF PROTO=TCP SPT=35944 DPT=9999 WINDOW=29200 RES=0x00 SYN URGP=0 kernel: [ 3901.280089] IN= OUT=enp0s8 SRC=192.168.1.44 DST=104.193.19.59 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=47091 DF PROTO=TCP SPT=35944 DPT=9999 WINDOW=29200 RES=0x00 SYN URGP=0

В приведенных выше логах UFW блокирует исходящие соединения (OUT=) с нашего локального IP-адреса (192.168.1.44) на сервер Null Byte (104.193.19.59), используя TCP с портом назначения (DPT) 9999. Это можно резолвить с помощью этой команды UFW:

Sudo ufw allow out on from 192.168.1.44 to 104.193.19.59 proto tcp port 9999

Для получения дополнительной информации по UFW можно почитать маны (страницы руководства) - man ufw.

Читатели, интересующиеся очень тонкой настройкой брандмауэра, обязательно должны .

Шаг 4. Защититесь от пакетного сниффинга и перехвата файлов cookie

Атаки, направленные на манипуляции пакетами, можно предотвратить с помощью виртуальной частной сети (VPN). VPN предлагает набор технологий, которые:

  • Препятствуют хакерам в сетях Wi-Fi манипулировать пакетами и отслеживать вашу активность.
  • Запрещают Интернет-провайдерам следить за вашей активностью и продавать ваши данные на сторону.
  • Помогают обходить блокировки цензурных органов (вроде РКН), когда Интернет-провайдеры или сетевые брандмауэры блокируют доступ к определенным веб-сайтам.

Ценник большинства платных VPN-сервисов начинается с $5 в месяц. Вот некоторые заслуживающие внимания VPN-провайдеры: ProtonVPN, Mullvad, VyprVPN и .

Следующий шаг - усиление защиты приложений и создание «песочниц»

Вот и все, что касается установления защиты вашего присутствия и деятельности в Интернете. В следующей статье мы поговорим о приложениях для создания песочниц и обеспечения безопасности вашей системы в случае, если на устройстве будет запущена какая-нибудь вредоносная программа. После этого мы погрузимся в аудит с помощью антивирусного ПО и мониторинг системных логов.

Отказ от ответственности : Эта статья написана только для образовательных целей. Автор или издатель не публиковали эту статью для вредоносных целей. Если читатели хотели бы воспользоваться информацией для личной выгоды, то автор и издатель не несут ответственность за любой причиненный вред или ущерб.

Каждую сетевую атаку можно в общем случае разбить на 5 этапов (таблица 3). В реальной ситуации некоторые шаги могут быть пропущены.

Таблица 3. Основные классы сетевых атак

Класс сетевой атаки

Описание класса

1. Исследование

Получение общей информации о компьютерной системе (КС)

1.1 Социотехника

Получение информации посредством вежливого втирания в доверие по телефону, электронной почте и т.п.

1.2 Непосредственное вторжение

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

1.3 Разгребание мусора

Получение информации из мусорных корзин или архивов

1.4 Поиск в WEB

Получение информации из интернета посредством общедоступных поисковых систем

1.5 Изучение WHOIS

Получение информации из регистрационных данных о владельцах доменных имён, IP-адресов и автономных систем

1.6 Изучение DNS зон

Получение информации посредством использования сервиса доменных имен

2. Сканирование

Получение информации об инфраструктуре и внутреннем устройстве КС

2.1 Поиск активных устройств

Получение информации об активных устройствах КС

2.2 Трассировка маршрутов

Определение топологии КС

2.3 Сканирование портов

Получение информации об активных сервисах, функционирующих в КС

3. Получение доступа

Получение привилегированных прав на управление узлами КС

3.1 Переполнение стека

Выполнение произвольного кода в результате вызванного злоумышленником сбоя в программном обеспечении

3.2 Атака на пароли

Подбор паролей из списка стандартных или по специально сгенерированному словарю, перехват паролей

3.3 Атаки на WEB - приложения

Получение доступа в результате эксплуатации уязвимостей в открытых WEB-приложениях КС

3.4 Сниффинг

Получение доступа посредством пассивного (прослушивание) и активного (подмена адресатов) перехвата трафика КС

3.5 Перехват сеанса связи

Эксплуатация полученных прав для достижения целей взлома

4.1 Поддержание доступа

Установка систем удаленного администрирования

4.2 DOS-атаки

Вывод из строя устройств и отдельных сервисов КС

4.3 Обработка конфиденциальной информации

Перехват, копирование и/или уничтожение информации

5. Заметание следов

Сокрытие факта проникновения в КС от систем защиты

5.1 Стирание системных логов

Удаление данных архивов приложений и сервисов КС

5.2 Сокрытие признаков присутствия в сети

Туннелирование внутри стандартных протоколов (HTTP, ICMP, заголовков TCP и т.п.)

Рассмотрим основные способы и средства защиты от перечисленных сетевых угроз .

Социотехника. Наилучший метод защиты от социотехники -- осведомленность пользователя. Необходимо сообщить всем сотрудникам о существовании социотехники и четко определить те виды информации, которые ни под каким предлогом нельзя разглашать по телефону. Если в организации предусмотрены варианты предоставления какой-либо информации по телефону (номеров телефонов, идентификационных данных и др.), то следует четко регламентировать данные процедуры, например, используя методы проверки подлинности звонящего.

Непосредственное вторжение:

ѕ контрольно-пропускной режим (системы контроля доступа, журнал посетителей, бейджи и др.);

ѕ физическая безопасность оборудования (механические, электронные замки);

ѕ блокировка компьютера, хранители экрана;

ѕ шифрование файловой системы.

Разгребание мусора. Хорошо известная всем бумагорезательная машина (шредер) -- самая лучшая защита против тех, кто роется в мусорных корзинах. У сотрудников должен быть беспрепятственный доступ к таким машинам, чтобы они могли уничтожить всю сколько-нибудь ценную информацию. Другой вариант: каждому пользователю предоставляется отдельная урна для бумаг, содержащих важные сведения, откуда каждую ночь документы поступают на бумагорезательную машину. Сотрудники должны быть четко информированы о том, как обращаться с конфиденциальной информацией.

Поиск в WEB. Основной способ защиты -- неразглашение информации. Нужно сделать необходимым и достаточным перечень информации, подлежащей размещению на публичных ресурсах в сети интернет. Избыточные данные о компании могут «помочь» злоумышленнику в реализации его намерений. Сотрудники должны нести ответственность за распространение конфиденциальной информации. Периодически следует проводить проверку публичной информации собственными силами или с привлечением сторонних компаний.

Изучение WHOIS. Не существует общих способов защиты от получения регистрационных данных злоумышленником. Существуют рекомендации, согласно которым информация в соответствующих базах должна быть как можно более точной и правдоподобной. Это позволяет администраторам различных компаний беспрепятственно связываться друг с другом и способствовать поиску злоумышленников.

Изучение DNS-зон. В первую очередь необходимо проверить, что на DNS-сервере нет утечки данных, которая возникает за счет наличия там лишних сведений. Такими сведениями могут быть имена, содержащие название операционных систем, записи типа HINFO или TXT. Во-вторых, необходимо корректно настроить DNS-сервер, чтобы ограничить передачу зоны. В-третьих, необходимо настроить граничный маршрутизатор таким образом, чтобы доступ к 53-му порту (TCP и UDP) имели только резервные серверы DNS, производящие синхронизацию с центральным сервером. Также следует использовать разделение внешнего и внутреннего DNS-серверов. Внутренний сервер настраивается таким образом, чтобы он мог разрешать имена только внутренней сети, а для разрешения имен внешней сети используются правила пересылки. То есть внешний DNS-сервер не должен ничего «знать» про внутреннюю сеть.

Поиск активных устройств и трассировка маршрутов. Способ защиты -- установка и настройка межсетевых экранов на фильтрацию пакетов таким образом, чтобы отсеивать запросы программ, используемых злоумышленником. Например, блокировка ICMP запросов от ненадежных источников сильно затруднит трассировку.

Сканирование портов. Первое и самое важное -- закрытие всех неиспользуемых портов. Например, если вы не используете TELNET, то необходимо закрыть соответствующий порт. При развертывании новой системы, необходимо заранее выяснить используемые ей порты и открывать их по мере необходимости. В особенно важных системах рекомендуется удалить программы, соответствующие ненужным сервисам. Лучшей считается такая настройка систем, в которой число установленных сервисов и инструментов минимально. Второе -- необходимо самостоятельно тестировать собственную систему на проникновение, тем самым предопределяя действия нарушителя. Для защиты от более совершенных сканеров рекомендуется применять пакетные фильтры с контролем состояния системы. Такие фильтры исследуют пакеты протоколов и пропускают только те из них, которые соответствуют установленным сессиям.

Общие рекомендации против сканирования -- своевременное применение пакетов безопасности, использование для сети и для хостов систем обнаружения вторжений (IDS), систем предотвращения вторжений (IPS), своевременное их обновление.

Переполнение стека. Способы защиты от данного типа атак можно разделить на две категории.

  • 1. Методы, которые применяют системные администраторы и сотрудники службы безопасности при эксплуатации, настройке и сопровождении систем: своевременное применение патчей к системам, отслеживание обновлений установленных продуктов, сервис-паков для них, удаление лишних программ и сервисов, контроль и фильтрация входящего/исходящего трафика, настройка неисполняемого стека. Многие IDS способны обнаруживать атаки переполнения памяти по сигнатурам.
  • 2. Методы, используемые разработчиками программного обеспечения в процессе создания программ: устранение ошибок программирования, путем проверки пространства доступной памяти, объема проходящей вводимой информации через приложение. Воздержание от использования проблемных функций с точки зрения безопасности; компиляция программ специальными средствами.

Вышеописанные методы помогают минимизировать количество атак на переполнение стековой памяти, но не гарантирует полную безопасность системы.

Атаки на пароли. Первое и самое главное -- «сильные» пароли. Это пароли длиной не менее 9-и знаков и содержащие специальные символы. Далее -- регулярная смена паролей. Чтобы это все корректно работало, рекомендуется выработать адаптированную под конкретную организацию политику паролей и довести ее содержание до всех пользователей. Не лишним будет предоставить сотрудникам конкретные рекомендации по созданию паролей. Второе -- рекомендуется использовать системы со встроенной проверкой на «слабость» паролей. Если такой проверки нет, то следует развернуть дополнительное программное обеспечение, выполняющее имеющее схожий функционал. Самый эффективный способ -- отказ от паролей и использование систем аутентификации (смарт-карты и др.). Рекомендуется регулярно производить тестовые «взломы» собственных паролей. Хорошей практикой является защита файлов с хешированными паролями, а также их теневых копий.

Атаки на WEB-приложения. Для того чтобы защититься от похищения учетных записей, необходимо выводить на экран одну и ту же ошибку при неправильном вводе логина или пароля. Это затруднит злоумышленнику перебор вашего ID или пароля. Лучшая защита от атак, отслеживающих соединение -- хеширование передаваемой информации о соединении, динамическая смена сеансового ID, завершение неактивного сеанса. Самые опасные атаки -- внедрение SQL-кода в приложение. Защита от них -- разработка WEB-приложений таким образом, чтобы они могли тщательно фильтровать указанные пользователем данные. Приложение не должно слепо доверять вводимой информации, поскольку в ней могут содержаться символы, с помощью которых модифицируются SQL-команды. Приложение должно удалять специальные символы, прежде чем обработать запрос пользователя.

Следует отметить, что на сегодняшний день активно развивается направление WAF (Web Application Firewall) -- файервол уровня приложений, предоставляющий комплексные методы защиты WEB-ресурсов. К сожалению, эти решения ввиду высокой стоимости доступны в основном только крупным компаниям.

Сниффинг. Первое -- шифрование данных, передаваемых по сети. Для этого используются протоколы -- HTTPS, SSH, PGP, IPSEC. Второе -- внимательное обращение с сертификатами безопасности, игнорирование сомнительных сертификатов. Использование современных коммутаторов, позволяющих настроить MAC-фильтрацию на портах, реализовать статическую ARP-таблицу. Использовать VLAN-ы.

IP-спуфинг. Данную угрозу можно минимизировать следующими мерами.

  • 1. Контроль доступа. На границе сети устанавливаются пакетные фильтры, позволяющие отсеивать весь трафик внешней сети, где в пакетах исходным адресом указан один из адресов внутренней сети.
  • 2. Фильтрация RFC2827. Она заключается в отсечении исходящего трафика внутренней сети, в котором исходным адресом не обозначен ни один из IP-адресов вашей организации.
  • 3. Внедрение дополнительных видов аутентификации (двухфакторной) и криптографического шифрования делает такие атаки абсолютно неэффективными.

Перехват сеанса связи. Эффективно бороться с этим видом атак можно только с помощью криптографии. Это может быть SSL-протокол, VPN-сети и др. Для наиболее критичных систем целесообразно использовать шифрование и во внутренних сетях. Атакующий, перехвативший трафик зашифрованной сессии не сможет получить из него какой-либо ценной информации.

DOS-атаки. Для описания средств защиты от DOS-атак рассмотрим их классификацию. Эти атаки, как правило, разделяются на две категории: прекращение сервисов и истощение ресурсов (таблица 5). Прекращение сервисов -- сбой или отключение конкретного сервера, используемого в сети. Истощение ресурсов -- расходование компьютерных или сетевых ресурсов с целью помешать пользователям в получении атакуемого сервиса. Оба вида атак могут проводиться как локально, так и дистанционно (через сеть).

Защита против прекращения локальных сервисов: актуальные патчи безопасности локальных систем, регулярное исправление ошибок, разграничение прав доступа, применение программ проверки целостности файлов.

Защита против локального истощения ресурсов: применение принципа наименьшего количества привилегий при назначении прав доступа, увеличение системных ресурсов (память, скорость процессора, пропускная способность каналов связи и т.д.), применение IDS.

Защита против дистанционного прекращения сервисов: применение патчей, быстрое реагирование.

Лучшей защитой от дистанционного истощения ресурсов является быстрое реагирование на атаку. В этом могут помочь современные IDS-системы, сотрудничество с провайдером. Как и в предыдущих пунктах, следует своевременно обновлять и исправлять системы. Использовать функции анти-спуфинга. Ограничивать объем трафика со стороны провайдера. Для наиболее критичных систем необходимо иметь адекватную пропускную способность и избыточные линии связи.

Поддержание доступа. Вирусы и «троянские кони». Лучшая защита -- эффективное антивирусное программное обеспечение (ПО), работающее как на пользовательском уровне, так и на уровне сети. Для обеспечения высокого уровня безопасностей от этих угроз требуется регулярное обновление антивирусного ПО и сигнатур известных вирусов. Вторым шагом является получение актуальных обновлений операционных систем, настройка политик безопасности приложений в соответствии с актуальными рекомендациями их разработчиков. Необходимо обучить пользователей навыкам «безопасной» работы в Интернете и с электронной почтой. Защита от «ROOTKIT» обеспечивается политиками разграничения доступа, антивирусным программным обеспечением, применением обманок и системами обнаружения вторжений.

Заметание следов. После атаки злоумышленник, как правило, пытается избежать ее обнаружения администраторами безопасности. Для этих целей он производит изменение или удаление лог-файлов, хранивших историю действий нарушителя. Создание эффективной защиты, предотвращающей изменение лог-файлов злоумышленником, является важнейшим условием безопасности. Количество усилий, которые необходимо затратить на защиту регистрационной информации данной системы, зависит от ее ценности. Первым шагом для обеспечения целостности и полноценности лог-файлов является включение регистрации в особо важных системах. Чтоб избежать ситуации, когда в случае форс-мажора оказывается, что журналы отключены, необходимо создать политику безопасности, в которой бы регламентировались процедуры ведения журналов. Рекомендуется регулярно проводить проверки систем на соответствие данной политики. Другой необходимой мерой защиты лог-файлов является разграничение прав доступа на эти файлы. Эффективным приемом защиты регистрационной информации является установка выделенного сервера регистрации событий, обеспечив соответствующий уровень безопасности. Также хороши такие способы защиты как шифрование лог-файлов и разрешение на запись только в конец файла. Использование систем IDS. Защититься против туннелирования можно в двух местах: на конечном компьютере и в сети. На конечном компьютере защита обеспечивается правами доступа, антивирусным ПО, безопасной конфигурацией и установкой обновлений. На уровне сети туннелирование можно обнаружить системами обнаружения вторжений.

Выше были перечислены основные способы защиты от сетевых атак. На их основании строятся комплексные решения, которые могут совмещать в себе ряд функций по защите информации и использоваться в конкретном модуле сетевой инфраструктуры.

Особый интерес для рассмотрения представляют удалённые, сетевые атаки. Интерес к этой разновидности атак вызван тем, что всё большее распространение в мире получают распределённые системы обработки данных. Большинство пользователей работает с удалёнными ресурсами, используя сеть INTERNET и стек протоколов TCP/IP. Изначально сеть INTERNET создавалась для связи между государственными учреждениями и университетами в помощь учебному процессу и научным исследованиям, и создатели этой сети не подозревали, насколько широко она распространится. В результате в спецификациях ранних версий Интернет-протокола (IP) отсутствовали требования безопасности. Именно поэтому многие реализации IP являются изначально уязвимыми.

В курсе рассматриваются следующие атаки и способы борьбы с ними.

Атака «Сниффинг». Сниффер пакетов представляет собой прикладную программу, которая использует сетевую карту, работающую в режиме promiscuous mode (в этом режиме все пакеты, полученные по физическим каналам, сетевой адаптер отправляет приложению для обработки). При этом сниффер перехватывает все сетевые пакеты, которые передаются через определенный домен. В настоящее время снифферы работают в сетях на вполне законном основании. Они используются для диагностики неисправностей и анализа трафика. Однако ввиду того, что некоторые сетевые приложения передают данные в текстовом формате (Telnet, FTP, SMTP, POP3 и т.д.), с помощью сниффера можно узнать полезную, а иногда и конфиденциальную информацию (например, имена пользователей и пароли).

Перехват имен и паролей создает большую опасность, так как пользователи часто применяют один и тот же логин и пароль для множества приложений и систем. Многие пользователи вообще имеют один пароль для доступа ко всем ресурсам и приложениям. Если приложение работает в режиме клиент/сервер, а аутентификационные данные передаются по сети в читаемом текстовом формате, эту информацию с большой вероятностью можно использовать для доступа к другим корпоративным или внешним ресурсам. В самом худшем случае злоумышленник получает доступ к пользовательскому ресурсу на системном уровне и с его помощью создает нового пользователя, которого можно в любой момент использовать для доступа в сеть и к ее ресурсам.



Смягчить угрозу сниффинга пакетов можно с помощью следующих средств:

Аутентификация. Сильные средства аутентификации являются первым способом защиты от сниффинга пакетов. Под «сильным» мы понимаем такой метод аутентификации, который трудно обойти. Примером такой аутентификации являются однократные пароли (OTP - One-Time Passwords). ОТР - это технология двухфакторной аутентификации. Типичным примером двухфакторной аутентификации является работа обычного банкомата, который опознает вас, во-первых, по вашей пластиковой карточке и, во-вторых, по вводимому ПИН-коду. Для аутентификации в системе ОТР также требуется ПИН-код и ваша личная карточка. Под «карточкой» (token) понимается аппаратное или программное средство, генерирующее (по случайному принципу) уникальный одномоментный однократный пароль. Если злоумышленник узнает этот пароль с помощью сниффера, эта информация будет бесполезной, потому что в этот момент пароль уже будет использован и выведен из употребления. Заметим, что этот способ борьбы со сниффингом эффективен только для борьбы с перехватом паролей. Снифферы, перехватывающие другую информацию (например, сообщения электронной почты), не теряют своей эффективности.

Коммутируемая инфраструктура. Еще одним способом борьбы со сниффингом пакетов в сетевой среде является создание коммутируемой инфраструктуры. Если, к примеру, во всей организации используется коммутируемый Ethernet, злоумышленники могут получить доступ только к трафику, поступающему на тот порт, к которому они подключены. Коммутируемая инфраструктура не ликвидирует угрозу сниффинга, но заметно снижает ее остроту.

Анти-снифферы. Третий способ борьбы со сниффингом заключается в установке аппаратных или программных средств, распознающих снифферы, работающие в сети. Эти средства не могут полностью ликвидировать угрозу, но, как и многие другие средства сетевой безопасности, они включаются в общую систему защиты. Так называемые «анти-снифферы» измеряют время реагирования хостов и определяют, не приходится ли хостам обрабатывать «лишний» трафик.

Криптография. Самый эффективный способ борьбы со сниффингом пакетов не предотвращает перехвата и не распознает работу снифферов, но делает эту работу бесполезной. Если канал связи является криптографически защищенным, это значит, что злоумышленник перехватывает не сообщение, а зашифрованный текст (то есть непонятную последовательность битов).

Атака «IP-спуфинг». Эта атака происходит, когда злоумышленник, находящийся внутри корпорации или вне ее, выдает себя за санкционированного пользователя. Самая простая причина использования подложных IP-адресов заключается в желании взломщика скрыть свою деятельность в океане сетевой активности. Например, средство построения сетевых схем NMAP3 применяет рассылку дополнительных последовательностей пакетов, каждая из которых использует собственный подложный IP-адрес отправителя. При этом взломщик знает, какие IP-адреса являются подложными и какие пакеты в каждой последовательности являются реальными. Администратор по обеспечению безопасности системы, которая подвергается нападению, будет вынужден проанализировать множество подложных IP-адресов, прежде чем он определит реальный IP-адрес взломщика.

Еще одна причина, по которой взломщик использует подлог IP-адреса, заключается в желании скрыть свою личность. Дело в том, что существует возможность проследить IP-адрес вплоть до отдельной системы, а иногда даже до отдельного пользователя. Поэтому с помощью IP-подлога взломщик пытается избежать обнаружения. Однако использование подложного IP-адреса приносит отправителю ряд трудностей.

Все ответы атакуемой системы отправляются на подложный IP-адрес. Для того чтобы просмотреть или получить эти ответы, взломщик должен находиться на их пути от взломанной машины к подложному IP-адресу (по крайней мере теоретически). Поскольку ответ не обязательно проходит тем же маршрутом, что и отправленный подложный пакет, взломщик может потерять возвращаемый трафик. Чтобы избежать этого, нарушитель может вмешаться в работу одного или нескольких промежуточных маршрутизаторов, адреса которых будут использоваться в качестве подложных, чтобы перенаправить трафик в другое место.

Другой подход состоит в том, что злоумышленник заранее угадывает порядковые номера TCP, которые используются атакованной машиной. В этом случае ему не нужно получать пакет SYN-ACK, так как он просто генерирует и отправляет пакет АСК с предугаданным порядковым номером. В первых реализациях стеков IP использовались предугадываемые схемы вычисления порядковых номеров, поэтому они были чувствительны к подложным TCP-потокам данных. В современных реализациях предугадать порядковый номер уже более сложно. Средство построения сетевых схем NMAP обладает возможностью оценивать сложность предугадывания порядковых номеров систем, которые подвергаются сканированию.

В третьем варианте взломщик может вмешаться в работу одного или более маршрутизаторов, расположенных между его сервером и сервером, который подвергается нападению. Это дает возможность направить ответный трафик, предназначенный подложному IP-адресу, в систему, из которой произошло вторжение. После завершения взлома маршрутизатор освобождается, чтобы замести следы.

Наконец, злоумышленник может не иметь намерения отвечать на пакет SYN-ACK, который возвращается от "жертвы". На это может быть две причины. Возможно, взломщик производит полуоткрытое сканирование портов, известное под названием SYN-сканирование. В этом случае его интересует только начальный ответ от машины, которая подвергается нападению. Комбинации флажков RST-ACK означает, что сканируемый порт закрыт, а комбинация SYN-ACK - что открыт. Цель достигнута, следовательно, нет необходимости отвечать на этот пакет SYN-ACK. Также возможен вариант, когда осуществляется лавинообразный SYN-взлом. В этом случае взломщик не только не отвечает на пакеты SYN-ACK или RST-ACK, но вообще не интересуется типом пакетов, полученных от взломанной системы.

Атаки IP-спуфинга часто являются отправной точкой для прочих атак. Классический пример - атака DoS, которая начинается с чужого адреса, скрывающего истинную личность злоумышленника.

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

Как уже отмечалось, для двусторонней связи злоумышленник должен изменить все таблицы маршрутизации, чтобы направить трафик на ложный IP-адрес. Некоторые злоумышленники, однако, даже не пытаются получить ответ от приложений. Если главная задача состоит в получении от системы важного файла, ответы приложений не имеют значения. Если же злоумышленнику удается поменять таблицы маршрутизации и направить трафик на ложный IP-адрес, злоумышленник получит все пакеты и сможет отвечать на них так, будто он является санкционированным пользователем.

Угрозу спуфинга можно ослабить (но не устранить) с помощью следующих мер:

Контроль доступа. Самый простой способ предотвращения IP-спуфинга состоит в правильной настройке управления доступом. Чтобы снизить эффективность IP-спуфинга, необходимо настроить контроль доступа на отсечение любого трафика, поступающего из внешней сети с исходным адресом, который должен располагаться внутри вашей сети. Заметим, что это помогает бороться с IP-спуфингом, когда санкционированными являются только внутренние адреса. Если санкционированными являются и некоторые адреса внешней сети, данный метод становится неэффективным.

Фильтрация RFC 2827. Попытки спуфинга чужих сетей пользователями защищаемой сети пресекаются, если отбраковывается любой исходящий трафик, исходный адрес которого не является одним из IP-адресов защищаемой организации. Этот тип фильтрации, известный под названием «RFC 2827», может выполнять и ваш провайдер (ISP). В результате отбраковывается весь трафик, который не имеет исходного адреса, ожидаемого на определенном интерфейсе. К примеру, если ISP предоставляет соединение с IP-адресом 15.1.1.0/24, он может настроить фильтр таким образом, чтобы с данного интерфейса на маршрутизатор ISP допускался только трафик, поступающий с адреса 15.1.1.0/24. Заметим, что до тех пор, пока все провайдеры не внедрят этот тип фильтрации, его эффективность будет намного ниже возможной. Кроме того, чем дальше от фильтруемых устройств, тем труднее проводить точную фильтрацию. Так, например, фильтрация RFC 2827 на уровне маршрутизатора доступа требует пропуска всего трафика с главного сетевого адреса (10.0.0.0/8), тогда как на уровне распределения (в данной архитектуре) можно ограничить трафик более точно (адрес - 10.1.5.0/24).

IP-спуфинг может функционировать только при условии, что аутентификация происходит на базе IP-адресов. Поэтому внедрение дополнительных методов аутентификации делает этот вид атак бесполезными. Лучшим видом дополнительной аутентификации является криптографическая. Если она невозможна, хорошие результаты может дать двухфакторная аутентификация с использованием одноразовых паролей.

Отказ в обслуживании (Denial of Service - DoS). DoS, без всякого сомнения, является наиболее известной формой атак. Кроме того, против атак такого типа труднее всего создать стопроцентную защиту. Простота реализации и огромный причиняемый вред привлекают к DoS пристальное внимание администраторов, отвечающих за сетевую безопасность. Наиболее известные разновидности атак являются: TCP SYN Flood; Ping of Death; Tribe Flood Network (TFN) и Tribe Flood Network 2000 (TFN2K); Trinco; Stacheldracht; Trinity.

Источником информации по этим атакам является группа экстренного реагирования на компьютерные проблемы (CERT - Computer Emergency Response Team), опубликовавшая работу по борьбе с атаками DoS.

Атаки DoS отличаются от атак других типов. Они не нацелены на получение доступа к вашей сети или на получение из этой сети какой-либо информации. Атака DoS делает сеть недоступной для обычного использования за счет превышения допустимых пределов функционирования сети, операционной системы или приложения. В случае использования некоторых серверных приложений (таких как web-сервер или FTP-сервер) атаки DoS могут заключаться в том, чтобы занять все соединения, доступные для этих приложений, и держать их в занятом состоянии, не допуская обслуживания обычных пользователей. В ходе атак DoS могут использоваться обычные Интернет-протоколы, такие как TCP и ICMP (Internet Control Message Protocol).

Большинство атак DoS опирается не на программные ошибки или бреши в системе безопасности, а на общие слабости системной архитектуры. Некоторые атаки сводят к нулю производительность сети, переполняя ее нежелательными и ненужными пакетами или сообщая ложную информацию о текущем состоянии сетевых ресурсов. Этот тип атак трудно предотвратить, так как для этого требуется координация действий с провайдером. Если трафик, предназначенный для переполнения сети, не остановить у провайдера, то на входе в сеть это сделать уже не получится, потому что вся полоса пропускания будет занята. Когда атака этого типа проводится одновременно через множество устройств, мы говорим о распределенной атаке DoS (DDoS - distributed DoS).

Угроза атак типа DoS может снижаться тремя способами:

Функции анти-спуфинга. Правильная конфигурация функций анти-спуфинга на ваших маршрутизаторах и межсетевых экранах поможет снизить риск DoS. Эти функции, как минимум, должны включать фильтрацию RFC 2827. Если злоумышленник не сможет замаскировать свою истинную личность, он вряд ли решится провести атаку.

Функции анти-DoS. Правильная конфигурация функций анти-DoS на маршрутизаторах и межсетевых экранах может ограничить эффективность атак. Эти функции часто ограничивают число полуоткрытых каналов в любой момент времени.

Ограничение объема трафика (traffic rate limiting). Организация может попросить провайдера (ISP) ограничить объем трафика. Этот тип фильтрации позволяет ограничить объем некритического трафика, проходящего по вашей сети. Обычным примером является ограничение объемов трафика ICMP, который используется только для диагностических целей. Атаки (D) DoS часто используют ICMP.

Парольные атаки. Злоумышленники могут проводить парольные атаки с помощью целого ряда методов, таких как простой перебор (brute force attack), «троянский конь», IP-спуфинг и сниффинг пакетов. Хотя логин и пароль часто можно получить при помощи IP-спуфинга и сниффинга пакетов, хакеры часто пытаются подобрать пароль и логин, используя для этого многочисленные попытки доступа. Такой подход носит название простого перебора (brute force attack).

Часто для такой атаки используется специальная программа, которая пытается получить доступ к ресурсу общего пользования (например, к серверу). Если в результате злоумышленник получает доступ к ресурсам, он получает его на правах обычного пользователя, пароль которого был подобран. Если этот пользователь имеет значительные привилегии доступа, злоумышленник может создать для себя «проход» для будущего доступа, который будет действовать, даже если пользователь изменит свой пароль и логин.

Еще одна проблема возникает, когда пользователи применяют один и тот же (пусть даже очень хороший) пароль для доступа ко многим системам: корпоративной, персональной и системам Интернет. Поскольку устойчивость пароля равна устойчивости самого слабого хоста, злоумышленник, узнавший пароль через этот хост, получает доступ ко всем остальным системам, где используется тот же пароль.

Прежде всего, парольных атак можно избежать, если не пользоваться паролями в текстовой форме. Одноразовые пароли и/или криптографическая аутентификация могут практически свести на нет угрозу таких атак. К сожалению, не все приложения, хосты и устройства поддерживают указанные выше методы аутентификации.

При использовании обычных паролей старайтесь придумать такой пароль, который было бы трудно подобрать. Минимальная длина пароля должна быть не менее восьми символов. Пароль должен включать символы верхнего регистра, цифры и специальные символы (#, %, $ и т.д.). Лучшие пароли трудно подобрать и трудно запомнить, что вынуждает пользователей записывать пароли на бумаге. Чтобы избежать этого, пользователи и администраторы могут поставить себе на пользу ряд последних технологических достижений. Так, например, существуют прикладные программы, шифрующие список паролей, который можно хранить в карманном компьютере. В результате пользователю нужно помнить только один сложный пароль, тогда как все остальные пароли будут надежно защищены приложением.

Атаки типа «Man-in-the-Middle». Для атаки типа «Man-in-the-Middle» злоумышленнику нужен доступ к пакетам, передаваемым по сети. Такой доступ ко всем пакетам, передаваемым от провайдера в любую другую сеть, может, к примеру, получить сотрудник этого провайдера. Для атак этого типа часто используются снифферы пакетов, транспортные протоколы и протоколы маршрутизации. Атаки проводятся с целью кражи информации, перехвата текущей сессии и получения доступа к частным сетевым ресурсам для анализа трафика и получения информации о сети и ее пользователях, для проведения атак типа DoS, искажения передаваемых данных и ввода несанкционированной информации в сетевые сессии.

Эффективно бороться с атаками типа Man-in-the-Middle можно только с помощью криптографии. Если злоумышленник перехватит данные зашифрованной сессии, у него на экране появится не перехваченное сообщение, а бессмысленный набор символов. Заметим, что если злоумышленник получит информацию о криптографической сессии (например, ключ сессии), это может сделать возможной атаку Man-in-the-Middle даже в зашифрованной среде.

Атаки на уровне приложений. Атаки на уровне приложений могут проводиться несколькими способами. Самый распространенный из них состоит в использовании хорошо известных слабостей серверного программного обеспечения (sendmail, HTTP, FTP). Используя эти слабости, злоумышленники могут получить доступ к компьютеру от имени пользователя, работающего с приложением (обычно это бывает не простой пользователь, а привилегированный администратор с правами системного доступа). Сведения об атаках на уровне приложений широко публикуются, чтобы дать возможность администраторам исправить проблему с помощью коррекционных модулей (патчей, заплаток). К сожалению, многие злоумышленники также имеют доступ к этим сведениям, что позволяет им учиться.

Главная проблема с атаками на уровне приложений состоит в том, что они часто пользуются портами, которым разрешен проход через межсетевой экран. Полностью исключить атаки на уровне приложений невозможно.

Существует огромное множество различных конфигураций компьютеров, операционных систем и сетевого оборудования, однако, это не становится препятствием для доступа в глобальную сеть. Такая ситуация стала возможной, благодаря универсальному сетевому протоколу TCP/IP, устанавливающему определенные стандарты и правила для передачи данных через интернет. К сожалению, подобная универсальность привела к тому, что компьютеры, использующие данный протокол, стали уязвимы для внешнего воздействия, а поскольку протокол TCP/IP используется на всех компьютерах, подключенных к интернету, у злоумышленников нет необходимости разрабатывать индивидуальные средства доступа к чужим машинам.

Сетевая атака – это попытка воздействовать на удаленный компьютер с использованием программных методов. Как правило, целью сетевой атаки является нарушение конфиденциальности данных, то есть, кража информации. Кроме того, сетевые атаки проводятся для получения доступа к чужому компьютеру и последующего изменения файлов, расположенных на нем.

Есть несколько типов классификации сетевых атак. Один из них – по принципу воздействия. Пассивные сетевые атаки направлены на получение конфиденциальной информации с удаленного компьютера. К таким атакам, например, относится чтение входящих и исходящих сообщений по электронной почте. Что касается активных сетевых атак, то их задачей является не только доступ к тем или иным сведениям, но и их модификация. Одно из наиболее значимых различий между этими типами атак заключается в том, что обнаружить пассивное вмешательство практически невозможно, в то время как последствия активной атаки, как правило, заметны.

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

Технологии защиты

Методы защиты от сетевых атак разрабатываются и совершенствуются постоянно, однако полной гарантии ни один из них не дает. Дело в том, что любая статичная защита имеет слабые места, так как невозможно защититься от всего сразу. Что же касается динамических методов защиты, таких как статистические, экспертные, защиты с нечеткой логикой и нейронные сети, то они тоже имеют свои слабые места, поскольку основаны преимущественно на анализе подозрительных действий и сравнении их с известными методами сетевых атак. Следовательно, перед неизвестными типами атак большинство систем защиты пасует, начиная отражение вторжения слишком поздно. Тем не менее, современные защитные системы позволяют настолько осложнить злоумышленнику доступ к данным, что рациональнее бывает поискать другую жертву.

Задание. Установить и настроить межсетевой экран.

Нижеприведенный текст взят с одного из сайтов с сохранением стиля автора.

Изначально межсетевой экран (файервол) служил для ограничения доступа к локальным сетям извне. Сейчас популярны комплексные решения. Если речь идет о "профессиональном" применении, то это отдельное устройство, умеющее не только фильтровать пакеты, но и обнаружить попытку сетевой атаки. Нам, простым пользователям, достаточно иметь программный файервол. Даже "простенький" файервол не ограничивается контролем интернет-трафика, он предупреждает о любой подозрительной активности приложений, спрашивая пользователя о том, что разрешать делать приложению, а что - нет. Это является и "недостатком". Первое время придется отвечать на вопросы, причем отвечать правильно. Я видел ситуации, когда пользователь ошибочно заблокировал доступ в интернет своему интернет-браузеру. В итоге - соединение с провайдером устанавливается, но, ни один сайт не открывается.

К файерволам мы вернемся очень скоро, ведь настала пора перейти к чисто сетевой безопасности.

Прежде, чем освещать сетевые атаки, неплохо ознакомиться с принципами функционирования сетей. Эти знания могут оказаться полезными и для устранения неполадок своими силами. Тех, кто желает всерьез изучить проблему, отсылаю к серьезным материалам. Простому человеку не обязательно читать всякие RTFSы. Моя цель - помочь пользователю обоснованно выбрать уровень защиты. Здесь приходится руководствоваться необходимой достаточностью, а определение этой "достаточности" - индивидуально.

Если вы - пользователь Интернет, ваш компьютер постоянно отправляет и получает данные. Отправляются запросы на получение информации, сама информация (например, почта). Получаются служебные ответы (готовность сервера, данные о размере скачиваемого файла и т.д.), и сами данные.

Представим себе работу двух штабов дружественных армий во время совместных учений. Российский генерал просит китайского поддержать наступление огнем с моря. Как происходит обмен информацией? Составляется письмо, передается шифровальщику, уже зашифрованное - радисту. Последний отстукивает письмо в эфир азбукой Морзе. Китайский радист получает "морзянку", шифровальщик расшифровывает, с удивлением обнаруживает, что послание на русском языке и отдает его переводчикам. Только теперь можно считать, что письмо дошло до адресата. Заметим, что нашим генералам по рангу не положено задумываться об азбуке Морзе, методах шифрования и радиопередатчиках. Также, как пользователь не обязан ничего знать о семи сетевых уровнях взаимодействия. Самым интересным для нас является IP - протокол интернета. Этот протокол должен понимать любой компьютер в сети Интернет, как все радисты способны пользоваться "морзянкой". Известно, что, при организации связи часто используются кабельные линии. Если на пути встречается преграда, например - река, то в место разрыва по берегам устанавливают два приемо-передатчика (ретрансляторы, это выгоднее, чем тянуть по дну кабель), далее могут использоваться и спутниковые каналы, и снова кабельная линия. Два "радиста" используют морзянку и могут ничего не знать о методах передачи сигнала по кабельным или радиоканалам с их аппаратурой уплотнения. Сети передачи данных, на которых базируется интернет, столь же сложны, но оконечные устройства, например Ваш компьютер, понимает IP, независимо от установленной операционной системы.

В соответствии с концепцией IP, данные преобразуются в отдельные "пакеты", которые могут (но не обязаны) нести в себе помимо куска данных и информации о пункте отправки и назначения, сведения о том, кусок чего именно содержится в пакете, как его стыковать с остальными частями. Понятно, что не существует идеальных каналов для передачи данных, а значит часть пакетов будет содержать ошибки, пакеты достигают цели в "неправильной" последовательности или вообще не достигают. Иногда это не критично. Поскольку теряется лишь небольшая часть пакетов, передачу можно повторить несколько раз (разумный подход, если сообщение небольшое). Сетевик увидит здесь дейтаграммный протокол (UDP), который базируется на протоколе IP и не гарантирует доставку сообщений. Протоколы TCP/IP располагают средствами для надежной доставки за счет установления виртуального соединения. В процессе такого соединения общаются уже две пользовательские программы. "Принимающая" сторона уведомляется о количестве отправленных пакетов и способе их стыковки, и, если какой-то пакет не дошел, просит повторить отправку. Здесь уже можно сделать два практических вывода. Первый: если сигнал сильно искажается или много помех, то значительная часть пакетов проходят с ошибками, что приводит к множеству повторных отправок, то есть, снижается реальная скорость передачи данных. Отсюда и возникает понятие ширины (пропускной способности) канала. Второй вывод: если отправит все заявленные пакеты кроме одного, принимающая сторона не закроет виртуального соединения, ожидая опаздывающего. Если насоздавать множество таких соединений, принимающему компьютеру будет тяжко, поскольку под каждое соединение резервируется участок памяти, а память не резиновая. По такому принципу строили сетевые атаки, "подвешивая" компьютер жертвы.

Чтобы понять процесс установления соединения, необходимо рассмотреть систему идентификации компьютеров в сети. Если мы говорим об интернет, то у каждого компьютера есть уникальное имя, называемое IP - адресом. выглядит он может примерно так: 213.180.204.11 Трудновато для запоминания, поэтому придумали доменные имена, состоящие из "нормальных" символов, например www.yandex.ru. Если в командной строке Вашего интернет-браузера набрать http://213.180.204.11, то это будет равноценно http://www.yandex.ru. Каждое доменное имя соответствует определенному IP - адресу. Как я узнал IP знаменитой поисковой системы? Можно использовать специальную программку, а можно выполнить команду "ping". Если у Вас Windows, нажмите кнопку "Пуск", кликните на пункте "выполнить". Нам предлагают выполнить на компьютере какую-нибудь команду, скомандуем cmd (введем cmd в поле "открыть"), откроется окно командного интерпретатора. Теперь мы можем видеть вводимые команды и результат их выполнения. Итак, командуем ping yandex.ru, жмем "Enter" и получаем результат. Результат будет положительным, если ваш компьютер подключен к Интернет. В этом случае Вам покажут время прохождения пробных пакетов до сервера yandex, а заодно ip - адрес. В роле "переводчика" выступает DNS - сервер, специальный компьютер, хранящий таблицы соответствия доменных имен ip-адресам, причем таких компьютером может быть много. Интернет изначально задумывался как отказоустойчивая сеть (для военных в США), а надежность должно было обеспечить отсутствие единого центра. Группа пакетов, отправленная в рамках одного соединения, может идти разными путями (на то она и всемирная паутина), управляется этот процесс маршрутизаторами, хранящими различные пути до различных подсетей. Теперь понятно, почему очередность поступления пакетов адресату может отличаться от исходной. Также понятно, что, если злодей подменит запись в таблице адресов, то вместо нужного сайта клиент может угодить на сайт-двойник, где введет свои пароли и другие данные. Утешает то, что подмена таблиц публичных DNS является весьма трудным делом. Но, следует помнить, что браузер первым делом просматривает локальную таблицу, хранящуюся в специальном файле на Вашем компьютере. Если вирусу удастся внести туда свою запись, то введя www.yandex.ru, Вы запросто можете попасть на совершенно другой сайт, быть может, внешне похожий. Если ваш файервол сообщает, что какая-то программа пытается изменить файл с таблицей адресов, стоит обследовать компьютер на предмет опасной заразы.

Для установления соединения мало знать адрес компьютера. Непременными атрибутами запроса на подключение являются протокол (язык, на котором решено общаться) и номер порта, к которому мы подключаемся. Протокол мы каждый раз указываем в адресной строке браузера (тот самый http, хотя можно набрать ftp и связаться с ftp-сервером, если он есть на сервере). Номер порта обычно явно не указывается, в этом случае для http подразумевается порт 80, на котором "висит" интернет-сервер (не в смысле "мощный компьютер", а в смысле "программа, обслуживающая клиентские приложения". На компьютере может быть запущено множество сервисов (тот же ftp), каждый слушает "свой" порт. Если интернет-браузеры обеспечивают в основном подключение по http и просмотр web-страниц, то для подключения к другим сервисам существуют специальные программы, как стандартные, так и "хакерские" Если установлена программа ICQ, то она открывает свой порт и "слушает" его на предмет желающих подключиться и пообщаться. Чем больше на машине запущено сетевых сервисов, тем больше вероятность, что среди них найдется уязвимый, ведь каждый открытый порт - дверь систему, а надежен ли замок - тот еще вопрос. Существует целый класс программ - сканеры портов, которые опрашивают заданный диапазон портов, перебирая номера и выдают список открытых. Забегая вперед, скажу, что есть "сканеры безопасности", которые не только сканируют порты, но и исследуют в автоматическом режиме целевой хост на наличие всех известных уязвимостей.

Итак, сетевые атаки. Банки и без моей помощи разберутся с хакерами, мне ближе проблемы простого пользователя. Об этом и поговорим.

Удаленный взлом компьютера становится не таким простым делом. Если интересно, кто и как занимался этим лет пять назад, вот ссылка на приговор горе-хакерам, в котором описана вся технология взлома (в начале и в конце документа). Во времена Windows 98 любой школьник мог проделать такие штуки. С Windows XP эти фокусы не проходят, а методы взлома Linux знают только профи, которые и у себя в банке неплохо зарабатывают. Для проникновения на чужой компьютер необходимо иметь теперь приличную квалификацию, а персонального внимания толкового злодея удостаиваются не все. Мой компьютер вряд ли кого-то заинтересует. Другое дело, что сканированием портов все же многие балуются. Уж не знаю, чего они там ищут, но раздражает сильно. Трафик то я оплачиваю! Замечу, что адрес, с которого осуществляется сканирование, зачастую принадлежит ничего не подозревающему добропорядочному пользователю. Скорее всего, у последнего поселился червь, выискивающий очередную жертву.

Если Ваш компьютер кого-то и заинтересовал, то это близкие Вам люди. Я имею в виду деловых партнеров, начальство и ревнивых супругов. В интернете можно найти массу шпионских программ, типа клавиатурных шпионов. Если на компьютере стоит такая программа, то все, что набрано на клавиатуре, включая пароли к электронной почте, записывается в специальный файл и может быть негласно отправлено по электронной почте "хозяину".

Даже если Вам нечего скрывать, трояны, живущие в компьютере, могут интенсивно загружать линию, увеличивая трафик и мешая прохождению полезной информации. Кроме того, неграмотно написанные программы часто отнимают у компьютера системные ресурсы, а то и нарушают целостность операционной системы. Как плачевный итог - переустановка и связанные с этим потеря времени и денег.

Теперь рассмотрим наиболее популярные способы заполучить на компьютер трояна (как этого избежать - в следующей главе).

Способ первый - заразить компьютер компактным вирусом, единственной функцией которого является закачка из интернета и инсталляция полноценного "троянского коня"

Способ второй - зайти "не на тот" сайт. А уж заставить открыть страницу, содержащую опасное содержимое - дело техники и психологии.

Способ третий - дать злоумышленнику посидеть за вашим компьютером. Известны также случаи, когда посетитель в организации просто незаметно вставлял специально приготовленную "флэшку" в USB-порт, дальше - понятно.

Еще одна неприятная реалия сетевой жизни - сниффинг . По простому - перехват трафика. Из предыдущей главы (руководствуясь здравым смыслом) ясно, что исходящие пакеты уходят в некотором смысле "в эфир". По крайней мере, в пределах одной подсети они доступны всем, а это - не так уж мало. Другое дело, что "порядочный" компьютер воспринимает только адресованную ему информацию. Если же злодей установил программу - сниффер (нюхач), то может читать передаваемые данные. Восстановить весь поток - невыполнимая задача, поскольку соединение с источником не устанавливается и запросить повторную отправку потерянных пакетов не удастся (это была бы наглость - подслушивать соседей за стенкой, да еще переспрашивать, когда не расслышали). Сниффинг используют для перехвата паролей, передающихся в открытом (незашифрованном) виде.

Сознавая уровень реальной опасности, можно разумно подойти к защите своего компьютера от различных напастей. Здесь поход простой: стоимость сейфа не должна превышать стоимость хранимых в нем ценностей. Многое Вы можете сделать сами, с этого и начнем.

1. Устанавливаем нормальную операционную систему. Исходить приходится из того, что большинству пользователей подходят ОС от Microsoft. В этом случае вариантов нет - Windows XP c SP2 (как минимум). SP2 - это второй пакет обновлений, закрывший многие дыры в безопасности. Сгодилась бы и Windows 2000, но ее перестали поддерживать, а уязвимости находят все новые и новые.

2. Настраиваем минимальную защиту: включаем брандмауэр (если установлен SP2, то включен по умолчанию) для всех соединений. Делается это так: Пуск>Панель управления>Сетевые подключения, откроется окно со значками настроенных подключений. Кликаем правой кнопкой мыши по значку подключения, выбираем пункт "свойства", жмем на вкладку "дополнительно", потом в зоне "брандмауэр Windows" нажимаем кнопку "параметры". Если установлено значение "выключить", меняем его на "включить" и подтверждаем кнопкой ОК.

3. Устанавливаем антивирусное программное обеспечение. Как бы ни ругали антивирус Касперского (притормаживает работу компьютера), разумной альтернативы я не вижу. Обновляем антивирусные базы через интернет до актуального состояния. Теперь можно покопаться в настройках (в разных версиях это выглядит по-разному, поэтому подробно описывать не буду). Имеет смысл отключить ежедневную полную проверку компьютера. Обычно я отключаю автоматическое обновление, поскольку большинство компьютеров не подключены к Интернет постоянно.

4. Находим в "Панели управления" раздел "администрирование", в нем "службы" и отключаем все ненужное. Первым делом - службу сообщений. Объясню, почему. Может быть вы сталкивались с ситуацией, когда во время работы в Интернет периодически всплывает сообщение, в котором вас пугают разными ошибками в системе и прочими вирусами, предлагая зайти на такой-то сайт, где вам помогут избавиться от проблем. На самом деле, посетив такой сайт, эти проблемы можно нажить. Служба сообщений предназначена прежде всего для работы в локальной сети, с ее помощью администратор сети может оповещать пользователей о чем либо. Злодеи же используют ее для заманивания на сайты-ловушки. Еще можно смело отключать "Telnet", "Удаленный реестр" и "Сервер", если ваш компьютер не планируется использовать в качестве сервера. Чем меньше служб запущено, тем быстрее работает компьютер. Там еще много чего можно отключить, но, действовать следует с осторожностью. Если не уверены, лучше пригласите специалиста.

5. Если Вы не сделали этого ранее, установите пароли для всех пользователей позаковыристей. Последнее означает, что хороший пароль должен быть длинным и состоять из цифр, букв в разных регистрах и специальных символов.

Когда я настраиваю клиентам компьютер, то обычно останавливаюсь на этом. Для большинства это вполне достаточный уровень защиты. Тем, кто всерьез озабочен безопасностью, следует предпринять еще ряд мер предосторожности.

6. Наделить всех пользователей только минимально необходимыми правами. Например, запретить всем, кроме "Администратора", устанавливать программы. Даже если Вы единственный пользователь, создайте вторую учетную запись с ограниченными правами, и входите в систему под именем Администратор только в случае необходимости. Дело в том, что некоторые уязвимости позволяют злодею исполнять на компьютере команды от имени текущего пользователя. А если у такового прав - минимум, то и использовать уязвимость не удастся.

7. Иногда при вводе пароля, например для доступа к своему почтовому ящику, система предлагает сохранить пароль. Я всегда отказываюсь, чего и Вам советую. Это - хорошая привычка.

8. Установите полноценный файервол. Встроенный брандмауэр Windows многие действия программ попросту не отслеживает.



Понравилась статья? Поделиться с друзьями: