Защита веб-приложения - PullRequest
       7

Защита веб-приложения

4 голосов
/ 16 апреля 2010

Какие шаги можно предпринять, чтобы обеспечить безопасность веб-приложения, использующего Hibernate, Spring и JSF? Какие уязвимости могут существовать и какие рамки безопасности, если таковые имеются, являются стандартными?

Ответы [ 3 ]

3 голосов
/ 16 апреля 2010

Безопасность не решается только с помощью фреймворка.Чтобы избежать ошибок, требуется много образования, понимания, креативности и оценки риска.

Начните с прочтения этих URL-адресов

И определенно будьте в курсе самых распространенных видов уязвимостей и т. Д. Введение в безопасность, включая статью «без серебряной пули». *В 1016 *

2 голосов
/ 17 апреля 2010

Я бы согласился с другими ответами в том, что не существует серебряной пули для безопасности или простой инфраструктуры, которую вы просто подключаете и тада, у вас включена защита. Посетите сайт OWASP , который является отличным ресурсом для изучения вопросов безопасности.

И полное понимание безопасности самостоятельно (а не делегирование безопасности фреймворкам) в конечном итоге сделает ваше приложение более безопасным. Например, JSF по умолчанию предотвращает большинство (если не все?) Атак типа XSS, но вы можете переопределить эту функцию, возможно, не осознавая последствий для безопасности, и вдруг ваш код JSF будет открыт.

Поскольку никто не упомянул об этом, может помочь статический анализ кода. Проверьте такие вещи, как Findbugs, PMD и checkstyle среди других для базового и бесплатного анализа кода. Или перейдите на что-то более тяжелое, например Fortify , которое специально разработано для обнаружения уязвимостей в вашем приложении.

2 голосов
/ 16 апреля 2010

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

  • Это много, чтобы переварить, но руководство по разработке OWASP охватывает веб-сайт охрана сверху вниз
  • Знать о внедрении SQL и о том, как его предотвратить
  • Никогда не доверяйте пользовательскому вводу (куки считаются также и пользовательским вводом!)
  • Шифруйте пароли Hash и Salt, а не храните их в виде простого текста.
  • Не пытайтесь придумать собственную причудливую систему аутентификации: она такая легко получить - неправильно в тонком и непроверенные способы, и вы бы не даже не знаю, пока вы взломан.
  • Знать правила обработки кредитных карт. Смотрите также этот вопрос:
  • Платежные системы - Что мне нужно знать, если я хочу принимать кредитные карты на моем сайте?
  • Используйте SSL / HTTPS для входа в систему и любых страниц, где вводятся конфиденциальные данные (например, данные кредитной карты)
  • Как противостоять угону сессии
  • Избегать межсайтовых скриптов (XSS)
  • Избегать подделки межсайтовых запросов (XSRF)
  • Поддерживайте ваши системы в актуальном состоянии с последними исправлениями
  • Убедитесь, что информация о соединении с вашей базой данных защищена.
  • Держите себя в курсе новейших методов атаки и уязвимости, влияющие на ваш платформы.
  • Прочтите Руководство по безопасности браузера Google
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...