Установите антивирус на веб-сервере, это хорошая идея?

14

Я только что получил выделенный сервер с Windows 2008 Standard Edition и пытаюсь выполнить настройку, необходимую для запуска на нем моего веб-приложения.

Было интересно, стоит ли устанавливать антивирус на веб-сервере? В приложении пользователи не могут загружать какие-либо файлы, кроме изображений (и они проверяются на наличие изображений в коде приложения перед сохранением на сервере). Я рекомендую не устанавливать антивирус, чтобы не влиять на производительность или вызывать какие-либо проблемы с приложением. Буду ли я что-то упустить при этом?

Благодарность

Mee
источник
Вы говорите, что файлы проверяются на наличие изображений в коде приложения перед сохранением - для меня это будет означать, что загруженный файл находится в каком-то временном каталоге, прежде чем ваше приложение увидит его? В этом случае он уже находится на сервере, прежде чем вы сможете это проверить! Какой веб-сервер вы используете?
Стив Фолли
На самом деле изображения проверяются в памяти, они не сохраняются ни в какую временную папку. Они сохраняются на диск, только если они прошли проверку в приложении. Я использую IIS, это приложение ASP.NET
Мее
Кроме того, даже если вы сохраните файл во временной папке, но не запустите его, это не вызовет никаких проблем. Но опять же это не тот случай.
Ми

Ответы:

18

Хорошо работающий веб-сервер не должен иметь установленный коммерческий антивирусный (AV) пакет. Типы макровирусов Office и троянов массового рынка, для которых оптимизированы AV-пакеты, плохо соответствуют задачам веб-сервера.

Что вы должны сделать, это:

  1. Абсолютно помешан на проверке входных данных. Примеры: пользователи не могут загружать вредоносный контент на ваш сайт (вирус, инъекция SQL и т. Д.); что вы не подвержены атакам межсайтовых скриптов и т. д.
  2. Поддерживайте ваш сервер в курсе последних обновлений безопасности и настраивайте его в соответствии с рекомендациями. Посмотрите на такие вещи, как инструментарий безопасности Microsoft .
  3. Есть отдельный брандмауэр. Не очень помогает в отношении вторжений, но он добавляет еще один уровень защиты от неправильно настроенных сетевых служб и помогает с простыми атаками DOS. Это также очень помогает при блокировании возможностей удаленного управления и т. Д.
  4. Установите хост-систему обнаружения вторжений (H-IDS) на ваш сервер по аналогии с почтенным Tripwire .

Существует много путаницы в терминах, слова часто используются здесь по-разному. Чтобы было ясно, я имею в виду H-IDS:

  • сервис на компьютере
  • который постоянно проверяет все исполняемые файлы на компьютере
  • и выдает предупреждение всякий раз, когда исполняемый файл был добавлен или изменен (без авторизации).

На самом деле хороший H-IDS может сделать немного больше, например, контролировать права доступа к файлам, доступ к реестру и т. Д., Но все вышесказанное получает суть.

Хост-система обнаружения вторжений требует некоторой настройки, поскольку при неправильной настройке может выдавать множество ложных ошибок. Но как только он будет запущен и запущен, он поймает больше вторжений, чем пакеты AV. В частности, H-IDS должен обнаруживать единственный в своем роде хакерский бэкдор, который коммерческий AV-пакет, вероятно, не обнаружит.

H-IDS также снижает нагрузку на сервер, но это вторичное преимущество - главное преимущество - лучшая скорость обнаружения.

Теперь, если ресурсы ограничены; если выбор между коммерческим AV-пакетом и бездействием, то я бы установил AV . Но знайте, что это не идеально.

Джеспер М
источник
Благодарю. На самом деле я не чувствую побуждения к установке AV, но, впервые управляя веб-сервером, я беспокоился о том, что мне что-то не хватает. Думаю, мне было бы лучше без AV. Я просто постараюсь быть более осторожным с тем, что я запускаю на сервере.
Ми
1

По-разному. Если вы не выполняете какой-либо неизвестный код, он может оказаться ненужным.

Если у вас есть файл, зараженный вирусом, сам файл безвреден, пока он находится на жестком диске. Это становится вредным только после того, как вы выполните его. Вы контролируете все, что выполняется на сервере?

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

Если ваш сайт позволяет пользователям загружать все, что показано или доступно для загрузки другим пользователям, то вы можете либо установить на веб-сервере антивирусный сканер, либо установить в своей сети какой-либо «сервер вирусного сканирования», который сканирует каждый файл.

