Сканирование файла через Интернет по его URL с помощью ClamAV

Иногда мне нужно сканировать файлы через Интернет с учетом их URL. Я не нашел никакой информации об этой емкости в документации ClamAV. Это позволяет это сделать? Как получить результат сканирования?

2
задан 22 December 2013 в 09:44

2 ответа

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

wget -O /tmp/filetoscan http://LINK_TO_THE_FILE && clamscan /tmp/filetoscan

или если вам не нужен файл после загрузки, вы можете передать его на clamscan:

 wget -qO- http://LINK_TO_THE_FILE | clamscan -

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

Если вы не хотите загружать затем вам нужно использовать облачный сервис, который загружает и сканирует его для вас, например, virustotal делает это и сканирует файл также с помощью ClamAV. Virustotal также имеет публичный API , который вы можете использовать для запуска сканирования со своего терминала или из любой написанной вами программы.

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

ssh YOUR_USER@`echo "example.com/file1" | awk -F "/" '{print $1}'` "clamscan /var/www`echo "example.com/file1" | awk -F ".com" '{print $2}'`"

Конечно, это зависит от корня вашего сервера (/var/www) и от того, есть ли на сервере другие настройки, которые следует учитывать при восстановлении пути к файлу из URL, но поскольку вы знаете, как настроен ваш сервер, вы можете сделать это.

0
ответ дан 22 December 2013 в 09:44
  • 1
    Загрузите .deb, использующий https://вместо http://. – Jost 15 June 2015 в 09:41

Вы можете использовать curl для этого:

curl http://example.com/file | clamscan -

По умолчанию curl не сохраняет файл на диске.

0
ответ дан 22 December 2013 в 09:44

Другие вопросы по тегам:

Похожие вопросы: