The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Новая критическая уязвимость в WordPress"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Новая критическая уязвимость в WordPress"  +/
Сообщение от opennews on 28-Апр-15, 10:19 
Спустя несколько дней с момента устранения (https://www.opennet.ru/opennews/art.shtml?num=42098) прошлой уязвимости в  популярной системе управления web-контентом WordPress выявлена новая критическая уязвимость, которая как и прошлая проблема дает возможность осуществить подстановку JavaScript-кода в комментарий к заметкам в блогах. В настоящий момент проблема уже устранена в оперативно сформированном выпуске WordPress 4.2.1 (https://wordpress.org/news/2015/04/wordpress-4-2-1/), но информация об уязвимости была раскрыта (http://klikki.fi/adv/wordpress2.html) до исправления, т.е. потенциально любой сайт на базе актуальной версии WordPress мог быть атакован.

Метод атаки основан на том, что поле TEXT в MySQL не может превышать 64 Кб, в то время как лимит на размер комментария установлен в 66 тысяч символов. Если сообщение превышает данный размер, то хвост обрезается и в БД помещается лишь часть текста. Соответственно, можно добавить сообщение, размером чуть больше 64 Кб, в котором размещается HTML-тег с произвольным большим блоком текста внутри. Так как хвост будет обрезан тег останется разорван, что позволит обойти код чистки HTML-тегов в  WordPress. После отображения такого текста, закрытием тега послужат далее идущие теги интерфейса WordPress. Если размещённый таким образом комментарий просмотрит администратор блога, то в его браузере в контексте блога будет выполнен JavaScript, через который можно получить доступ к операциям в интерфейсе администратора и организовать выполнение PHP-кода на сервере путём загрузки плагина или редактирования темы оформления.

<center><iframe width="640" height="360" src="https://www.youtube.com/embed/OCqQZJZ1Ie4" frameborder="0" allowfullscreen></iframe></center>


URL: http://arstechnica.com/security/2015/04/27/just-released-wor.../
Новость: https://www.opennet.ru/opennews/art.shtml?num=42117

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Новая критическая уязвимость в WordPress"  +11 +/
Сообщение от anonimous on 28-Апр-15, 10:19 
Это просто праздник какой-то!
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Новая критическая уязвимость в WordPress"  +10 +/
Сообщение от pkdr (ok) on 28-Апр-15, 10:34 
Для вордпресса каждый день - такой "праздник".
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

8. "Новая критическая уязвимость в WordPress"  +7 +/
Сообщение от anonymous (??) on 28-Апр-15, 10:43 
Вордпресс - это праздник, который всегда с тобой.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

45. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Аноним (??) on 28-Апр-15, 21:28 
Праздник каждый день :)
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

2. "Новая критическая уязвимость в WordPress"  +/
Сообщение от нонэйм on 28-Апр-15, 10:23 
да уж, лучше использовать чистый html чем это..
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

7. "Новая критическая уязвимость в WordPress"  +16 +/
Сообщение от pkdr (ok) on 28-Апр-15, 10:42 
Чистый html - совершенно не годится. Текст на голом html будет очень легко читаться, причём посетитель может позволять себе такую возмутительную наглость, как выбрать нравящийся ему, а не дизайнеру шрифт, его цвет и размер. На голом html неудобно делать текст сайта в виде тонкого столбца в 500 пикселей на экране шириной в 2-4 тысячи пикселей. На голом html никак не сделать, чтобы во время чтения вылезло на передний план какое-нибудь очень важное изображение. Крайне неудобно делать весь текст переливающимся всеми мыслимыми цветами.
Ну и кому он нужен, чистый html?
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

20. "Новая критическая уязвимость в WordPress"  +1 +/
Сообщение от Онотоле on 28-Апр-15, 13:06 
Ммм, простыню текста раскинувшуюся на весь экран от левого края до правого удобно читать?
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

23. "Новая критическая уязвимость в WordPress"  +2 +/
Сообщение от Аноним (??) on 28-Апр-15, 13:20 
CSS? Нет, никогда не слышал и слышать не желаю!
Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

24. "Новая критическая уязвимость в WordPress"  +1 +/
Сообщение от Аноним (??) on 28-Апр-15, 13:26 
не экран, а окно... думать надо головой покупая "экран" с соотношением от 16:9 и открывая там одно окно браузера на всю ширь...
Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

