A10. Insufficient Logging&Monitoring. OWASP TOP 10

Недостаточность мониторинга системы является основой почти всех крупных взломов. Злоумышленники используют отсутствие контроля и своевременного реагирования для достижения своих коварных целей. Одна из стратегий определения уровня протоколирования заключается в проверке жерналов после тестирования на проникновение. Записей в журналах должно быть достаточно, чтобы оценить, какой урон мог быть нанесен системе. Существуют коммерческие и открытые среды защиты приложений, такие как OWASP AppSensor , брандмауэры веб-приложений (ModSecurity с базовым набором правил OWASP ModSecurity), и программное обеспечение для корреляции журналов с настраиваемыми панелями мониторинга и оповещениями.

Является ли приложение уязвимым?

Систему можно считать уязвимой, если:

  • Пользовательские события, такие как входы в систему, неудачные входы в систему и операции, не регистрируются.
  • Предупреждения и ошибки не генерируют никаких сообщений в журнале.
  • Журналы приложений и API не отслеживаются на предмет подозрительной активности.
  • Журналы хранятся только локально.
  • Соответствующие пороги оповещения и процессы эскалации реагирования отсутствуют или не эффективны.
  • Тестирование на проникновение и сканирование с помощью инструментов DAST (таких как OWASP ZAP ) не вызывают оповещения.
  • Приложение не логгирует или оповещает об активных атаках в реальном времени.
  • Система уязвима к утечке информации, если делаете запись событий и оповещение о событиях видимыми для пользователя или злоумышленника (см. A3)

Как предотвратить

  • Убедитесь, что все ошибки входа в систему, контроля доступа и проверки входных данных на стороне сервера могут регистрироваться с достаточным для выявления подозрительных или злонамеренных действий контекстом и храниться в течение достаточного времени для проведения отложенного судебного анализа.
  • Убедитесь, что журналы создаются в формате, который можно легко использовать для решений централизованного управления журналами.
  • Убедитесь, что важные операции имеют контрольный журнал с элементами управления целостностью, чтобы предотвратить подделку или удаление, например БД только для чтения.
  • Установить эффективный мониторинг и оповещение таким образом, чтобы подозрительные действия обнаруживались и своевременно реагировались.
  • Разработать или принять план реагирования на инциденты, например NIST 800-61 rev 2 или более поздний.

Примеры атак

Сценарий № 1 : Программное обеспечение проекта с открытым исходным кодом, разработанное небольшой группой разработчиков, было взломано с использованием уязвимости в его программном обеспечении. Злоумышленникам удалось уничтожить внутренний репозиторий исходного кода, содержащий следующую версию, и все содержимое форума. Хотя источник может быть восстановлен, отсутствие мониторинга, регистрации или оповещения привело к худшему. В результате этой атаки проект не активен.

Сценарий № 2. Злоумышленник использует сканирование пользователей, использующих общий пароль, а система не производит логирование перебора.

Сценарий № 3 : у крупного американского ритейлера была внутренняя песочница для анализа вредоносных программ, анализирующая вложения. Программное обеспечение «песочницы» обнаружило потенциально нежелательное программное обеспечение, но никто не среагировал на находку. Песочница в течение некоторого времени выдавала предупреждения, прежде чем было обнаружено нарушение из-за мошеннических операций с картами со стороны внешнего банка.

Полезные ссылки

  • https://www.owasp.org/index.php/OWASPProactiveControls#8:ImplementLoggingandIntrusion_Detection
  • https://www.owasp.org/index.php/Category:OWASPApplicationSecurityVerificationStandard_Project#tab.3DHome
  • https://www.owasp.org/index.php/LoggingCheatSheet
Оцените статью
( Пока оценок нет )