Какие основные атаки на сеть существуют и как от них защищаться?
Основные сетевые атаки — это типовые способы перехвата, подмены или нарушения работы сетевого трафика, для которых существуют известные методы защиты.
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 (современные ОС делают это по умолчанию)
Общие рекомендации
- Шифруйте всё — TLS для всех соединений, включая внутренние
- Сегментируйте сеть — VLAN, подсети, файрволы между сегментами
- Мониторьте — IDS/IPS (Snort, Suricata), SIEM-системы
- Обновляйте — патчи безопасности, актуальные версии протоколов
- Принцип минимальных привилегий — открывайте только необходимые порты
На собеседовании: интервьюер ожидает знание хотя бы MITM, SYN Flood и DNS Spoofing с методами защиты. Частая ошибка — описать атаку, но не предложить конкретный метод защиты.