Стек TCP/IP под углом безопасности
Урок-карта: где на каждом уровне стека ломается безопасность и чем это закрывают.
Стек TCP/IP — четыре уровня, через которые проходит каждый пакет; на каждом уровне свои угрозы и свои меры защиты.
Зачем смотреть на стек как защитник
Когда вы знаете, на каком уровне работает угроза, вы знаете и где её ловить. ARP-спуфинг не остановить шифрованием TLS — он ниже. А перехват пароля в открытом HTTP не остановить firewall — он выше. Карта уровней превращает хаос угроз в систему.
Карта уровней
| Уровень | Пример протокола | Типичная угроза | Защита |
| Канальный (Link) | Ethernet, ARP | ARP-спуфинг, MAC-флуд | DAI, port security, шифрование выше |
| Сетевой (Internet) | IP, ICMP | IP-спуфинг, разведка | фильтрация, anti-spoofing |
| Транспортный (Transport) | TCP, UDP | сканирование портов, SYN-флуд | stateful firewall, лимиты |
| Прикладной (Application) | HTTP, DNS | перехват, DNS-спуфинг | TLS, DNSSEC/DoH |
Где что ломается
Канальный уровень
Внутри одного сегмента хосты доверяют ARP-ответам без проверки. Это доверие и эксплуатируют. Защита здесь — на коммутаторе (динамическая инспекция ARP) и шифрование на уровнях выше.
Сетевой и транспортный
IP-адрес отправителя можно подделать, а TCP-порты — перебрать, чтобы понять, какие сервисы запущены. Stateful firewall помнит состояние соединений и отбрасывает пакеты, не относящиеся к легитимной сессии.
Прикладной
Здесь живут данные. Если они идут открытым текстом (HTTP, обычный DNS), их читает любой на пути. Поэтому транзитное шифрование (TLS) и защищённый DNS — обязательны.
Как работает под капотом
Каждый уровень добавляет свой заголовок (инкапсуляция). Нарушитель на канальном уровне видит всё, что выше, если оно не зашифровано. Поэтому TLS — это «конверт» на прикладном уровне: даже перехватив пакеты ниже, злоумышленник видит только шифртекст.
[ Ethernet | IP | TCP | TLS( HTTP-данные ) ] видно видно видно зашифровано
Частые ошибки
- Считать TLS универсальной защитой: он не спасает от атак канального уровня против самого факта соединения и метаданных.
- Защищать только периметр и забывать про внутренний канальный уровень.
- Оставлять служебные протоколы (telnet, обычный FTP) в открытом виде.
Итоги
- У каждого уровня стека — свой класс угроз и своя защита.
- Шифрование на прикладном уровне закрывает данные, но не метаданные ниже.
- Зная уровень угрозы, вы знаете, где её ловить.