Одна из причин небезопасности веб-сайтов заключается в том, что сделать их безопасными очень сложно.

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

Сейчас у меня есть CSP, но трудно сказать, не было ли что-то упущено.

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

Я потратил часы, пытаясь установить этот флаг в значение true. Я попытался установить HttpOnly в web.xml и в context.xml. Это не сработало.

Я установил плагин cookie для Grails. В документации сказано, что этот плагин поддерживает настройку файлов cookie. Есть флаг конфигурации HttpOnly. Это не сработало.

Плагин cookie также поддерживает получение файлов cookie и установку флага HttpOnly из Java/Groovy. Это тоже не сработало.

Хотя подключаемый модуль EatThisCookie не показывает установленный флаг HttpOnly, подключаемый модуль cookie отображает cookie и параметры cookie в файле журнала (не очень хорошая функция, если ваш файл журнала скомпрометирован). Это показывает, что HttpOnly установлен.

Однако… document.cookie по-прежнему возвращает зашифрованное значение cookie. Когда я пытаюсь использовать значение cookie из document.cookie или подключаемого модуля EatThisCookie для создания сеанса из браузера в режиме инкогнито, это не работает. Так кто знает…

Безопасность важна, и я смог улучшить безопасность под землей. Но добавление функций в nderground тоже важно.

Я работал над поддержкой фотогалереи для nderground, когда меня отвлекла эта охота на снайперов.

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

Итог: обеспечение безопасности может быть трудным и трудоемким.