dru-io / promo

Промо-материалы, исходники логотипов, постеров, заглушек и т.п. по тематике Drupal

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Расширение промо, раздел о безопасности

adubovskoy opened this issue · comments

Вводная

В России несколько удивительная ситуация (мы про Битрикс преимущественно). В том плане, что проприетарные CMS, которые далеки от концепта "приятный читаемый и безопасный код", вкладываясь в маркетинг могут у широкой аудитории создавать мнение "Друпал и другие CMS использовать нельзя, они небезопасны, а Битрикс можно ". К сожалению эта позиция стала уже, видимо, "маркетинговой политикой партии", т.к. битрикс-продавцы замечены с этим аргументом в разных городах в разное время. Что иногда вызывает проблемы с продажей Drupal'а.

Что хотим

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

Кому это нужно

Всем кто продает Drupal. Собственно запрос на эту страницу поступил от Анатолия Полицина, одного из спонсоров самой промо-страницы (еще раз спасибо! https://drupal.dru.io/thanks ). Ну и всех донатеров на странице благодарностей обязательно разместим.

http://yasobe.ru/na/drupalpromo - страница для сбора.

Я не готов сейчас выступать спонсором, но очень интересную ссылку подкину: Неприкасаемый Oracle https://habrahabr.ru/company/dsec/blog/264581/ - просто красной нитью про западню проприетарных продуктов.

И из кеша гугла удаленный блог-пост одного из разработчиков Битрикса Долганина Антона "О качестве приложений партнеров" - если что, есть скриншот со всеми комментариями.

И вот еще пример: "Почему «электронные дневники» до сих пор ненадежны в образовании?".
Один из выводов: "На примере электронного журнала(dnevnik.mos.ru) стало видно, что некомпетентность лишь одного человека может повлечь за собою крах, в данном случае, всей системы оценивания."
Ну а мы знаем, что в открытом коде есть больше шансов найти ошибку.

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

[In reply to Alexander Dubovskoy]
Хорошая идея! Думаю, что нужно акцентироваться на:

  1. Чем больше сообщество разработчиков, тем больше вероятность нахождения уязвимостей. Open Source сообщество, в частности Drupal на порядки больше любого проприетарного;
  2. Наличие опубликованных требований к качеству кода (Coding standards) и "бюрократических препонов" при размещении контрибного модуля (о том, как всё строго на орге для новичков);
  3. Группа безопасности (security team). Авторитетная и внушительная часть всей экосистемы сообщества;
  4. GPL v2 не порождает таких проблем, как у проприетарных систем с платными лицензями - выкинули сырое решение в маркетплейс и не реагируют на замечания партнеров, зная, что они сами "в доле" и пропатчат самостоятельно.
  5. И напоследок, по поводу - а почему битриксоиды так говорят - проехаться по другому: они берут деньги и за код, и за услуги, и на партнерские себе, естественно. А на оставшиеся развлекают (агрессивный маркетинг) клиентов за их же собственные клиентские деньги. Пусть адекватные заказчики (не госы естественно, которые расчитывают на откаты) знают, на что идут их деньги, и в чем порочность этой системы.
    Чувствуют проприетарщики, что свободные решения и качественнее, и безопаснее, и легче в совместной разработке - вот и используют устоявшийся стереотип, что дескать открытый код и опенсоурс - это что-то типа анархии и раздолья для злоумышленников. Надо эти попытки пресекать на корню. Не те времена сейчас. Международные корпорации (ibm, hp, apple, microsoft, etc) не случайно вкладываются в свободное ПО и открывают код некоторых своих закрытых решений. Не хватает у них собственных ресурсов. Не успевают.

[In reply to Alex Malkov]
Друпал коммьюнити, на самом деле больше даже вп, у нас первое место

для клиента нужно разжевать почему большое комьюнити Друпала - это хорошо лично для его проекта. Не все клиенты даже слово комьюнити понимают.
Нужно писать что большое сообщество это:

  • столько-то закрываемых дыр ежедневно
  • столько-то бесплатных модулей ежемесячно (которые сделают разработку/поддержку быстрее/дешевле)
  • средняя реакция на проблему столько-то секунд
    в цифрах и рублях. Они это понимают.

средняя реакция на проблему столько-то секунд
ну вот - доклад у Саши как раз на эту тему самое то!
https://t.me/drupal_rus/33286
http://prezi.com/cizyaodvawe5/?utm_campaign=share&utm_medium=copy&rc=ex0share

возможно стоит даже разжевать модель монетизации опенсорсных проектов. Чтобы клиенты поняли что это будущее и как это работает и почему это хорошо. Потому что многие простые бизнесмены не понимают 1. Как что-то бесплатное может быть хорошим, 2. Как что-то хорошее может быть бесплатным. И соответвсеннго видят в этом моменте какой-то на*бон.

[In reply to Вадим Бардачев]
Вот стыреная статья из издания Chip http://open-life.org/blog/opensource/694.html про монетизацию.

Вот по битриксу относительно свежая дырень https://habrahabr.ru/post/307734/

Ещё про импортозамещение:

  1. крутиться на Операционке Линукс - 66.6% серверов мира https://w3techs.com/technologies/overview/operating_s..
  2. В качестве веб сервера использвоать Apache - 48.3%, Nginx - 35.7% (84% суммарно) https://w3techs.com/technologies/overview/web_server/..
  3. Для языка программирования будет использоватья PHP 82.9%
  4. В качестве базы данных будет использоваться MySQL+Postgre ~80% - по ней статистики нет, но имея 80+% связок Apache/Nginx+PHP не сложно сделать вывод, что базы данных MySQL+Postgre суммарно занимают аналогичный процент
  5. На сайте будут использоваться jQuery, ckEditor, Lightbox и ещё много js-библиотек

На эту архитектуру опирается Drupal и Битрикс и Joomla и Wordpress и т.д.
В какой момент "16 строчек написанных программистами из Битрикса на php" становятся более безопасным и более российскими?

Сравнение Битрикс и Drupal.docx

По ссылке наша таблица сравнения Битрикса с Drupal, которую мы используем при обсуждениях с госзаказчиками. Она кое-где подшаманена в сторону Друпала, но всё же на 95% правдива и объективна.

Страница с описанием технических преимуществ Drupal для B2B проектов:
https://docs.google.com/document/d/1FIlroCPs52Oh1UzHrEJtVSnzUMOUbq_gKVv331MBcDc/edit#heading=h.ourrtnou107i

Про безопасность там такое замечание:
Во многих других популярных CMS принято запускать обновления по кнопке в админке, т.е. веб-сервер имеет права на запись в файловую систему ядра. Это не является безопасным. Drupal работает и обновляется без прав на запись в ядро Drupal со стороны веб-сервера.

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

Поэтому меняем концепт - это будет не просто лендинг, а лендинг с элементами лонгрида, последовательное повествование, рассказанная история.

Предлагаю вам покритиковать узловые элементы, смыслы и порядок изложения:

Безопасность Drupal

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

В компьютерной безопасности термин «уязвимость» (англ. vulnerability) используется для обозначения недостатка в системе, используя который можно намеренно нарушить её целостность и вызвать неправильную работу.

Используя уязвимости злоумышленник может:
• просто испортить программное обеспечение (сайт не работает)
• Получить доступ к информации, которую видеть не должен.
• Заставить программу (сайт, сервис) делать то, что она делать не должна - рассылать спам, воровать пароли, добывать криптовалюту

Безопасность - это отсутствие уязвимостей?

НЕТ!

Не существует сложных программ без уязвимостей. Операционные системы, офисные программы, игры – везде находятся уязвимости. Даже ПО, помогающее людям летать в космос, подвержено уязвимостям. Мы про них не знаем, потому что у такого ПО мало пользователей)

