Проверка на вирусы в процессе сборки - PullRequest
1 голос
/ 30 ноября 2009

Я хотел бы включить сканирование на наличие вирусов в процесс сборки Java / Maven / Hudson. К сожалению, я не смог найти никаких ресурсов по выделенным инструментам для этого вида сборки. Моя среда сборки основана на Linux.

Мой вопрос: Как включить антивирусное сканирование в процесс сборки на основе Maven и Hudson?

Каковы лучшие практики?

  • Если шаг сканирования не связан с обычной сборкой, например, шаг перед сборкой или даже отдельное задание на сборку?
  • Должно ли сканирование выполняться на более поздней стадии упаковки, после того, как все артефакты были упакованы в файлы jar или в начале процесса?
  • Должен ли каждый выпущенный артефакт содержать файл журнала сканера, который определяет используемый антивирусный инструмент, версию и дату файлов описания вирусов?

Какое антивирусное программное обеспечение использовать, выходит за рамки этого вопроса. (Например, я хотел бы использовать коммерческого поставщика в пользу бесплатных инструментов, таких как ClamAV)

Ответы [ 4 ]

1 голос
/ 30 ноября 2009

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

Рекомендуется запускать антивирусный сканер на уровне ОС на платформе сборки.

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

Я никогда не слышал о вирусах, которые "заражают" исходный код, файлы .class или файлы JAR. Я предполагаю, что они возможны, но есть хороший шанс, что коммерческий AV-продукт не заметит их, потому что они необычны. Конечно, AV-продукт не поможет, если вирус специально нацелен на вас / вашу компанию.

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

1 голос
/ 30 ноября 2009

Откуда может появиться вирус?

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

Таким образом, вирус может спрятаться в одном из инструментов сборки и попытаться изменить JAR. Здесь имеется в виду инструмент tripwire : он создаст контрольные суммы для всех файлов, и инструменты сборки должны не измениться (если вы не установите новую версию; тогда вам придется снова запустить tripwire ).

Если инструменты сборки безопасны, вам просто нужен AV-инструмент, который защищает ОС (поэтому безопасны такие функции, как открытие и запись файлов). Для этого используйте стандартный AV вашей компании.

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

0 голосов
/ 01 декабря 2009

Как можно включить антивирусное сканирование в процесс сборки на основе Maven и Hudson?

Если это действительно проблема, я думаю, что ваша команда безопасности должна заставить вас (и maven) пройти через прокси-сервер с антивирусом. Это был бы правильный способ делать вещи.

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

0 голосов
/ 30 ноября 2009

Вам нужна антивирусная программа со скриптом *1001*.

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

Я считаю, что McAfee имеет версию для Linux, которая может быть именно тем, что вам нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...