Безопасность и Internet

         

Ранняя десинхронизация


Соединение десинхронизируется на стадии его установки.

  • Крэкер прослушивает сегмент сети, по которому будут проходить пакеты интересующей его сессии.
  • Дождавшись пакета S-SYN от сервера, крэкер высылает серверу пакет типа RST (сброс), конечно, с корректным sequence number, и, немедленно, вслед за ним фальшивый C-SYN-пакет от имени клиента.
  • Сервер сбрасывает первую сессию и открывает новую, на том же порту, но уже с новым sequence number, после чего посылает клиенту новый S-SYN-пакет.
  • Клиент игнорирует S-SYN-пакет, однако крэкер, прослушивающий линию, высылает серверу S-ACK-пакет от имени клиента.
  • Итак, клиент и сервер находятся в состоянии ESTABLISHED, однако сессия десинхронизирована.
  • Представим это в виде схемы:

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



    Содержание раздела