Безопасность – это минимальная вероятность наличия уязвимостей, которые злоумышленник может использовать здесь и сейчас.

Простыми словами – вероятность наличия уязвимости высокая – программа не безопасна. Вероятность низкая – программа безопасна.

Если уязвимость точно есть, она описана, но не закрыта и её можно использовать прямо сейчас – программа, платформа, сайт, сервис 100% не безопасен!

В Drupal актуальной версии вероятность наличия уязвимости, которую можно использовать здесь и сейчас, стремится к нулю, соответственно, уровень безопасности близок к 100% по следующим причинам:

  1. Процесс закрытия найденных уязвимостей – Security Team
    Обратите внимание – публикация информации о найденной уязвимости происходит ПОСЛЕ того, как уязвимость закрыта. Это значит только одно, когда вы слышите, что в Drupal 100500 уязвимостей, вы знаете, что этими уязвимостями нельзя воспользоваться =)
  2. Процесс предотвращения появления новых уязвимостей с участием человека – стандарты кодирования, аудит кода ядра, модерация публикуемых модулей (что еще)
  3. Процесс предотвращения появления новых уязвимостей без участия человека (покрытие тестами)
  4. Наличие готовых решений для предотвращения нецелевого использования (Капчи, пароли, двухфакторная аутентификация… списком)

Drupal это Open Source – улучшает ли это безопасность?

Да! Есть отдельный вид уязвимостей, так называемые «закладки». Эти уязвимости намеренно вносятся разработчиками, чтобы сами разработчики или специально обученные люди могли незаметно получать доступ к программному обеспечению. Drupal – по с открытым исходным кодом, а это значит что любой разработчик может не только найти подобную «закладку», ни и определить её автора и дату появления. Этот подход делает создание подобных уязвимостей практически не реализуемым.

Это теория, а что на практике?

Битрикс - в данный момент существует несколько описанных в профессиональных изданиях уязвимостей (ссылки), которые разработчики по неизвестным причинам не могут закрыть.
Вывод - Битрикс 100% не безопасен прямо сейчас!

WordPress - с момента публикации о "закладке" в модуле, который используется на сотнях тысяч сайтов до момента исправления прошло 100500 дней. (пруфы, ссылки)
Вывод - WordPress был 100% не безопасен 100500 дней

Drupal
Описание Drupalgeddon
Вывод - Drupal был 100% не безопасен 7 минут )

Экономическая безопасность – соответствие требованиям законодательства.

Стоимость безопасности

В отличие от других разработчиков ПО, которые привыкли зарабатывать на собственных ошибках (лицензии, подписки) в Drupal вы получаете обновления безопасности абсолютно бесплатно.

Как убедиться, что мой Drupal безопасен?

Проверьте версию вашего проекта на Drupal. Если она 8.4.4 или 7.56, и модули не требуют обновлений, то всё в порядке, ваша информационная безопасность близка к 100%.

Если нет, то просто обновите свой Drupal (CTA)

Это значит только одно, когда вы слышите, что в Drupal 100500 уязвимостей, вы знаете, что этими уязвимостями нельзя воспользоваться =)

Это значит только одно: когда вы слышите что в Drupal обнаружено 100500 уязвимостей, это означает что все эти уязвимости уже исправлены. Сообщения об уязвимостях - это показатель качества работы группы безопасности. Другие системы, которые имеют меньше сообщений о нахождении уязвимостей, имеют гораздо большую статистику по взломам (если разработчики не нашли уязвимость у себя сами и не исправили -- их найдут злоумышленники).

Новости на securitylab.ru по CMS-кам за год

  1. неизвестные сканируют интернет на типовые учетки друпал-вордпресс-джумла
  2. новость не про друпал, а просто на странице есть ссылка на статью 2014 года

  • битрикс не проверить, т.к. там на каждой странице внизу 'Работает на CMS "1С-Битрикс: Управление сайтом"' =)

Для истории про «некритическую» уязвимость в "Joomla!"
https://threatpost.ru/joomla-patches-sql-injection/24508/

И ещё инфа от Виктора, про Метасплоит.
Коротко:

  • друпал 5 эксплоитов, самый поздний июнь 2016
  • вордпресс 57 эксплоитов, самый поздний май 2017

Подробно:


msf > search name:drupal
Matching Modules
================

   Name                                           Disclosure Date  Rank       Description
   ——                                           —-------------  ——       —---------
   auxiliary/gather/drupal_openid_xxe             2012-10-17       normal     Drupal OpenID External Entity Injection
   auxiliary/scanner/http/drupal_views_user_enum  2010-07-02       normal     Drupal Views Module Users Enumeration
   exploit/multi/http/drupal_drupageddon          2014-10-15       excellent  Drupal HTTP Parameter Key/Value SQL Injection
   exploit/unix/webapp/drupal_coder_exec          2016-07-13       excellent  Drupal CODER Module Remote Command Execution
   exploit/unix/webapp/drupal_restws_exec         2016-07-13       excellent  Drupal RESTWS Module Remote PHP Code Execution

