Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #86, ФЕВРАЛЬ 2006 г.

FAQ

Степан Ильин aka Step

Хакер, номер #086, стр. 086-138-2


Q: Мой интернет-провайдер строго запрещает использовать NAT-маршрутизацию для раздачи Интернета в локальной сети. Скажи, каким образом он может это отследить? И может ли, в принципе?

A: Вполне. Любой IP-пакет состоит из нескольких полей. Проходя через маршрутизатор, осуществляющий трансляцию адресов (NAT), часть из этих полей меняется, причем по вполне закономерным принципам. Поле TTL (от англ. - time to live — время жизни) определяет количество маршрутизаторов, которое может преодолеть IP-пакет при доставке от отправителя к получателю. При прохождении через маршрутизатор TTL уменьшается на единицу. Соответственно, на выходе из локальной сети пакеты компьютеров, находящихся за NAT’ом, будут иметь TTL на единицу меньшее, чем пакеты, принадлежащие системе, осуществляющей трансляцию адресов. Любому сетевому программисту не составит труда написать анализатор, определяющий использование NAT’а по этому признаку.

Еще один предатель — идентификатор IP-пакета. Каждый составленный пакет в системе имеет идентификатор, на единицу больший, чем у предыдущего. Если к Интернету подключен только один компьютер, то на выходе из Сети будет правильная последовательность идентификаторов (образно: 1, 2, 3, .., n). Если в Интернете работает не одна машина, то в исходящем трафике можно отследить сразу несколько независимых последовательностей (1,11,2,12,3,13 и т.д.). Попались!

Справедливости ради замечу, что утаить использование NAT’а вполне можно. О том, как это реализовать, рассказывает подробная статья на нашем сайте (www.xakep.ru/post/29448/default.asp).

Q: С помощью Cygwin’а можно компилировать любые никсовые программы, но все они для запуска требуют наличия библиотеки cygwin1.dll. А можно ли собрать прогу так, чтобы она не была привязана к этой DLL-ке?

A: В Cygwin’овском gcc есть такая опция, как -mno-cygwin. С этой опцией получающийся в результате EXE-файл не зависит от cygwin-библиотеки и требует только стандартные Microsoft’овские DLL.

Q: Хлопцы из Microsoft ограничили работу Windows XP как сервера терминалов только одним пользователем. Существует ли способ подключения сразу нескольких удаленных пользователей или единственным выходом является установка серверной версии Windows?

A: На самом деле заставить работать Windows XP как сервер терминалов вполне возможно: система вполне успешно будет принимать подключения от большого количества пользователей, практически так же, как и Windows 2000/2003 сервер. Для этого потребуется небольшой патч, который называется TSFree. На сайте http://free.pages.at/antiwpa/Other/TerminalserverNoRestrPatch-1-1 ты сможешь найти как сам патч, так и его исходники. Как только TSFree сделает свое дело, Windows начнет громко кричать о том, что системные файлы были изменены и их в срочном порядке необходимо вернуть к прежнему виду. Не соглашайся! Патч вносит поправки в winlogon.exe, termsrv.dll и mstscax.dll, чтобы удалить ограничения винды.

Назад на стр. 086-138-1  Содержание  Вперед на стр. 086-138-3