Определение закона изменения ISN сервера
Хост посылает на сервер SYN-пакет с запросом на соединение, записав в пакет свое (известное) значение ISN. Сервер, получив запрос на соединение, прибавляет к полученному ISN единицу и записывает полученное значение в поле ACK ответа (т.е. SYN|ACK-пакета), а в поле ISS ответа - свой собственный ISN, и передает пакет устанавливающему соединение хосту. На приемной стороне (т.е. на стороне хоста) пакет анализируется. Операция повторяется до тех пор, пока не будет выявлен закон изменения ISN сервера.
Возможны следующие закономерности:
- закон "постоянного приращения" (традиционный закон "+64" - старые версии UNIX): значение ISN сервера, записываемого в поле ISS ответа на запрос "установление соединения", увеличивается на постоянную величину (либо на 64) с каждым обрабатываемым запросом;
- закон "случайных приращений" (новые версии Solaris, IRIX, FreeBSD, DigitalUNIX, Cray): приращение ISN носит случайный характер;
- истинно случайные значения (Linux 2.0.x, OpenVMS, новые AIX): значение ISN является случайной величиной;
- закон "время-зависимых приращений" (Windows): значение ISN периодически во времени увеличивается на некоторую небольшую величину;
- постоянный (концентраторы 3Com [ISN=0x803], принтеры Apple LaserWriter [0xC7001]): значение ISN остается постоянным.