
Комментарии 83
Проблем безопасности у самого WordPress или нет, или их молниеносно закрывают обновлением.
А так то да, прямых багов безопасности у него нет. После стольких то версий. Только косвенные — архитектура по типу ведро с дырками.
Никто ничего не ломал и не заливал.
Вот что ключевое в Вашем посте. Если хотите проверить, закажите аудит безопасности.
И мы не используем WP в коммерческой разработке, что и остальным советую. Если требуется free-CMS для бюджетных организаций (госучреждения), то предпочитаю MODx — но стараемся не брать таких клиентов. Для всего остального есть фреймворк.
Мы говорили о Ваших проектах на WP и что их никто не ломал — значит Вы не можете быть уверены в их безопасности. Многие меня поддержат, что это дырявое ведро. Не зря Drupal переписал кода на Symfony2.
Заключение одного хорошего человека в 2015 году: «WordPress — довольно крупный и сложный продукт, со своими плюсами и минусами. К сожалению, в дефолтной конфигурации его безопасность находится под большим вопросом, так как даже обычный скрипткидис при наличии прямых рук и интернетов сможет пробить защиту.»
И Ваш запрос: `select * from t1 where id=$_GET['id']` — работать не будет ;) Сможете сказать почему?
p.s. запрос к примеру приведён.
вот только во втором варианте sql injection нету
подобный случай там тоже нет, по вашей логике?
Разумеется, использование такого подхода должно быть целесообразным, а также клиент должен понимать примерную стоимость 1 часа работы разработчика на этом фреймворке, чтобы планировать бюджет на поддержку сайта.
Вот года 1.5-2 назад запустили простенький сайт на Wordpress, наполнили его информацией и забыли про него. Иногда приходили сообщения о том, что Wordpress сам обновился. Потом сообщения перестали приходить, а потом хостер стал жаловаться на спам с этого сайта. Проверил — и правда, вирусы. На соседних сайтах вирусов не было и быть не может, в хостере тоже уверен. Каким образом избежать такого?
В результате сайт клиента простаивает, а разработчик получает проблем в самый неожиданный момент.
Как я понимаю, популярность системы несет с собой не только большое компьюнити, но и тщательный анализ кода со стороны взломщиков? А значит и множество информации об уязвимых точках приложения? И в таком случае надо что-то предпринимать для дополнительной защиты сайта, либо использовать другие решения.
Спасет ли регулярное обновление ядра? Или нужно что-то еще, если настройкой сервера занимается хостер?
Вирусы вычистил, и проблему решил кардинально — запретом записи везде кроме контента. Да, плагины, темы, ядро уже так просто не обновить, но зато сильно меньше вероятность быть сломанным.
Обязательно возможность executeться оставлять только корневому index.php. — Правда, могут глючить некоторые плагины из админки.
Если правильно настроить, то в периодических обновлениях исчезает необходимость (кроме случаев того или иного апгрейда сайта).
Кроме того сама архитектура WP никак не защищает сайт от уязвимостей в используемых плагинах и темах оформления(!).
Для какого то решения этой проблемы существуют автоматизированные плагины которые регулярно по крону сканируют сайт на предмет изменений в файлах (например популярный плагин Wordfence) и сообщают об изменениях письмом на почту, а также в какой то степени позволяют автоматически лечить (например загрузив исходный файл взамен зараженного из репозитория плагина/темы/ядра, если таковые имеются).
Ну и в какой то мере они закрывают другие векторы атак (блокируют по ip автовзломщиков, пытающихся подобрать пароль, меняют адрес для авторизации админа и т.д.).
Понятное дело что письма с отчетами должен кто то читать, а ликвидация последствий взлома никак не влияет на вероятность его повторения (уязвимость то не закрыта).
Ну и такой скан нагружает сайт (используются ресурсы хостинга).
Так что вопрос остается открытым.
Не холивара ради, но считаю это главным недостатком данного CMS.
> PostgreSQL
Вообще, это какой-то сильно частный случай. Я думаю, не сильно ошибусь, если допущу, что 95% владельцев сайтов с MySQL никогда в жизни не столкнутся с проблемами из-за недостатков СУБД, а у остальных 5% практически во всех случаях она решится восстановлением из бекапа.
1. Это как всегда безопасность. WP — каким хорошим он бы не был в Ваших глазах, в моих — это дыра.
2. Привязка к MySQL.
3. Мало дыр в самом движке, так ещё дыры в шаблонах (мое мнение — php-шаблоны себя изжили, twig,smarty — в помощь).
Хуже WP, наверное, только Joomla и самопись велосипеда школьника. Как для Вашего личного блога — пожалуйста, используйте. Для корпоративного сайта компании — нет, нет и ещё раз нет. Каким бы сладким дизайн не был — один прокол в безопасности, один косяк в шаблоне или коде, расширении — не стираемое пятно на Вашей репутации, пускай Вы только его собирали и ничего не писали.
Если и брал бы CMS-free для разработки какого-то мелкого-среднего проекта — то, наверное, бы взял MODx. А для всего остального — фреймворк (Symfony, Yii, Silex).
Где-то уже видел компании использующие WP в коммерческой разработке — уже, вроде, загнулись.
Но когда у разработчика кривые руки — тут ничего не спасет, разве что статика на HTML.
А если говорить про репутационные риски — то при самописной системе и «свалить» вину не на кого. В отличии от.
Приведу пример-ситуация, возможно выжатый их пальца:
«Я директор психологического центра (очень модно сейчас), заказываю корпоративный сайт у конторы: главный критерий в сайте это возможность принимать оплату за мои авторские тренинги и допускать к „вебинар-комнате“ (организована через youtube, допустим) и материалам тренинга, только оплативших и принимать от них домашние задание(их авторский труд). Казалось бы банальный проект, можно решить с помощью WP. Только в случае просчета в безопасности и утечки авторского труда(коммерческой информации и переписки) — я могу потерять круглую сумму, как и мои клиенты, и Вы, как исполнитель, не сможете свалить всю вину на разработчиков компонентов и авторов WP(любой другой компонент) — так как это опенсорс и они не несут ответственности, что в случае нарушения работы CMS и его компонентов, я не потеряю информацию(мой авторский труд) или клиентов. К тому же Вы как исполнитель, несете ответственность и даете гарантии за работу этих самых компонентов. И при наличии договора и грамотной проверки утечки данных — Вы понесете ответственность и не какое сваливание вины на других, тут не пройдет. А это уже репутационные риски»
Вот такая штука бизнес. Я как заказчик, должен рассчитывать на компетентность исполнителя. И когда я консультирую людей и при фразе: «Мне тут предложили сделать корпоративный сайт на WordPress или Joomla — за недорого», меня аж в пот бросает. Благо, если это просто сайт визитка — тут кстати, даже CMS не надо.
Подведу итог своего мнения про «blogCMS»: «WordPress — довольно крупный и сложный продукт, со своими плюсами и минусами. К сожалению, в дефолтной конфигурации его безопасность находится под большим вопросом, так как даже обычный скрипткидис при наличии прямых рук и интернетов сможет пробить защиту. WordPress, Joomla и другие подобные CMS — создавались для людей не сильно понимающих в программировании, чтобы они могли спокойно развернуть свой блог, новостной сайт, „портал“ и скажем разместить пару модулей из коробки. И не надо CMS для блога и новостного сайта полноценно использовать в коммерческой разработке — не для этого они сделаны были».
Потому что в «Бизнес Молодости» их учат, что «тяп-дяп и в продакшен» это самый правильный путь. И это касается не только сайтов, но и самой тренинговой программы или инфо материалов, которые они продают.
Различного рода утечки их тоже мало беспокоят — эти люди готовы обмениваться конфедициальными данными вКонтактике в чате на 10-20 человек. Все же свои — че тут…
А если разработчик берет на себя такие ответственности за утечку — это полное свидетельство отсутствия у него ума и опыта. Потому что какую-бы сверхнадежную защиту вы не сделали — всегда найдется клиент, который поменяет пароль на «qazwsxedc» — потому что ему так проще. Или же хостер некорректно настроит права и до вашего сайта доберется какой-нибудь бэкдор с соседнего аккаунта.
И как по мне — проще поддерживать сайт на Wordpress или другой известной и популярной CMS. Так как большинство вопросов уже имеют ответы. А вот как попадется CMS венгерского разработчика, которого год назад сбила машина — то тут только дебагер. Потому что в проекте три практически одинаковых класса отвечающих за отправку почты. Одни настройки почты лежат в конфиг файле, а еще одна копия настроек в базе данных. И они разные. А почта с сайта не уходит. И попробуй тут разберись.
Сейчас работаем с одной такой. Всё ужасно, но понятно и разбираемо.
Проект был заброшен 5 лет назад, говнокод на уровне ВП, только нонейм, а значит дыряв и крив как первые версии ВП, только еще не дописанные. Но читабельно. Первые правки клиенту сделали с попутным небольшим рефакторингом. Дальше продали клиенту «смену дизайна», заменив на фронтэнде всё что осталось от старой ЦМС на свой код. От старого проекта осталась только админка. Подперли костылями вход, чуть подчистили — работает как новенькая.
На следующем этапе вместе с SEO сделаем очередную бесплатную миграцию и будет у них всё по феншую.
Но я это к чему — код там жуткий, но читабельный, структура древняя но понятная. Можно работать.
А бывает такое, что даже переписать о живому невозможно, не то что поддерживать с плавной миграцией — только писать рядом новое и миграцию базы. С базами тоже конфетки бывают. Я когда лезу в нонейм в первую очередь лезу на базу посмотреть. Если база имеет разумную структуру, то прекрасно, жить можно.
Вот именно, что пример взятый из пальца. На практике к вам обращается такой вот инфобизнесмен — вы ему просчитываете ему построение такой системы с нуля (нельзя же верить стороним компонентам). После озвучиваете сроки и цену — и видите его спину. Это если человек воспитанный. Иначе еще и многое о себе узнаете.
Я говорил гипотетически, т.к. не сталкиваюсь с такими проблемами, потому что все заранее продумываю. Если человеку не нравится цена моего времени, я его держать не стану — я себя уважаю, я придерживаюсь принципа: «Не держись за клиентов, пусть они держаться за тебя». Если бы я «лажево» работал: я думаю очереди из клиентов у меня не было бы и они бы не приходили бы снова и снова.
Я привык работать с умными людьми, которые ценят свое время и деньги. Если человеку не нравиться что-то, я отправляю его искать других, но предупреждаю о последствиях экономии — через некоторое время он возвращается и цена больше в разы, т.к. исправлять что-то сложнее, чем создать новое. «Скупой платит дважды»
Ещё один из принципов взаимодействия с будущими клиентами, который мне очень нравиться: «Быстро, качественно, недорого — выберите два».
А если разработчик берет на себя такие ответственности за утечку — это полное свидетельство отсутствия у него ума и опыта. Потому что какую-бы сверхнадежную защиту вы не сделали — всегда найдется клиент, который поменяет пароль на «qazwsxedc» — потому что ему так проще. Или же хостер некорректно настроит права и до вашего сайта доберется какой-нибудь бэкдор с соседнего аккаунта.
Опять улыбаюсь ;) Вы старше меня и должны понимать о чем я говорил: «Если пользователь ...» — ответственность пользователя. «Если хостер ...» — ответственность хостера, Хостинг(в Вашем понимании) как таковой, наверное, изжил себя — предпочитаю VDS, CloudFlare, Nginx+php-fpm, Nginx+Apache — в зависимости от проекта и требований. Я говорил об ответственности исполнителя за код или подбор компонентов. Любое грамотное расследование происшествия — выявит причину. Так вот, чтобы это все провести нужно иметь грамотную систему логов. И люди забывают не только о них, но и о ведении бэкапов. Больше улыбаюсь с людей, которые делают это руками — предпочитаю автоматический бэкап в два разных места хранения, потому что человек может заболеть или забывать, машина такого не допустит. Ещё людям рекомендую проверять hash-суммы файлов проекта сделанные перед продакшеном и по факту бэкапов — разумеется только не вручную, с оповещением об изменениях.
И как по мне — проще поддерживать сайт на Wordpress или другой известной и популярной CMS. Так как большинство вопросов уже имеют ответы. А вот как попадется CMS венгерского разработчика, которого год назад сбила машина — то тут только дебагер. Потому что в проекте три практически одинаковых класса отвечающих за отправку почты. Одни настройки почты лежат в конфиг файле, а еще одна копия настроек в базе данных. И они разные. А почта с сайта не уходит. И попробуй тут разберись.
Проще на значит лучше и не значит правильней и безопастней. К любой CMS можно прикрутить UI-адаптированную панель. Если вы обслуживаете школьный сайт на WP — без проблем — там только формочки, странички и новости нужны, Ваше право. Но интернет-магазин на WP — это бред. Многие согласятся, что WP — это ведро дырками, в плане безопасности. Любую проблему надо решать с логов. И добро пожаловать в мой мир — человек взявший «венгерскую CMS», не подумал о последствиях — вот и результат. И мы кстати в данном контексте говорим о разработке и качестве, и безопасности, а не легкости обслуживание.
Читать сотни килобайт кода? Дак а нафик оно надо мне вообще если я всё должен вычитывать?
Безопасность вордпресса это безопасность неуловимого Джо. Самые жирные атаки можно более-менее закрыть, бекдоры позатыкать и т.п., но в целом статус системы остается «уязвима, но на взлом нужны усилия».
Не поймите меня привратно. ВП имеет право на жизнь. У него есть своя ниша. И у меня тоже есть проекты на ВП на поддержке. Правда они поместятся на пальцах левой руки, но есть. Я просто не могу пропустить этого ребяческого «просто не ставьте непроверенное» — оно всё дырявое как ведро. Всё. И просто не ставить опасное это не ставить ВП вообще. :)
Если вам требуется создать сайт-визитку, интернет-магазин или блог — тогда лучше использовать какое-нибудь готовое решение.
А если требуется именно функционал (учет заявок, печать квитанций, отчеты и т.д.) — лучше конечно же фреймворк.
>Хабр
>Восторженно-пустая статья о вордпрессе уровня «создаем первый сайт за 24часа!11»
>Все довольны.
при том что недавно чувака, аргументированно написавшем о битриксе, слили по самое не балуйся.
Безусловно, проекта типа магазинов МОЖНО делать на WP, но надо знать все тонкости и всерьез заниматься оптимизацией. Подстроить под себя сайт на WP не проблема — сообщество разработчиков действительно огромно.
Проще в обслуживании, а домен свой прикрутить тоже можно.
И наверное modx — это больше CMF, чем CMS.
Вот гоняют друзья блог на Wordpress, и вот буквально недавно его взломали и сломали. Вообще перестал взлетать. В файлах какой-то обфусцированный шлак. Я удалял всё, что туда попало в определённую дату (когда этот взлом произвели) и поверх распаковал обновление из архива. Захожу в админку, а там куча левых учёток наделали с правами админа. Приходится это всё чистить, удалять лишние плагины, которых никогда я не ставил, обновлять до более свежей версии и сбрасывать пароли всем остальным. Свой сайт я предпочёл сделать самому, и с лентой новостей, и с простой админкой для заполнения и правки новостей. Но вот для форума применил phpBB, и вики на MediaWiki, чтобы документацию писать. Параллельно экспериментирую с DokuWiki для подобных дел, чтобы сравнить с MediaWiki в плане надёжности и удобства.
Я против Wordpress из-за безопасности, очень много дыр, особенно в старых версиях. Взломать могут вообще в любой момент, и даже "мяу" сказать не успеешь.
В любом случае использовать CMS нужно разумно, и под конкретные задачи, а не просто клепать сайты-визитки на их основе. Инче можно просто перегрузить сервер, либо оставить песочницу для взломщиков, желающих втихаря повесить какой-нибудь вирус (или криптомайнер).
Дешево и сердито или Зачем разрабатывать сайт с нуля, если есть WordPress?