Gymterview
middle

Какие основные атаки на сеть существуют и как от них защищаться?

Основные сетевые атаки — это типовые способы перехвата, подмены или нарушения работы сетевого трафика, для которых существуют известные методы защиты.

1. MITM (Man-in-the-Middle) — атака «человек посередине»

Злоумышленник встраивается между двумя сторонами коммуникации, перехватывая и/или модифицируя трафик.

Защита:

  • TLS/HTTPS для всех соединений
  • Certificate Pinning (привязка к конкретному сертификату)
  • HSTS — браузер запоминает, что сайт должен открываться только по HTTPS
  • Проверка сертификатов (не игнорировать ошибки в коде!)
Пример
// НЕПРАВИЛЬНО — отключение проверки сертификатов
TrustManager[] trustAllCerts = new TrustManager[]{
    new X509TrustManager() {
        public void checkClientTrusted(...) {} // ОПАСНО!
        public void checkServerTrusted(...) {} // ОПАСНО!
    }
};

// ПРАВИЛЬНО — использование корректного TrustStore
SSLContext sslContext = SSLContextBuilder.create()
    .loadTrustMaterial(trustStore, null)
    .build();

2. ARP Spoofing — подмена ARP-таблицы

Злоумышленник отправляет ложные ARP-ответы, связывая свой MAC-адрес с IP-адресом шлюза.

Защита:

  • Статические ARP-записи для критичных устройств
  • Dynamic ARP Inspection (DAI) на коммутаторах
  • Сегментация сети (VLAN)

3. DNS Spoofing — подмена DNS-ответов

Злоумышленник подменяет DNS-ответы, направляя пользователя на поддельный сервер.

Защита:

  • DNSSEC — криптографическая подпись DNS-записей
  • DNS over HTTPS (DoH) / DNS over TLS (DoT)
  • Использование проверенных DNS-серверов

4. SYN Flood

Злоумышленник отправляет TCP SYN-пакеты с поддельными IP-адресами, исчерпывая ресурсы сервера на полуоткрытые соединения.

Защита:

Пример
# SYN cookies
sysctl -w net.ipv4.tcp_syncookies=1

# Лимит SYN-пакетов через iptables
iptables -A INPUT -p tcp --syn -m limit --limit 1/s --limit-burst 3 -j ACCEPT
iptables -A INPUT -p tcp --syn -j DROP

5. TCP Session Hijacking — захват сессии

Злоумышленник перехватывает существующую TCP-сессию, зная sequence numbers.

Защита:

  • Шифрование трафика (TLS)
  • Рандомизация начальных sequence numbers (современные ОС делают это по умолчанию)

Общие рекомендации

  1. Шифруйте всё — TLS для всех соединений, включая внутренние
  2. Сегментируйте сеть — VLAN, подсети, файрволы между сегментами
  3. Мониторьте — IDS/IPS (Snort, Suricata), SIEM-системы
  4. Обновляйте — патчи безопасности, актуальные версии протоколов
  5. Принцип минимальных привилегий — открывайте только необходимые порты

На собеседовании: интервьюер ожидает знание хотя бы MITM, SYN Flood и DNS Spoofing с методами защиты. Частая ошибка — описать атаку, но не предложить конкретный метод защиты.