Третий вариант - установить Антивирус, но отключить проверку при доступе в пользу проверки по расписанию в непиковое время.

И полностью развернуть этот ответ на 180 °: обычно лучше быть в безопасности, чем сожалеть. Если вы работаете на веб-сервере, легко случайно щелкнуть по плохому файлу и разрушить его. Конечно, вы можете подключиться к нему тысячу раз, чтобы сделать что-то через RDP, не касаясь какого-либо файла, но в 1001 раз вы случайно запустите этот exe и пожалеете об этом, потому что вы даже не можете точно знать, что делает вирус (в настоящее время они загружают новые код из Интернета, а также) и вам придется выполнять некоторые интенсивные экспертизы по всей вашей сети.

Майкл Стум
источник
Большое спасибо, еще один отличный ответ, который подтверждает, что я могу обойтись без AV.
Ми
1

Если бы это было на основе Windows, что вы сказали, я бы. Я также попытался бы найти какую-либо форму обнаружения вторжения на хост (программа, которая отслеживает / проверяет файлы, которые меняются на сервере, и предупреждает вас об изменениях).

Тот факт, что вы не меняете файлы на сервере, не означает, что нет переполнения буфера или уязвимости, которая позволит кому-то другому изменять файлы на сервере удаленно.

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

Обратите внимание, что это также влияет на AV, поскольку: новое вредоносное ПО создано, вредоносное ПО распространено, образец отправляется в вашу AV-компанию, AV-компания анализирует, AV-компания выпускает новую подпись, вы обновляете подпись, вы, предположительно, «в безопасности», повторяете цикл. Еще есть окно, в котором оно распространяется автоматически до того, как вас «прививают».

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

Тогда возникает вопрос: доверяете ли вы контрольным суммам и журналам вторжений хоста и своим собственным навыкам, чтобы вы очистили все, включая руткиты и файлы альтернативного потока данных, которые могут быть там? Или вы делаете "лучшие практики" и стираете и восстанавливаете из резервной копии, так как журналы вторжений должны хотя бы сообщать вам, когда это произошло?

Любая система, подключенная к Интернету, на которой запущена служба, может быть потенциально использована. Если у вас есть система, подключенная к Интернету, но фактически не работающая с какими-либо службами, я бы сказал, что вы, скорее всего, в безопасности. Веб-серверы не подпадают под эту категорию :-)

Барт Сильверстрим
источник
0

Да всегда. Цитирую мой ответ от суперпользователя :

Если он подключен к каким-либо машинам, которые могут быть подключены к Интернету, то, безусловно, да.

Есть много доступных вариантов. Хотя лично мне не нравятся Макафи или Нортон, они там. Также есть AVG , F-Secure , ClamAV (хотя порт win32 больше не активен), и я уверен, что еще сотни :)

Microsoft даже работала над одним - я не знаю, доступен ли он еще вне бета-версии, но он существует.

ClamWin , упомянутый @ J Pablo .

кроличий садок
источник
2
Спасибо за ваш ответ, но ... это не какой-либо сервер Windows, это веб-сервер, поэтому производительность здесь крайне важна. Обратите внимание, что антивирусное программное обеспечение будет сканировать каждый файл, к которому осуществляется доступ, т.е. любой файл, запрошенный посетителем. Мне нужна веская причина для установки антивируса и риска возникновения проблем с производительностью, кроме просто рекомендаций по безопасности для компьютеров в целом.
Ми
он не будет сканировать каждый файл, к которому осуществляется доступ, если он настроен должным образом - и нет никаких причин для этого проверять файлы при доступе, когда они обслуживаются - только для атак и т. д.
warren
1
@ unknown-Производительность имеет первостепенное значение на веб-сервере? С уважением, я хотел бы предположить, что, если у вас слишком мало доступных служебных данных, что сжатие нескольких циклов ЦП для сканирования файлов может повлиять на работу конечного пользователя по сети, у вас может быть другая проблема с настройкой приложения вверх.
Барт Сильверстрим
@ Warren, я знаю, что вы можете исключить любые каталоги, которые вы хотите, из сканирования доступа, но в этом случае, какой смысл устанавливать AV в первую очередь? Я имею в виду, что если пользователи по-прежнему смогут загружать файлы без сканирования, то в этом случае нет смысла запускать AV на сервере.
Ми
2
@Bart, в отношении антивирусного программного обеспечения для сканирования файлов требуется больше, чем несколько циклов ЦП, они замедляют работу вашего персонального компьютера, который используется только вами, так что вы ожидаете от веб-сервера, к которому обращаются сотни или тысячи людей?
Ми