Мы устанавливаем поставленное поставщиком приложение ASP.net на IIS 7.5, предоставляя нашим сотрудникам доступ к конфиденциальной информации о клиентах для удаленного доступа. Мне интересно, нужно ли использовать VPN для его защиты. Использование VPN было бы значительно более неудобным для персонала и предоставило бы подключенным клиентам больший доступ к остальной части сети, чем мне хотелось бы.
Без VPN приложение будет защищено HTTPS с использованием TLS. Единственная часть программного обеспечения, которая должна быть доступна в Интернете в целом, - это страница входа. Приложение может быть настроено на использование полностью встроенного метода аутентификации или аутентификации Active Directory через NTLM (возможно, предпочтительно).
Я немного обеспокоен безопасностью приложения. Разработчик не проводил никаких сторонних тестов на проникновение, и из моего расследования выяснилось, что пароли для встроенной аутентификации хранятся с обратимым шифрованием, а не хешируются.
Как вы думаете, какую дополнительную безопасность может предложить использование VPN по сравнению с использованием HTTPS и аутентификации приложения? Могу ли я задать разработчику какие-либо вопросы или способы протестировать приложение на наличие уязвимостей?
Безопасность VPN по сравнению с обычным старым TLS - Аналогичный вопрос, который был полезен, но не касался оценки поставляемого приложения.
То, что вы называете соображениями безопасности, действительно не имеет отношения к обсуждению IPSec VPN и SSL.
Если поставщик использует плохие методы для защиты своих приложений, он, вероятно, экономит и на других областях.
Если вы сказали, что беспокоитесь о том, что у вашего клиента перехватят его сеанс SSL, это может быть аргументом в пользу IPSec vpn.
И «VPN», и «HTTPS» не имеют внутренней безопасности. Вы должны указать минимальные меры безопасности, предпринимаемые каждым из них для защиты соединения. Конфигурация любого из них - важная информация, которая вам понадобится, чтобы определить, что подходит для вашей ситуации.
Итак, выясните, какие минимальные меры безопасности вам требуются, например, шифрование AES-128, целостность SHA-1 и какая-то проверка подлинности (NTLM слаб; я бы предложил HTTP-DIGEST или Kerberos, если вы можете это качнуть).
Затем сравните это требование с минимальным уровнем безопасности, допустимым для каждого типа подключения. HTTPS будет более удобным, поэтому, если его минимумы соответствуют или превышают ваши требования, его следует использовать. Если ни VPN, ни HTTPS не соответствуют вашим требованиям, пора пересмотреть свои требования или продукт поставщика.
Я бы сказал, что если нельзя доказать и продемонстрировать, что приложение на 100% защищено от поставщика без необходимости в дополнительном уровне, тогда используйте VPN.
Вы понесете накладные расходы на VPN, в зависимости от используемого уровня шифрования, но это обеспечит вам душевное спокойствие.
В основном, чтобы ответить на исходный вопрос. Веб-приложению можно доверять, когда оно доказано.