26. "Новая критическая уязвимость в WordPress"  +1 +/
Сообщение от playnet (ok) on 28-Апр-15, 13:39 
> не экран, а окно... думать надо головой покупая "экран" с соотношением от
> 16:9 и открывая там одно окно браузера на всю ширь...

У меня так и есть. 16:9, 23" моник. На весь экран. И мне удобно.

Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

40. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Аноним (??) on 28-Апр-15, 18:35 
> не экран, а окно... думать надо головой покупая "экран" с соотношением от
> 16:9 и открывая там одно окно браузера на всю ширь...

Так у нормальных сайтов "резиновая" верстка и они на весь экран как раз получаются.

И если что - мониторы с мало-мальски большой диагональю нынче почти все 16:9 как правило. А не нравится .. ну смотри в офисные 1280х1024, блин. "Зато 4:3" - единственное достоинство такого экспоната.

Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

43. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Vkni (ok) on 28-Апр-15, 20:01 
> И если что - мониторы с мало-мальски большой диагональю нынче почти все
> 16:9 как правило. А не нравится .. ну смотри в офисные
> 1280х1024, блин. "Зато 4:3" - единственное достоинство такого экспоната.

Есть, кстати, 2048х1536, тоже 4:3.

Ответить | Правка | ^ к родителю #40 | Наверх | Cообщить модератору

47. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Аноним (??) on 28-Апр-15, 22:02 
> Есть, кстати, 2048х1536, тоже 4:3.

Хз, мне достойные внимания аппараты за разумные деньги в продаже не попадались. А так у меня 2560х1440 (вообще 16:10), к тому же IPS c нормальной цветопередачей и даже вполне разумным временем отклика. Очень приятный и довольно универсальный аппарат: и с графикой поработать, и кино посмотреть, и в игрушки побегать, и попрограммить - все на ура.

Очень удобно на самом деле оказалось. Навалом места по бокам для панелей во всяких графических редакторах, CAD, програмерских эдиторах и прочих подобных программах, всегда вспомогательная информация и инструментальные выноски умещаются, всегда все перед глазами. И даже какой-нибудь ушибленный прайс с кучей столбцов теперь не проблема.

На самом деле я не понимаю такую принципиальность в 4:3 на больших мониторах. У человека поле зрения в ширину больше чем в высоту и монитор с подобным соотношением сторон очень логично вписывается в поле зрения.

Ответить | Правка | ^ к родителю #43 | Наверх | Cообщить модератору

48. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Vkni (ok) on 28-Апр-15, 22:27 
> Очень удобно на самом деле оказалось.

Для большого настольного дисплея широкий формат удобнее.

> На самом деле я не понимаю такую принципиальность в 4:3 на больших
> мониторах. У человека поле зрения в ширину больше чем в высоту
> и монитор с подобным соотношением сторон очень логично вписывается в поле
> зрения.

Уже 17-ти дюймовый ноут лучше не 4:3, а широкоформатный. Но вот на малых диагоналях широкоформатный монитор превращается в танковую щель. Поэтому, для текста на совсем крошечных ноутах лучше вообще квадратный монитор, на 12-15 дюймов - 4:3, дальше широкий формат.

Но у меня-то 15-ти дюймовый 4:3.

Более того, от размера монитора зависит и то, какой оконный менеджер стоит использовать. Например, на большом мониторе текст лучше не разворачивать во весь экран, а держать колонкой, окна не наслаиваются => лучше что-то вроде WindowMaker'а. На средних мониторах уже хорошо идут мозаичные WM, на маленьких - каждое окно на полный экран.

Ответить | Правка | ^ к родителю #47 | Наверх | Cообщить модератору

53. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Аноним (??) on 29-Апр-15, 20:06 
> так у меня 2560х1440 (вообще 16:10)

Вообще это 16:9. 16:10 — 2560х1600.

Ответить | Правка | ^ к родителю #47 | Наверх | Cообщить модератору

31. "Новая критическая уязвимость в WordPress"  +/
Сообщение от pkdr (ok) on 28-Апр-15, 14:42 
> Ммм, простыню текста раскинувшуюся на весь экран от левого края до правого удобно читать?

Немного увеличенным шрифтом - вполне удобно. И у меня экран лёгким движением руки становится вертикальным.

Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

44. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Vkni (ok) on 28-Апр-15, 20:02 
> Немного увеличенным шрифтом - вполне удобно. И у меня экран лёгким движением
> руки становится вертикальным.

Если экран - не совсем щель, то это даже лучше 4:3.

Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

25. "Новая критическая уязвимость в WordPress"  +1 +/
Сообщение от playnet (ok) on 28-Апр-15, 13:38 
> На голом html неудобно делать текст сайта в виде тонкого столбца в 500 пикселей на экране шириной в 2-4 тысячи пикселей.

Табличная вестка же! Там это делается элементарно.

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

3. "Новая критическая уязвимость в WordPress"  +1 +/
Сообщение от Аноним (??) on 28-Апр-15, 10:26 
"поле TEXT в MySQL не может превышать 64 Кб, в то время как лимит на размер комментария установлен в 66 тысяч символов"

Я даже не знаю, как это прокомментировать.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

10. "Новая критическая уязвимость в WordPress"  –1 +/
Сообщение от Аноним (??) on 28-Апр-15, 11:20 
ну ошиблись, сделать alter table, поменять TEXT на LONGTEXT и всё заработает или массив свой поменять на 63кб
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

19. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Умник on 28-Апр-15, 12:51 
Движок самдолжен запрашивать макс размер поля в БД
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

27. "Новая критическая уязвимость в WordPress"  +/
Сообщение от playnet (ok) on 28-Апр-15, 13:42 
> Движок самдолжен запрашивать макс размер поля в БД

На каждый запрос клиента? Получать типы, размерности, связи и прочее? Этак мы до битрикса докатимся. Если и делать, то с кэшированием, хотя бы в админке, а лучше при обновлении версии/изменении модулей, и в конфиги. Тогда не будет провала в скорости для простых юзеров.

Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

28. "Новая критическая уязвимость в WordPress"  +/
Сообщение от playnet (ok) on 28-Апр-15, 13:44 
> Если и делать, то с кэшированием, хотя бы в админке

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

Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

42. "Новая критическая уязвимость в WordPress"  +1 +/
Сообщение от Ilya Indigo (ok) on 28-Апр-15, 19:47 
Какой LONGTEXT?
VARCHAR(xxx) уже давно как позволяет до нескольких мегабайт записывать с указанием ограничения в байтах.
TEXT-ом пользуются те, кто до сих пор в танке.
Но проблему это всё равно не решает, нужно при валидации самому следить чтобы текст был не пустым и не переваливал за установленное значение, что делается простым isset-ом.
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

6. "Новая критическая уязвимость в WordPress"  +1 +/
Сообщение от йцу on 28-Апр-15, 10:37 
> в то время как лимит на размер комментария установлен в 66 тысяч символов.

Сначала не понял откуда такое число, но

> The exploit works by posting some simple JavaScript code as a comment and then adding a massive amount of text—about 66,000 characters or more than 64 kilobytes worth.

Если я правильно понял, в самом WP никакого лимита нет вообще. Имеется в виду, что для размещения XSS достаточно 64k любого текста + пару k на сам эксплойт.

А вообще, имхо, предоставлять пользователям публичных ресурсов возможности HTML-разметки - это всегда опасная практика. Формат уже слишком сложный, чтобы можно было полагаться на всякие средства "очистики". Если прям необходимо дать возможность выделять текст "жирненьким", лучше встроить какой-нибудь markdown или bb-коды на худой конец.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

15. "Новая критическая уязвимость в WordPress"  +1 +/
Сообщение от Crazy Alex (ok) on 28-Апр-15, 12:07 
Точнее, разметку можно (и нужно) делать HTML-подобной - такое большему числу людей понятно, но всё равно её полностью парсить и генерировать заново.
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

17. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Аноним (??) on 28-Апр-15, 12:37 
html проще парсить, чем тот же markdown. Не говоря о textile.
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

9. "Новая критическая уязвимость в WordPress"  –1 +/
Сообщение от Аноним (??) on 28-Апр-15, 11:05 
А все потому что мыскль.
В нормальной субд при превышении размера поля будет error и rollback.

Да, в мыскле тоже можно включить strict mode, но этого никто не делает - половина кода, написанного похапе-программистами, отвалится.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

21. "Новая критическая уязвимость в WordPress"  +1 +/
Сообщение от Аноним (??) on 28-Апр-15, 13:08 
Какой флаг нужно вписать в sql-mode?  
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

29. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Аноним (??) on 28-Апр-15, 13:49 
STRICT_ALL_TABLES
Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

30. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Аноним (??) on 28-Апр-15, 14:21 
У меня STRICT_TRANS_TABLES
Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору

37. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Аноним (??) on 28-Апр-15, 16:56 
Если таблицы в InnoDB - сойдёт.
Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору

38. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Аноним (??) on 28-Апр-15, 17:35 
TokuDB
Ответить | Правка | ^ к родителю #37 | Наверх | Cообщить модератору

39. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Аноним (??) on 28-Апр-15, 17:50 
Ну или так, TRANS_ - это для всех движков, которые Transactions = YES в SHOW ENGINES.
Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

22. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Онотоле on 28-Апр-15, 13:09 
Если не 90%.
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

14. "Новая критическая уязвимость в WordPress"  +3 +/
Сообщение от arisu (ok) on 28-Апр-15, 11:59 
всё‐таки пицца оказалась не умнее сыра.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

33. "Новая критическая уязвимость в WordPress"  +/
Сообщение от A.Stahl (ok) on 28-Апр-15, 15:24 
Увы. Это, наверное, зелёная Жаба виновата. Давно пора было уволить.
Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

32. "Новая критическая уязвимость в WordPress"  +1 +/
Сообщение от vitalif email(ok) on 28-Апр-15, 14:46 
Да просто не надо полагаться на то, что в базе html типа "чистый" - нужно очищать ПОСЛЕ того, как берёшь из базы. Заодно получаешь защиту от просто подстановки яваскрипта через какую-нибудь дыру, которая позволяет текст записей менять.

Очищать кстати норм htmLawed'ом.

P.S: Я думал, что "критичная" - это выполнение кода, а тут XSS всего лишь... этих XSS'ов там по-моему на каждом углу.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

41. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Аноним (??) on 28-Апр-15, 18:40 
> P.S: Я думал, что "критичная" - это выполнение кода, а тут XSS
> всего лишь... этих XSS'ов там по-моему на каждом углу.

Нет, тут не XSS и не всего лишь, а возможность впихать свой JS, который при просмотре админом может лихо вкачать PHP shell на сервер и далее поиметь все и вся с правами пользователя под которым php крутился.

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

Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору

46. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Музыкант on 28-Апр-15, 21:50 
Слушайте, а у меня идея: ставишь на localhost любой http сервер, на него загружаешь любой, какой угодно дырявый CMS (ну или делаешь сайт с нуля), а потом сделать такой скриптик, который скачивает его целиком с помощью чего-то вроде httrack в виде статических html файлов и заливает их на хостинг (само собой только те, котрые обновились). Правда комментарии в таком блоге оставлять не получится, но можно вынести их в отдельные страницы (типа как гостевые книги в старые времена, только для каждого поста). А порядком можно даже специально заточенный CMS запилить для этой цели, который генерировал бы реальные html файлы и заливал их на хостинг. А можно чтоб даже можно было выбрать, какие страницы превращать в 100% статические, а какие оставить динамическими.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

49. "Новая критическая уязвимость в WordPress"  +1 +/
Сообщение от Typography Nazi on 29-Апр-15, 01:09 
https://www.staticgen.com/ is your friend.
Ответить | Правка | ^ к родителю #46 | Наверх | Cообщить модератору

50. "Новая критическая уязвимость в WordPress"  +/
Сообщение от Музыкант on 29-Апр-15, 11:39 
Спасибо! Я просто не смог найти, как этот подход называется - везде тупо давали ссылки на flat-file CMS.
Ответить | Правка | ^ к родителю #49 | Наверх | Cообщить модератору

52. "Новая критическая уязвимость в WordPress"  +/
Сообщение от бедный буратино (ok) on 29-Апр-15, 16:19 
Я такую фигню на python, bottle и scp собрал минуты за две. Правда, не для блогов, а для просто статических сайтов, у меня они все статические.

А для блогов существуют десятки подобных решений, с разными дискусами для комментариев.

Ответить | Правка | ^ к родителю #46 | Наверх | Cообщить модератору

51. "Новая критическая уязвимость в WordPress"  +/
Сообщение от бедный буратино (ok) on 29-Апр-15, 11:56 
Wordpress удалили из портов OpenBSD. Ибо нефиг :)
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2021 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру