LINUX.ORG.RU

Wordpress решето

 , ,


0

2

Это

Для Ъ!

В самой развлекательной и познавательной CMS Wordpress выявлен бэкдор в самом нужном плажине.

Мне как иксперту по по этому дерьму, лень кастовать.

Twissel кастони кто в теме. Обсудим.

Хотя что тут обсуждать, пивас допью и спасть...

P.S. На этом самом уже можно даже почитать.

★★★★

Никогда такого не было, и вот опять.

StReLoK ★☆ ()

Не ясно кто на ком стоял. Сначала попёрли плагин из-за копирайта, а потом в нём нашли, уже существовавший ранее, код качающий бэкдор?

Мухаха, лайвхак:

Cойза скупает плагины для WordPress и внедряет в них бэкдоры, которые использует для перенаправления пользователей на спам-сайты,

subwoofer ★★★★★ ()
Последнее исправление: subwoofer (всего исправлений: 1)

Wordpress решето

Здравствуйте, кэп.

WereFox ★★ ()

Забавно было, как однажды сайт на вордпрессе брутили через xmlrpc (если правильно помню, это для мобильного приложения файл).

Вордпресс всегда был дырявым тяжелым говном.

ozz_is_here ()
Ответ на: комментарий от ozz_is_here

Что смищно, из коробки без хаков этот xmlrpc хер отключишь, нужно лезть в сорцы/в конфиги сервера.

EXL ★★★★★ ()

А при чём тут WP, это сторонний плагин.

no-such-file ★★★★★ ()

опиши подробней, интересно обсудить.

foozzi ★★ ()

This code triggers an automatic update process that downloads a ZIP file from https://simplywordpress[dot]net/captcha/captcha_pro_update.php, then extracts and installs itself over the copy of the Captcha plugin running on site.

Святые щи. Это, что, нормальное дело для плагинов?

Axon ★★★★★ ()
Ответ на: комментарий от no-such-file

Кидаться какахами в какой-то левый плагин не интересно, кидаться какахами в сам WP гораздо интереснее

MrClon ★★★★★ ()
Ответ на: комментарий от Axon

Коммерческие плагины и темы (особенно темы) в WP вообще часто вызывают фэйспалм своей архитектурой.
По хорошему надо надо что-то делать с аудитом плагинов силами сообщества (нечто более осмысленное чем расстановка оценок по пятибалльной)

MrClon ★★★★★ ()
Ответ на: комментарий от MrClon

По хорошему надо надо что-то делать с аудитом плагинов силами сообщества (нечто более осмысленное чем расстановка оценок по пятибалльной)

Это утопия. Начать стоит с безопасного API плагинов и системы разрешений, при которой вот просто так взять и скачать хер пойми откуда ничем не подписанный бинарь, распаковать его на сервере и выполнить оттуда произвольный код будет нельзя при всём желании.

Axon ★★★★★ ()
Ответ на: комментарий от MrClon

Коммерческие плагины и темы (особенно темы) в WP вообще часто вызывают фэйспалм своей архитектурой.

Есть такое.

no-such-file ★★★★★ ()
Ответ на: комментарий от Axon

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

Ну был бы он подписанный и что? В google play тоже периодически всплывают какие-то мутные приложения. Одна недавняя история с Whatsapp чего стоит.

no-such-file ★★★★★ ()
Последнее исправление: no-such-file (всего исправлений: 1)
Ответ на: комментарий от Axon

Подозреваю что в php реализовать такое невозможно в принципе, единственный вариант изоляции приложений там это разные процессы запущенные от разных пользователей (что никаким боком не укладывается в архитектуру похапэшного веб-приложения). Разве-что написать на php виртуальную машину для выполнения php (или любого другого языка)…

MrClon ★★★★★ ()
Ответ на: комментарий от no-such-file

Ну был бы он подписанный и что?

Вы забыли про остальные пункты. А подписаны должны быть, конечно же, сами плагины.

Axon ★★★★★ ()
Ответ на: комментарий от Axon

Опыт гуглоплэя показывает что и соблюдения всех перечисленных пунктов недостаточно для того чтобы можно было жрать абы что из софтопомойки (основной сценарий использования для гуглоплея, репозитория плагинов WP и прочих подобных «сторов»)

MrClon ★★★★★ ()
Ответ на: комментарий от MrClon

Ну вот не скажите. Если приложение запрашивает неочевидные разрешения, я его, скорее всего, ставить не буду. Плюс, есть пути обрезать лишние права средствами ОС. С WP же сейчас единственный способ распознать подвох - это внимательное чтение исходника плагина.

Axon ★★★★★ ()
Ответ на: комментарий от Axon

И тем не менее вопли вроде «фанарик обчистил мой банковский счёт» раздаются регулярно. В любом случае надо либо поддерживать чистоту в репозитории, либо смотреть что тянешь в рот. Конечно система пермешенов упрощает второй вариант, но:
1) Очевидно это всё равно не решает проблему
2) В данном случае это просто не реализуемо

MrClon ★★★★★ ()
Ответ на: комментарий от MrClon

И тем не менее вопли вроде «фанарик обчистил мой банковский счёт» раздаются регулярно.

Ну это же классическое подтверждение теории Эйнштейна о двух бесконечностях. А вот нормальным людям бояться теперь почти нечего.

Конечно система пермешенов упрощает второй вариант, но: 1) Очевидно это всё равно не решает проблему 2) В данном случае это просто не реализуемо

Это решает 95% проблемы и куда более реализуемо, чем ручное вычитывание каждой строки кода каждого плагина.

Axon ★★★★★ ()
Ответ на: комментарий от MrClon

Как например?

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

no-such-file ★★★★★ ()
Ответ на: комментарий от no-such-file

…и от другого пользователя.
Как-то это не очень вяжется с архитектурой PHP-вебни, тебе не кажется?

MrClon ★★★★★ ()
Ответ на: комментарий от no-such-file

А при чём тут WP, это сторонний плагин.

Притом, что рядовой WP почти целиком слеплен из этого говна. В противном случае он ни для чего не годен.

crutch_master ★★★★ ()
Последнее исправление: crutch_master (всего исправлений: 1)
Ответ на: комментарий от Axon

Это утопия. Начать стоит с безопасного API плагинов и системы разрешений, при которой вот просто так взять и скачать хер пойми откуда ничем не подписанный бинарь, распаковать его на сервере и выполнить оттуда произвольный код будет нельзя при всём желании.

Это - не меньшая утопия.

crutch_master ★★★★ ()

Хотя что тут обсуждать

Таки да. WP говно, все кто что-то делают на нём - муд беспечные люди.
/thread

crutch_master ★★★★ ()
Последнее исправление: crutch_master (всего исправлений: 1)
Ответ на: комментарий от MrClon

Как-то это не очень вяжется с архитектурой PHP-вебни, тебе не кажется?

Нет, не кажется. Но примеров такого, чтобы не самописное, а именно из коробки, я не знаю, и не только на php (язык тут ни при чём).

no-such-file ★★★★★ ()
Ответ на: комментарий от crutch_master

рядовой WP почти целиком слеплен из этого говна

рядовой %whatever% почти целиком слеплен из этого говна

no-such-file ★★★★★ ()
Ответ на: комментарий от no-such-file

рядовой %whatever% почти целиком слеплен из этого говна

Ну, не скажи. Тот же opencart в основном доделывается напильником + пара плагинов сорцы которых можно смотреть без ide. С wp всё не так.

crutch_master ★★★★ ()
Последнее исправление: crutch_master (всего исправлений: 1)
Ответ на: комментарий от no-such-file

Ну-ну. Эдак ты скоро изобретёшь микросервисную архитектуру

Нет, конечно реализовать то о чём ты говоришь на PHP можно, вот только это будет весьма инфернальный кадавр

MrClon ★★★★★ ()
Ответ на: комментарий от crutch_master

Так себе сравнение. OC — это магазин, а такой функционал для WP нужно ставить плагином, разумеется код этого плагина будет ни разу не простой, а примерно такой, как весь opencart.

conformist ★★★ ()
Ответ на: комментарий от crutch_master

WP тоже можно доделывать напильником, вместо обмазывания плагинами. Единственное что мешает это делать — наличие кучи готовых плагинов. Но едва-ли наличие альтернативы напильнику стоит ставить в укор WP

MrClon ★★★★★ ()
Ответ на: комментарий от conformist

Так себе сравнение.

Ну если под «что угодно» понимать всякий кал сделанный по принципу WP, то да, без разницы. Если помойку развести можно, то её разведут.

crutch_master ★★★★ ()
Последнее исправление: crutch_master (всего исправлений: 1)
Ответ на: комментарий от MrClon

WP тоже можно доделывать напильником, вместо обмазывания плагинами.

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

Единственное что мешает это делать

И еще кривая архаичная архитектура, вместо няшного MVC.

crutch_master ★★★★ ()
Ответ на: комментарий от MrClon

Эдак ты скоро изобретёшь микросервисную архитектуру

Это она и есть.

то о чём ты говоришь на PHP можно, вот только это будет весьма инфернальный кадавр

Что в нём инфернального? Даже если не рассматривать всякие PHPReact, а обычный пых в формате запрос-ответ, то можно запускать сначала ядро, которое запускает отдельные сервисы и работает с ними через pub/sub. Да, это тормоза, но безопасно - за всё надо платить.

no-such-file ★★★★★ ()
Последнее исправление: no-such-file (всего исправлений: 1)
Ответ на: комментарий от crutch_master

С wp всё не так.

Конечно не так, для wp есть херова туча плагинов на все случаи жизни, так что до напильника обычно руки не доходят.

opencart в основном доделывается напильником

Для этого нужен человек владеющий инструментом. Мне так кажется, что при наличии такого человека всё-таки проще и быстрее провести аудит имеющегося кода и выбрать адекватные готовые плагины, а не заводить велосипед.

no-such-file ★★★★★ ()
Ответ на: комментарий от crutch_master

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

Если делать из бложика интернет-магазин — да, для чего-то менее радикального хватает напильника. Зачастую проще и быстрее написать свой плагин на десяток другой строк, чем перебирать кучу вроде-как-подходящих в поисках действительно подходящего

И еще кривая архаичная архитектура, вместо няшного MVC.

Это да

MrClon ★★★★★ ()
Ответ на: комментарий от crutch_master

кривая архаичная архитектура, вместо няшного MVC.

Я тебе открою секрет, WP это MVC + pub/sub на события.

no-such-file ★★★★★ ()
Ответ на: комментарий от MrClon

Это да

Не соглашусь. Модели есть? Есть WP_Post. Вьюхи есть? Есть, шаблоны темы, шаблоны в плагинах. Контроллер замысловатый и размазан по коду, но очевидно тоже присутствует. Внутри плагинов вообще каждый дрочит как он хочет, хоть сторонний фреймворк целиком тащи.

no-such-file ★★★★★ ()
Ответ на: комментарий от no-such-file

Для изоляции модулей их придётся запускать от отдельных пользователей, значит понадобится либо запускать мастер-процесс от рута, либо настраивать sudo. В этом разрезе мне всё менее понятно зачем тут PHP и при-чём тут вордпресс. Бери python/node/rust/go и пиши на нём свою инновационную CMS. Зачем насиловать PHP, если вписаться в готовую нишу WP всё-равно не выйдет?

MrClon ★★★★★ ()
Ответ на: комментарий от no-such-file

что при наличии такого человека всё-таки проще и быстрее провести аудит имеющегося кода и выбрать адекватные готовые плагины

