Показать сообщение отдельно

  #11  
Старый 10.04.2004, 23:15
Algol
Регистрация: 29.05.2002
Сообщений: 1,793
Провел на форуме:
2050916

Репутация: 0


По умолчанию

</span><table border="0" align="center" width="95%" cellpadding="3" cellspacing="1"><tr><td>Цитата (wizard @ апреля 10 2004,19:11)</td></tr><tr><td id="QUOTE">2) ответа твоего я действительно не понял[/QUOTE]<span id='postcolor'>
Попробую растолковать ответ Rabbit-а &nbsp;

Он хочет сказать что TCP-спуффинг в современных операционных системах невозможен.

Попробую объяснить &quot;на пальцах&quot;:

Для установления TCP-соединения требуется как минимум ТРИ пакета:
Первый - от клиента к серверу - запрос на коннект.
Второй - от сервера к клиенту - согласие на коннект.
Третий - опять от клиента к серверу - подтверждение открытия соединения.

А теперь оценим сложность этого дела:
Подделка первого пакета не трудна - для этого просто нужно сформировать пакет необходимого формата, с любым обратным IP адресом.
Перехват ответного пакета сервера - задача трудная, и практически невыполнимая, поскольку ответ сервера будет приходить &nbsp;не на наш хост, а на тот, чей обратный адрес мы указали &nbsp;
Из-за того, что обратный пакет мы перехватить не можем, мы должны подделать третий пакет, не зная содержимого ответного пакета сервера. А в этом ответном пакете как раз содержится специальный ключ, по которому сервер будет идентифицировать наши пакеты.
Этот ключ мы должны отослать обратно серверу. Поскольку мы его не знаем, то мы должны попробовать сгенерировать его по такому же алгоритму, по какому его генерирует операционная система сервера. Но вот тут и возникает загвоздка, потому как алгоритмы генерации ключей в современных ОС слишком сложны, и сами ключи практически непредсказуемы....