msf > search name:wordpress
Matching Modules
================

   Name                                                           Disclosure Date  Rank       Description
   ——                                                           —-------------  ——       —---------
   auxiliary/admin/http/wp_custom_contact_forms                   2014-08-07       normal     WordPress custom-contact-forms Plugin SQL Upload
   auxiliary/admin/http/wp_easycart_privilege_escalation          2015-02-25       normal     WordPress WP EasyCart Plugin Privilege Escalation
   auxiliary/admin/http/wp_symposium_sql_injection                2015-08-18       normal     WordPress Symposium Plugin SQL Injection
   auxiliary/admin/http/wp_wplms_privilege_escalation             2015-02-09       normal     WordPress WPLMS Theme Privilege Escalation
   auxiliary/dos/http/wordpress_directory_traversal_dos                            normal     WordPress Traversal Directory DoS
   auxiliary/dos/http/wordpress_long_password_dos                 2014-11-20       normal     WordPress Long Password DoS
   auxiliary/dos/http/wordpress_xmlrpc_dos                        2014-08-06       normal     Wordpress XMLRPC DoS
   auxiliary/gather/wp_all_in_one_migration_export                2015-03-19       normal     WordPress All-in-One Migration Export
   auxiliary/gather/wp_ultimate_csv_importer_user_extract         2015-02-02       normal     WordPress Ultimate CSV Importer User Table Extract
   auxiliary/gather/wp_w3_total_cache_hash_extract                                 normal     WordPress W3-Total-Cache Plugin 0.9.2.4 (or before) Username and Hash Extract
   auxiliary/scanner/http/wordpress_content_injection             2017-02-01       normal     WordPress REST API Content Injection
   auxiliary/scanner/http/wordpress_cp_calendar_sqli              2015-03-03       normal     WordPress CP Multi-View Calendar Unauthenticated SQL Injection Scanner
   auxiliary/scanner/http/wordpress_ghost_scanner                                  normal     WordPress XMLRPC GHOST Vulnerability Scanner
   auxiliary/scanner/http/wordpress_login_enum                                     normal     WordPress Brute Force and User Enumeration Utility
   auxiliary/scanner/http/wordpress_multicall_creds                                normal     Wordpress XML-RPC system.multicall Credential Collector
   auxiliary/scanner/http/wordpress_pingback_access                                normal     Wordpress Pingback Locator
   auxiliary/scanner/http/wordpress_scanner                                        normal     Wordpress Scanner
   auxiliary/scanner/http/wordpress_xmlrpc_login                                   normal     Wordpress XML-RPC Username/Password Login Scanner
   auxiliary/scanner/http/wp_contus_video_gallery_sqli            2015-02-24       normal     WordPress Contus Video Gallery Unauthenticated SQL Injection Scanner
   auxiliary/scanner/http/wp_dukapress_file_read                                   normal     WordPress DukaPress Plugin File Read Vulnerability
   auxiliary/scanner/http/wp_gimedia_library_file_read                             normal     WordPress GI-Media Library Plugin Directory Traversal Vulnerability
   auxiliary/scanner/http/wp_mobile_pack_info_disclosure                           normal     WordPress Mobile Pack Information Disclosure Vulnerability
   auxiliary/scanner/http/wp_mobileedition_file_read                               normal     WordPress Mobile Edition File Read Vulnerability
   auxiliary/scanner/http/wp_nextgen_galley_file_read                              normal     WordPress NextGEN Gallery Directory Read Vulnerability
   auxiliary/scanner/http/wp_simple_backup_file_read                               normal     WordPress Simple Backup File Read Vulnerability
   auxiliary/scanner/http/wp_subscribe_comments_file_read                          normal     WordPress Subscribe Comments File Read Vulnerability
   exploit/multi/http/wp_ninja_forms_unauthenticated_file_upload  2016-05-04       excellent  WordPress Ninja Forms Unauthenticated File Upload
   exploit/unix/webapp/wp_admin_shell_upload                      2015-02-21       excellent  WordPress Admin Shell Upload
   exploit/unix/webapp/wp_advanced_custom_fields_exec             2012-11-14       excellent  WordPress Plugin Advanced Custom Fields Remote File Inclusion
   exploit/unix/webapp/wp_ajax_load_more_file_upload              2015-10-10       excellent  Wordpress Ajax Load More PHP Upload Vulnerability
   exploit/unix/webapp/wp_asset_manager_upload_exec               2012-05-26       excellent  WordPress Asset-Manager PHP File Upload Vulnerability
   exploit/unix/webapp/wp_creativecontactform_file_upload         2014-10-22       excellent  Wordpress Creative Contact Form Upload Vulnerability
   exploit/unix/webapp/wp_downloadmanager_upload                  2014-12-03       excellent  Wordpress Download Manager (download-manager) Unauthenticated File Upload
   exploit/unix/webapp/wp_easycart_unrestricted_file_upload       2015-01-08       excellent  WordPress WP EasyCart Unrestricted File Upload
   exploit/unix/webapp/wp_foxypress_upload                        2012-06-05       excellent  WordPress Plugin Foxypress uploadify.php Arbitrary Code Execution
   exploit/unix/webapp/wp_frontend_editor_file_upload             2012-07-04       excellent  Wordpress Front-end Editor File Upload
   exploit/unix/webapp/wp_google_document_embedder_exec           2013-01-03       normal     WordPress Plugin Google Document Embedder Arbitrary File Disclosure
   exploit/unix/webapp/wp_holding_pattern_file_upload             2015-02-11       excellent  WordPress Holding Pattern Theme Arbitrary File Upload
   exploit/unix/webapp/wp_inboundio_marketing_file_upload         2015-03-24       excellent  Wordpress InBoundio Marketing PHP Upload Vulnerability
   exploit/unix/webapp/wp_infusionsoft_upload                     2014-09-25       excellent  Wordpress InfusionSoft Upload Vulnerability
   exploit/unix/webapp/wp_lastpost_exec                           2005-08-09       excellent  WordPress cache_lastpostdate Arbitrary Code Execution
   exploit/unix/webapp/wp_mobile_detector_upload_execute          2016-05-31       excellent  WordPress WP Mobile Detector 3.5 Shell Upload
   exploit/unix/webapp/wp_nmediawebsite_file_upload               2015-04-12       excellent  Wordpress N-Media Website Contact Form Upload Vulnerability
   exploit/unix/webapp/wp_optimizepress_upload                    2013-11-29       excellent  WordPress OptimizePress Theme File Upload Vulnerability
   exploit/unix/webapp/wp_photo_gallery_unrestricted_file_upload  2014-11-11       excellent  WordPress Photo Gallery Unrestricted File Upload
   exploit/unix/webapp/wp_phpmailer_host_header                   2017-05-03       average    WordPress PHPMailer Host Header Command Injection
   exploit/unix/webapp/wp_pixabay_images_upload                   2015-01-19       excellent  WordPress Pixabay Images PHP Code Upload
   exploit/unix/webapp/wp_platform_exec                           2015-01-21       excellent  WordPress Platform Theme File Upload Vulnerability
   exploit/unix/webapp/wp_property_upload_exec                    2012-03-26       excellent  WordPress WP-Property PHP File Upload Vulnerability
   exploit/unix/webapp/wp_reflexgallery_file_upload               2012-12-30       excellent  Wordpress Reflex Gallery Upload Vulnerability
   exploit/unix/webapp/wp_revslider_upload_execute                2014-11-26       excellent  WordPress RevSlider File Upload and Execute Vulnerability
   exploit/unix/webapp/wp_slideshowgallery_upload                 2014-08-28       excellent  Wordpress SlideShow Gallery Authenticated File Upload
   exploit/unix/webapp/wp_symposium_shell_upload                  2014-12-11       excellent  WordPress WP Symposium 14.11 Shell Upload
   exploit/unix/webapp/wp_total_cache_exec                        2013-04-17       excellent  WordPress W3 Total Cache PHP Code Execution
   exploit/unix/webapp/wp_worktheflow_upload                      2015-03-14       excellent  Wordpress Work The Flow Upload Vulnerability
   exploit/unix/webapp/wp_wpshop_ecommerce_file_upload            2015-03-09       excellent  WordPress WPshop eCommerce Arbitrary File Upload Vulnerability
   exploit/unix/webapp/wp_wptouch_file_upload                     2014-07-14       excellent  WordPress WPTouch Authenticated File Upload
   exploit/unix/webapp/wp_wysija_newsletters_upload               2014-07-01       excellent  Wordpress MailPoet Newsletters (wysija-newsletters) Unauthenticated File Upload