Иллюстрированный самоучитель по защите в Интернет

"Потайные ходы"

В следующем примере с помощью утилиты sclist был получен список работающих на удаленном узле служб.

C:\nt\ew> sclist \\172.29.11.191
---------------
– Service list for \\172.29.11.191
---------------
running Alerter Alerter
running Browser Computer Browser
stopped ClipSrv ClipBook Server
running DHCP DHCP Client
running EventLog EventLog
running LanraanServer Server
running LanmanWorkstation Workstation
running LicenseService License Logging Service
stopped Schedule Schedule
running Spooler Spooler
stopped TapiSrv Telephony Service
topped UPS UPS

В системе UNIX для аналогичных целей можно использовать команду ps. В каждой версии UNIX имеются свои особенности использования этой команды. В Linux она выглядит как ps – aux, а в Solaris – ps – ef. Эти команды могут и должны быть применены при создании сценариев, служащих для получения отчета об изменениях в списке активных процессов. В число других замечательных инструментов системы UNIX, позволяющих получить соответствие между службами и запущенными процессами, входят программы Isof, которую можно применять в большинстве версий, и sockstat для FreeBSD. Вот пример результатов работы этих утилит.

[crush] lsof – i
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
syslogd 111 root 4u IPv4 Oxc5818fOO OtO UDP *:syslog
dhcpd 183 root 7u IPv4 Oxc5818e40 OtO UDP *:bootps
dhcpd 183 root lOu IPv4 Oxc5bc2fOO OtO ICMP *:*
sshd 195 root 3u IPv4 Oxc58d9d80 OtO TCP *:ssh (LISTEN)
sshd 1062 root 4u IPv4 OxcSSdaSCO OtO TCP crush:ssh-
>192. 168.1.101:2420 (ESTABLISHED)
Xaccel 1165 root 3u IPv4 Oxc58dad80 OtO TCP *:6000 (LISTEN)
gnome-ses 1166 root 3u IPv4 Oxc58dab60 OtO TCP *:1043 (LISTEN)
panel 1201 root 5u IPv4 Oxc58da940 OtO TCP *:1046 (LISTEN)
gnome-nam 1213 root 4u IPv4 Oxc58da2eO OtO TCP *:1048 (LISTEN)
genj.itil_ 1220 root 4u IPv4 Oxc58dbd80 OtO TCP *:1051(LISTEN)
sshd " 1245 root 4u IPv4 Oxc58da720 OtOTCP crush:ssh-
>192.163.I.101:2642 (ESTABLISHED)
[crush] <strong>sockstat</strong>
USER COMMAND PID FD PROTO LOCAL ADDRESS FOREIGN ADDRESS
root sshd 1245 4 tcp4 10.1.1.1.22 192.168.1.101.2642
root genjjtil 1220 4 tcp4 *.1051 *.*
root gnome-na 1213 4 tcp4 *.1048 *.*
root panel 1201 5 tcp4 *.1046 *.*
root gnome-se 1166 3 tcp4 *.1043 *.*
root Xaccel 1165 3 tcp4 *.6000 *.*
root sshd 1062 4 tcp4 10.1.1.1.22 192.168.1.101.2420
root sshd 195 3 tcp4 *.22 *.*
root dhcpd 183 7 udp4 *.67 *.+
root syslogd 111 4 udp4 *.514 *.*

Конечно же, поскольку большинство из рассмотренных выше программ может быть переименовано, без инвентаризации системы и приложений как при их начальной установке, так и при последующих обновлениях, "потайной ход" будет трудно обнаружить (нам кажется, что об этом говорилось уже достаточно).

Отслеживание изменений файловой системы

Для перегруженных работой администраторов сама мысль о регулярном обновлении полного списка файлов и каталогов может показаться безумной, поскольку это требует намного больших затрат, чем все предыдущие рекомендации. В то же время, если состояние системы изменяется не очень часто, такой учет является самым надежным методом выявления следов злоумышленников.

В системе Novell для отслеживания изменений в размерах файлов, времени последнего обращения и других атрибутов можно воспользоваться командой ndir. В системе UNIX можно написать сценарий, содержащий команду Is – la, который будет записывать имя каждого файла и его размер. В Windows при использовании команды dir выводится время последнего изменения, время последнего обращения к файлу, а также ею размер. Для ведения каталога файлов без изменения времени доступа к ним можно порекомендовать утилиты a find, hfind и sfind компании NTObjectives. Помимо прочих достоинств, эти программы позволяют идентифицировать скрытые файлы, а также выявлять потоки данных внутри файлов. Для аудита файлов в системах NT/2000 можно использовать также встроенные возможности файловой системы NTFS. Просто щелкните правой кнопкой мыши на нужном файле или каталоге, выберите команду Security, щелкните на кнопке Auditing, и установите требуемые параметры для каждого пользователя или группы.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.