1

Я использую встроенные управления зависимостями Play Framework, чтобы загрузить библиотеку (HtmlUnit), чтобы сделать это, я добавить к Зависимости от файла build.sbt так:Как я могу защитить от внедрения кросс-сборки и других угроз управления зависимостями в Play Framework?

libraryDependencies += "net.sourceforge.htmlunit" % "htmlunit" % "2.20"

зависимости затем загружаются с помощью Apache Ivy (через sbt), когда я создаю проект.

Как узнать, что загруженная зависимость является тем, что она говорит, а также гарантировать, что она не содержит вредоносного кода?

ответ

0

Полностью же, как и для других систем:

1) Не используйте автоматическое здание. Вы можете загрузить все библиотеки, проверить их и поместить в папку «lib».

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

Смотрите этот документ для более подробного объяснения https://www.fortify.com/downloads2/public/fortify_attacking_the_build.pdf

Это довольно старый, но выглядит правильно.

+0

спасибо за ваш ответ, как проверить зависимость? HTMLUnit доступен в [source forge] (https://sourceforge.net/projects/htmlunit/files/htmlunit/), если я загружу его здесь и поместил в папку lib, как я могу обеспечить, чтобы файл, загруженный вручную, был подлинный? Кроме того, чтение таких вещей, похоже, сводит меня подальше от исходной кузницы: [Предупреждение: не загружайте программное обеспечение из SourceForge, если вы можете это сделать] (http://www.howtogeek.com/218764/warning-don%E2% 80% 99t-download-software-from-sourceforge-if-you-can-help-it /) – DominoSug

+0

Вкратце: вы никогда не можете быть уверены, до тех пор, пока тестовое сканирование не будет загружено самостоятельно (ваш отдел безопасности). Итак, если вы небольшой проект, например, 1-30 человек, то просто доверяйте maven или тому, что вы используете (например, миллионы), если вы большой проект, и вам нужна 100% -ная безопасность - вам нужно назначить нескольким людям возможность проверять каждую библиотеку которые вы используете на подозрительном коде и помещаете их в хранилище безопасных интрасети. Пожалуйста, прочитайте документ, который я связал. Он содержит широкий ответ на ваш вопрос. –