Нееее. Там кода много, а функционала надо 2%. Про unix-way одна половина не слышала, вторая плюётся. В ОС если надо добавить какую-то форму обратной связи, например, элементарно в шаблон приделывается форма, в контроллер приделывается для неё метод. В wp ставится левый free-trial плагин с кучей ненужного функционала ради 1.5 фичи. Конечно, можно сделать также, но зачем, если есть хренова туча дырявых контрацеп плагинов.

адекватные готовые плагины
адекватные
WP

Ну ты понял.

так что до напильника обычно руки не доходят

Хренова туча плагинов пилится непонятно кем, непонятно как и непонятно зачем. И когда какой-то из них вдруг не покрывает новых требований начинается головняк. При этом для одних только контактных форм я знаю как минимум 3 плагина и все они работают по разному, так что простая задача типа повешать js код на submit становится нетривиальной и, в разной степени, геморрной. А вот с самописными одностраничниками, напротив, никаких проблем нет, как раз благодаря их архитектурной простоте. А что говорить про всякие разношерстные магазины и прочую муть.

crutch_master ★★★★ ()
Ответ на: комментарий от no-such-file

Я тебе открою секрет, WP это MVC + pub/sub на события.

И сраная процедурщина еще с бородатых времён.

crutch_master ★★★★ ()
Ответ на: комментарий от MrClon

Для изоляции модулей их придётся запускать от отдельных пользователей

Зачем? Для целей ограничения доступа из пыха, достаточно просто в отдельном процессе того же пользователя.

либо запускать мастер-процесс от рута, либо настраивать sudo

Если уж так хочется, то можно просто suid-bit, или например, запускать в каком-нибудь сэндбоксе.

Бери python/node/rust/go и пиши на нём свою инновационную CMS

А чем они лучше PHP? Особенно для написания CMS.

и пиши на нём свою инновационную CMS

Спасибо, но мне WP вполне хватает, когда нужна готовая CMS. И как-то удивительно, ни разу ничего не сломали. Может просто нужно иметь руки из правильного места?

no-such-file ★★★★★ ()
Последнее исправление: no-such-file (всего исправлений: 1)
Ответ на: комментарий от crutch_master

элементарно в шаблон приделывается форма, в контроллер приделывается для неё метод

Ты удивишься, но в WP также, причём даже не нужно будет лезть в шаблон и контроллер, а подписаться на хуки в шаблоне и в обработке запроса.

no-such-file ★★★★★ ()
Ответ на: комментарий от no-such-file

Ты удивишься, но в WP также

Да хоть где можно сделать также. Вопрос в практике применения. Для ОС такое - норма, для wp - нет. И если стоит вопрос поправить форму на ОС, то это обычно значит поправить шаблон. А если wp - то это какой-то плагин с формами. Исключения быть могут, но редкие.

crutch_master ★★★★ ()
Последнее исправление: crutch_master (всего исправлений: 2)
Ответ на: комментарий от crutch_master

Для ОС такое - норма, для wp - нет.

Для разработчика такое - норма, для домохозяйки - нет. /fixed

Ну и да, в OC просто нет альтернативы же. Улыбаемся и машем пилим.

no-such-file ★★★★★ ()
Ответ на: комментарий от no-such-file

Ну и да, в OC просто нет альтернативы же. Улыбаемся и машем пилим.

Оно к лучшему, как выясняется.

crutch_master ★★★★ ()
Ответ на: комментарий от crutch_master

Кому-то и OC не нравится, говорят лучше своё на фреймворке пилить. Есть и совсем отмороженные, которые полностью самодельные велосипеды тянут. Это философский вопрос, что лучше.

no-such-file ★★★★★ ()
Ответ на: комментарий от no-such-file

Зачем? Для целей ограничения доступа из пыха, достаточно просто в отдельном процессе того же пользователя.

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

А чем они лучше PHP? Особенно для написания CMS.

Тем что не фрактал.

Может просто нужно иметь руки из правильного места?

Скажешь тоже. Может тебе ещё и пароль != qwerty подавай?

MrClon ★★★★★ ()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)