• Рассмотрим эпизод из карьеры знаменитого хакера Кевина Митника, который пытался получить несанкционированный доступ к машине своего давнего оппонента Цутому Симомуры. Для этого он хакнул машинку в лабораторной сети и постарался представиться логин-сервером, с которого был доверенный логин на искомый терминал.
• Проблема в том, что если спуфить подключение, представляясь чужой машиной, нужно как-то вывести настоящую машину из обращения, чтобы она не смогла ничего сказать. Для этого Митник использовал генерацию большого количества SYN-пакетов со взломанной машинки, отправил их с указанием чужого валидного, но не используемого спуфленного IP-адреса из этой локалки.
•
Server.login честно принял все пакеты в очередь полуоткрытых соединений, забил очередь до потолка и отослал все SYN-ACK несуществующей машине. Так что, когда Митник успешно спуфил соединение, представляясь логин-сервером, тот не мог ничего сказать терминалу, который слал SYN-ACK пакет, так как логин-сервер был уже плотно занят. В итоге Митник установил TCP-соединение, получил shell, посадил туда бэкдор, закрыл соединение и отправил reset на логин-сервер. Вся атака, если верить логам, длилась 16 секунд.• Атака Митника - это правильный пример SYN Flood - одного из самых старых, по крайней мере, описанных в летописной истории, вариантов DoS-атаки. Тогда это была ещё не распределённая атака, а Denial of Service с одной машины. Но после этого появился подробный разбор этой ситуации с логами и прочим в mailing-листах: сначала вышла книжка Cимомуры, потом - Митника. Таким образом, люди, которые интересуются интернетом и технологиями, узнали, что так, оказывается, было можно.
Продолжение: ⬇️