Alexander
Evgeniy
Повторение мать ученья. Три года назад было тоже самое, но с idiorm/granada/paris :)
Там подходы к переписыванию были другие. Брались компоненты и с нуля, с новой сруктурой собиралось ядро. При этом компоненты были разрозненные и приходилось их между собой дружить через жопу и с костлями. Ну и еще, при работе с базой отваливалось DBAPI и приходилось переписывать все и сразу.
Evgeniy
Можно сказать тогда это было тренировка и набивание шишек.
Evgeniy
Сейчас пошли от обратного. Написали прокси для DBAPI. И берутся компоненты которые уже изначально между собой связаны
Evgeniy
В xpdo тоже думали, что можно как угодно, а потом оказалось, что это дыра))
Немного другая ситуация. ->orderByRaw станет дырой, когда ты туда начнешь делать вызовы в стиле ->orderByRaw($_GET['order']);
Evgeniy
В ядре Revo как выяснилось, такой вызов появлялся благодаря нескольким прослойкам.
Aliaksandr
Немного другая ситуация. ->orderByRaw станет дырой, когда ты туда начнешь делать вызовы в стиле ->orderByRaw($_GET['order']);
Да вроде такая же, одни совали без разбору, думали, что автоматом заэкранируют, а вторые развели руками "с чего вы взяли"
Evgeniy
Да вроде такая же, одни совали без разбору, думали, что автоматом заэкранируют, а вторые развели руками "с чего вы взяли"
Те, кто не читают документацию не в счет. А в xPDO трабл был именно в ядре. Там сами разработчики так делали
Evgeniy
Я конечно детально не помню подробностей той уязвимости. Но там точно проблема была в другом. Наличие raw метода еще не уязвимость. Проблема появляется когда туда наинают пихать все без разбору. Это из серии $modx->evalSnippet($_GET['code']). Такое использование уязвимость. Но ведь какой дурак так будет делать?
Pathologic
в xpdo разве есть вообще raw и не raw
Evgeniy
в xpdo разве есть вообще raw и не raw
Я уже не помню. Помню только что проблема была в обходе экранирования. Т.е. можно было запустить чистый запрос сразу в pdo минуя подготовку через xPDO. И нашлось несколько компонентов которые так делали + в ядре одно место было.
Pathologic
судя по документации, нет там такого разделения, поэтому и пихали без экранирования
Evgeniy
Одно дело когда там легитимный запрос зашит в строке. А другое дело, когда запрос брался из внешнего источника. И это как раз было проблемой.
Pathologic
https://modx.pro/security/10345/
Evgeniy
Пипец) https://modxcloud.com/info.php
Evgeniy
2 года моему комменту, а phpinfo с modxcloud так и не убрали
Evgeniy
@alroniks может еще раз им напишешь?)
Aliaksandr
Php 5.6:) шах и мат прогрессивной общественности :)
Evgeniy
https://modx.pro/security/10345/
Васина статья это продолжение эпопеи с эксплоитом fuckyoumodxrevolution
Evgeniy
Evgeniy
У меня в блоге эта статья называлась "SQL-injection в xPDO на примере контекстов MODX Revolution"
Aliaksandr
По принципу наименьшего сопротивления если есть возможность отправлять прямые запросы, то многие так и будут делать. И винить в этом некого
Сергей
Была строка.... правильная строка))
Anonymous
2 года моему комменту, а phpinfo с modxcloud так и не убрали
может они специально для тебя оставили старую версию?
Evgeniy
EVO bot Лёшка
Читай документацию ©(Pathologic) http://docs.evo.im/03_extras/formlister.html
Am
Хех, даже "мвахаха" это мало
Anonymous
https://modx.com/blog/php56-removal-announcement
Ну посмотрим, меньше недели им осталось на то что бы уйти с 5.6
EVO bot Лёшка
Буду спамить каждый день) Просьба. Кто что вспомнит про события плагинов, подредактируйте страничку. https://github.com/evolution-cms/docs/blob/master/ru/03_Разработчику/02_Элементы/04_Плагины/02_События_плагинов.md
Pathologic
можно же посмотреть ошибку курла
Pathologic
функция есть для этого
Сергей
возможно куки и юзер агента хочет
Pathologic
не хочет
Marc
Hi, I need a blog like the demo on an existing website. Whats the best to do? Install the demo on an clean version and grab what I need?
Aliaksandr
Ipv6 ?
Marc
Its the fastest way to do it I think. I have never made a blog site before. Doesn't need much specials but just needs to work
Marc
A bit like this one; http://base.rev.modxcloud.com/blog/
Marc
Tags, recent posts, categories, archieve, comments
Marc
JotX
Marc
No need for login
Marc
You should probably do it with doclister?
Marc
Argh, only installed some Extras and now get this error: Fatal error: Uncaught TypeError: Argument 1 passed to modUsers::__construct() must be an instance of EvolutionCMS\Core, instance of DocumentParser given, called in /home/xxx/domains/xxx.nl/public_html/assets/snippets/FormLister/plugin.userHelper.php on line 39 and defined in /home/xxx/domains/xxx.nl/public_html/assets/lib/MODxAPI/modUsers.php:72 Stack trace: #0 /home/xxx/domains/xxx.nl/public_html/assets/snippets/FormLister/plugin.userHelper.php(39): modUsers->__construct(Object(DocumentParser)) #1 /home/xxx/domains/xxx.nl/public_html/manager/includes/document.parser.class.inc.php(1916) : eval()'d code(1): require('/home/naamenfaa...') #2 /home/xxx/domains/xxx.nl/public_html/manager/includes/document.parser.class.inc.php(1916): eval() #3 /home/xxx/domains/xxx.nl/public_html/manager/includes/document.parser.class.inc.php(5441): DocumentParser->evalPlugin('require MODX_BA...', Array) #4 /home/xxx/domains/xxx.nl/public_html/mana in /home/xxx/domains/xxx.nl/public_html/assets/lib/MODxAPI/modUsers.php on line 72
Marc
its DocLister giving issues :(
Marc
and userHelper
Marc
EVO 1.4.4 and installed DocLister from Extras
Anonymous
How i know, Extras get Dev version from GitHub 😞 Need get early version on GitHub and install form personal repository. For example: https://github.com/AgelxNash/DocLister/tree/2.3.15
Marc
That worked
Marc
No more error :O
Marc
I need to get some sleep, thanks and goodnight.
Камиль
Всем привет :) как новая сборка дополнения для инет. магазина поживает? :) думаю вот на evo или opencart делать
Saniock
OpenCart жесть, както собрал на нём магазин
Saniock
Ставь evoShop и
Dmytro
EVO 1.4.4 and installed DocLister from Extras
In 1.4.4 have doclister no need install from extras
Dmytro
Need fix in extras In extras doclister for dev version now
CZB
А что evoshop уже доступен?
Камиль
https://github.com/search?q=evoshop
Камиль
что за evoshop-autogen
Камиль
какой использовать?
Dmytro
https://github.com/evoshop-pro/evoshop?files=1
Игорь
Хорошего всем дня, есть вопрос - как в мультитв вывести порядковое числовое значения для элемента(аналог [+rowNumber+] в ddGetMultipleField)
Игорь
Спасибо))
Сергей
Сергей
или методом научного тыка)
Александр
Александр
http://i--gu.ru/multitv
Игорь
Спасибо, просто голова уже дымится от хотелок, захотели не 2 сайта делать, а типо 2 в 1, вот и зашиваюсь с простыми вещями)))
Сергей
Спасибо, просто голова уже дымится от хотелок, захотели не 2 сайта делать, а типо 2 в 1, вот и зашиваюсь с простыми вещями)))
скажу честно, всё запомнить нельзя, да и смысл захламлять голову. проще запомнить где это взять
Игорь
))
Kate
Доброе утро) Вопрос такой возник по интеграции сайта с 1С: клиент прислал просто .erf файл из 1С.Управление торговлей. Как я поняла, это настройка внешнего отчета и открыть его можно только в самом 1С. Может кто-то с такими файлами работал? В каком формате там вообще выгружается отчет, в xml?
Andrey
Обычно в xml отдают, или вообще post запрос из 1С идёт. Или я путаю)
Сергей
ну похоже результат какого то отчёта, сделал выборку через стандартный отчёт и сохранил. там есть при сохранении кнопка - сохранить как xls
Kate
они написали, что это обработка выгрузки