Хочется уделить немного внимания тому, что в некоторых случаях вредоносных почтовых рассылок в теле письма содержатся ссылки на загрузку стартовых модулей программ-шифровальщиков. По ссылке, которую получает пользователь, по его собственной инициативе (сколько волка не корми..) может быть скачан первичный загрузчик вируса, который с точки зрения антивирусного ПО сам по себе может быть "белым и пушистым". По некоторой информации, такого рода загрузчики в некоторых случаях ведут себя довольно примитивно и нагло, оперируя загрузкой файлов с расширениями *.vlt. *.bat *.cmd. После загрузки такие файлы, как например *.vlt, могут быть переименованы самим загрузчиком в другие исполняемые типы файлов для дальнейших пакостных манипуляций.
Чтобы усложнить жизнь такого рода примитивным загрузчикам, воспользуемся возможностью блокировки загрузки перечисленных типов файлов с помощью прокси-сервера Squid 3.3.
Создаём дополнительный конфигурационный файл для хранения списка регулярных выражений, в который будем заносить все нежелательные элементы URL, такие как, например, ссылки содержащие имена файлов с предопределёнными расширениями:
sudo touch /etc/squid3/conf_param_urlregex_blocked.txt
Наполняем файл регулярными выражениями (по одному в каждой отдельной строке):
# # Url path regex for *.cmd, *.bat, *.vlt (case-insensitive) # \.cmd$ \.bat$ \.vlt$ #
В основной конфигурационный файл /etc/squid3/squid.conf вносим две правки. В раздел “ACCESS CONTROLS” добавляем запись о новом списке контроля доступа (ACL), например так (ключ –i используем для обработки ситуаций с возможным изменением регистра символов):
# ACCESS CONTROLS # ----------------------------------------------------------------------------- # acl BlockedURLRegex urlpath_regex -i "/etc/squid3/conf_param_urlregex_blocked.txt" #
и затем далее в правила доступа (в самое начало) добавляем запись типа:
# Deny access to bad URLs http_access deny BlockedURLRegex
После того как мы закончили с редактированием конфигурационного файла, можем применить новую конфигурацию Squid:
sudo squid3 -k reconfigure
По такому же принципу можно блокировать и загрузку других расширений файлов (например если есть необходимость блокировки загрузки медиа-контента), просто дополняя соответствующий конфигурационный файл.
При всём при этом, не стоит забывать о том, что без дополнительной настройки Squid не инспектирует шифрованный трафик https и проделанных действий для обработки такого трафика будет недостаточно. Таким образом, данное решение в чистом виде можно считать полумерой, однако, как мне думается, в вопросах безопасности всегда лучше предпринимать хотя бы полумеры, чем не делать вообще ничего.
Вместо .cmd$ стоит использовать .cmd(?.*)?$ с целью блокировки urlov вида https://blog.it-kb.ru/virus.cmd?download А то кто его знает что там за пыхыпа будет обрабатывать запрос и как там оно всё внутри сервера устроенно
Как дополнительная мера, я сделал белый список сайтов, с которых можно скачивать.
Если нужно сотруднику, я пробиваю сайт, если сайт нормальный - добавляю в список.
Например сайт, ФНС, ФССП, банков, госучреждений ...
Кстати именно ограничения на загрузку файлов помогло предотвратить загрузку вирусов, были письма ссылками на архивы, исполняемые файлы и т.д.
Как основную меру гарантированного снижения нагрузки на канал мы использовали delay pool - это эффективнее, чем блочить конкретику. Тем более, простора для экспериментов там море - персональные ограничения или групповые. Юзер всегда найдет чего качать, но если он качает это с определенной скоростью - то ничего страшного, но. вот если он начинает это гнать на скорости канала - проблемы гарантированы.
Никто не спорит, что пулы это хорошо. Задача была несколько иная - полностью заблокировать некоторые расширения файлов. Она абсолютно бесхитростно решена и об этом оставлена шпаргалка для себя и коллег.
Давным-давно (лет 15 назад) мы боролись с расширениями, но потом поняли бесперспективность. Пулы реально спасают - просто для примера, когда в аварийном режиме пробовали пустить всех без прокси - от загрузки повалились Cisco ASA и на бордере (граничном роутере) загрузка поднялась до 80%. Мое предложение - таки, резать им канал, а не файло. В отличии от файла - результат гарантирован.
Для Squid-3 и 4 достаточно просто прицепить C-ICAP с clamd и сканировать файло на лету без всяких расширений - 21 век как-никак. Нафига как отец Вындоуз от расширений-то зависеть?
Ну и Squid-3.3 в 16м году уже античный. 3.5.13 последний в этой ветви, а уж то, что вышел 4.0.4 я и вовсе скорбно промолчу :)
Ну и - все уже украдено до нас:
http://wiki.squid-cache.org/ConfigExamples/ContentAdaptation/C-ICAP