50 Оттенков Безопасности Drupal

  1. Модифицированная версия используется для хеширования паролей.

    phpass , от которого отказались на официальном сайте.

    Но они не торопятся менять механизм [#1845004] .

  2. Они даже не хотят предоставлять возможность выбора механизма хеширования.

    [#2939888] .

  3. Количество итераций для силы хеширования не обновлялось более 7 лет. [#1850638] , хотя предполагалось, что итерации будут увеличиваться как минимум каждые 2 года [#1203852] .

  4. При использовании PostgreSQL хэши паролей сравниваются без учета регистра.

    [#2475539] .

  5. Также у PostgreSQL есть проблемы с поддержкой SSL. [#850600] .

  6. Минимально приемлемая версия PostgreSQL — 9.2, которая долгое время не поддерживалась безопасностью.

    [#2846994] .

  7. Официальная сборка Drupal содержит устаревшие версии вендорных библиотек (из-за совместимости с PHP 5.5).

    Некоторые из них, например Zend, даже имеют известные уязвимости.

    [#2989631] .

  8. Сборка также содержит все тесты, тестовые модули, тестовые темы и вендорские библиотеки для тестирования, что увеличивает не только размер архива, но и область возможных дефектов.

    [#2338671] .

  9. Идея перемещения исполняемых файлов за пределы сайта также застопорилась.

    [#1672986] .

  10. Проверка обновлений реализована с помощью запросов GET по небезопасному протоколу HTTP. [#1538118] .

    Во время MITM-атаки можно подсунуть любые ссылки на архивы модулей (домен и хеш-суммы не проверяются).

    Также вы можете собирать информацию о составе сайта, списке разработчиков и их активности (запросы с локальных версий сайтов будут совпадать по IP с аккаунтами на d.org).

    Протокол HTTP позволяет разместить скрипт для сбора информации за пределами drupal.org.

  11. Пользователь с id=1 — самая вкусная цель для атаки, так как он всегда имеет все существующие на сайте права доступа (разрешения), а также имеет все попытки лишить его этих прав [#540008] .

  12. Такое поведение не совсем очевидно, так как визуально в админке этот пользователь ничем не отличается от других.

    Но даже попытка выделить эту особенность закончилась ничем.

    [#572240] .

  13. Любой администратор или другой пользователь с необходимыми правами может захватить контроль над этим божественным пользователем с id=1. [#39636] .

  14. Определенные права неявно дают контроль над всем сайтом, но и внешне они не выделяются.

    [#2846365] , [#594412] .

  15. Некоторые права, даже по их названию, могут ввести в заблуждение.

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

    [#1635646] .

  16. Наведение порядка в разрешениях давно является актуальной задачей, но ее просто игнорируют [#2628870] , [#2667018] .

  17. Администратор не может удалить файловый объект, загруженный другим пользователем, каким бы вредоносным он ни был.

    [#2949017] .

  18. Hook_file_download не использует соответствующий контроллер при проверке [#2148353] .

  19. Проверка не работает для файлов на стороне клиента [#2938441] .

  20. Слабые проверки загрузки произвольных файлов [#2543590] , не говоря уже о всяких RarJpeg склейках.

  21. Некоторые проверки файлов основаны только на правилах .

    htaccess. [#2829048] .

  22. В .

    htaccess есть множество других правил безопасности, которые неявно теряются при переключении на другую среду (особенно Nginx), но реализация аналогичных правил web.config застопорилась.

    [#154339] , [#2669870] .

  23. По умолчанию вы можете загружать изображения на любой сайт под управлением Drupal 8 с помощью простого POST-запроса, состоящего из названия регистрационной формы и поля с аватаркой пользователя.

    Примечательно, что в Drupal 7 отказались отображать такое поле по умолчанию.

    [#31056] , Но те дни прошли.

  24. При многократной загрузке файла с одним и тем же именем возникает проблема, связанная с реализацией алгоритма генерации уникальных имен файлов.

    [#2684403] .

  25. Фильтрация адресов изображений тоже неудобна.

    Таким образом, вы можете выйти из системы пользователей с изображением с помощью src='/user/logout'.

    [#144538] или провести DOS-атаку, разместив пару сотен фотографий с src='very/hard/page'.

  26. Еще один способ съедать ресурсы — загружать изображения размером 1000х1 в поля, которые обрабатываются с помощью эффекта «Масштабировать и обрезать».

    [#2931533] , [#872206] .

  27. Вы можете заполнить базу данных кешем мусора, просто выполнив поиск по URL-адресам.

    [#1245482] , хотя система кеширования даже без посторонней помощи прекрасно забирает все ресурсы для хранения результатов, которые можно было бы быстрее получить даже с нуля [#2888838] .

  28. Загружать сайт и наполнять логи сообщениями об ошибках можно с помощью специальных запросов к контекстным ссылкам.

    [#2864933] .

  29. Доступ к прикрепленным файлам и изображениям всегда доступен, независимо от доступа к содержимому.

    [#2904842] .

  30. Комментарии к контенту также останутся доступными, если доступ к контенту заблокирован.

    [#1781766] .

  31. Узнать, зарегистрированы ли вы для использования сайта, можно по сообщению о восстановлении пароля.

    [#1521996] .

  32. Форма сброса пароля не защищена от флуда [#1681832] .

  33. При создании и проверке паролей все пробельные символы («\t\n\r\0\x0B») вокруг них удаляются без предупреждения.

    [#1921576] .

    Это может быть сюрпризом для пользователя и небольшим облегчением для алгоритма перебора.

  34. Если у вас нет возможности получить хэш пароля для перебора, но есть сессия пользователя, то перебор пароля можно без ограничений через сам аккаунт, например, сменив почтовый ящик [#2339399] .

  35. Кстати, в случае чего пользователь даже не узнает, что его почтовый ящик был изменен, так как попытка реализовать эту возможность застопорилась уже несколько лет. [#85494] .

  36. Алгоритм генерации сессий тоже так себе [#2238561] .

  37. Файлы cookie передаются между сайтами, расположенными в подпапках.

    [#2515054] .

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

    [#2449335] .

  39. Доступ к редактированию шаблонов Twig позволяет получить неограниченный контроль над сайтом.

    [#2860607] .

  40. XSS-атака через атрибуты Twig постоянно игнорируется [#2567743] , [#2552837] , [#2544110] .

  41. Вы также можете внедрить XSS в информационные файлы.

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

    [#846430] .

  42. Заголовок безопасности X-XSS-Protection не используется.

    [#2868150] .

  43. XSS также можно передать через метод рендеринга класса PlainTextOutput, хотя имя класса предполагает обратное.

    [#2896735] .

  44. Также может удивить то, что некоторые методы проверяют и кэшируют права доступа текущего пользователя, а не переданного им.

    [#2628870] , [#2266809] .

  45. Из-за неправильных настроек кэша возможно сделать невозможным просмотр пользователем собственного профиля.

    [#2614230] .

    Подобный трюк можно проделать с определенными настройками и контентом.

    [#2982770] и со СМИ [#2889855] .

  46. Статистикой просмотров материала можно легко манипулировать с помощью обычного цикла for в консоли браузера, генерирующего тысячи просмотров в минуту, даже если у вас нет доступа к самому материалу.

    Можно наматывать даже несуществующие материалы [#2616330] .

  47. Проверка внешних URL-адресов хромает [#2691099] , [#2652236] .

  48. Полной защиты от этого не существует. Breakattack.com [#2234243] .

  49. Если настроить Политику безопасности контента, редактор контента отваливается [#2789139] .

  50. Это любительская подборка и ни на что не претендует. Может кто знает дырки похуже? Действует с 30.01.2019 по 15.10.2020 награда из ЕС с бюджетом 89 000,00 €.

    Можно попытаться что-то исправить.

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

Теги: #информационная безопасность #безопасность #drupal #проблемы
Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.