
Fi1osof
С нами с 05 мая 2014; Место в рейтинге пользователей: #214 часа назад
Я честн говоря не понимаю, что за ошибка на 60 строке здесь:
github.com/createit-ru/YaSmartCaptcha/blob/1.0.1-pl/core/components/yasmartcaptcha/model...
YaSmartCaptcha - защитите ваши формы от спама умной капчей от Яндекс 22
5 часов назад
Все устраивает.
Просто подумал что скачал один модуль, а там уже это тоже есть.
И не надо ставить еще один модуль. ))
pbStudio: Подключаем мультиязычность в PageBlocks 12
Вчера в 21:46
Что то я упустил из вида этот комментарий.
Вот тут я описываю как подгружал свой процессор.
Вывод перечня заказанных товаров в таблицу с заказами minishop2 (панель менеджера) 28
Вчера в 19:51
Путь до файла /core/components/jevix/vendor/agelxnash/jevix/src/functions.php.
Исправленный вариант кода:
<?php
/**
* Функция ord() для мульти...
Tickets не работают комментарии 8
Вчера в 12:20
Теперь понятно.
Я думал там есть такая возможность.
Тогда вопрос отпал.
PageBlocks 2.6.0. Настройка меню MODX и гибкое управление страницей пользователя 16
27 апреля 2025, 16:52
Спасибо за ответы!
Хранит то modx чанки и шаблоны и т.п. в базе да, но с ними как раз нет проблем — сталь галочку Статичный, указываешь папку и фай...
[ChangePack]-Компонент синхронизации копии сайта 29
26 апреля 2025, 15:12
Вопрос, а как сделать для категории товара?
Как скрыть из каталога товары отсутствующие в наличии? 2
24 апреля 2025, 11:21
Сейчас расскажу прикол из ряда вон выходящий, поставил на тестовом сайте, всё хорошо. Перенёс этот сайт на этом же хостинге (переименовал папки и попр...
ExtraFields. Дополнительные поля для ресурса (modResource) и пользователя (modUserProfile). 41
24 апреля 2025, 05:14
Привет. Вывод интерфейса админки минишопа в web контекст никто не делал. Я делаю потихоньку интерфейс своей ERP на getTables и PVTables в web контекст...
Интеграция интерфейса плагина Formit в ресурс 2
23 апреля 2025, 09:22
Привет, Дима! Мне тоже пришлось немного поискать, потому что пока что ещё не так много было выпущено. И, честно говоря, я не могу точно сказать, когда...
MODX/AI Hackathon Part 2 (27 марта) 5
Если ты вдруг читал исходную статью, то там я писал устанавливать сложные префиксы. Даже немного математики было:
Ты сейчас вообще php-код приводишь. То есть предполагается, что твой скрипт будет работать на стороне целевого сервера уже? Если у тебя там php твой работает, то какой смысл? Уже все сломано. А если ты им просто фигачишь запросы на целевой сервер, то с учетом задержек даже идеальных 10 мсек с учетом вычислений выше как быстро ты получишь результат?
Кстати, если поиграться с запросом, можно даже такое получить: SQL injection attempt detected.
Есть или была? Я проверял все процессоры на работу с файлами, они защищены. Но может что-то проморгал.
А вот это:
$main = array(
'tablePrefix' => 'modx_', //The fix
правильней переписать на
$main = array(
'tablePrefix' => $modx->config['table_prefix'], //The fix
Во всяком случае в рамках парадигмы конкретно этого случая.
Фильтра и прочее тоже будет, просто чуть позже.
Про битрикс: если бы я его изучал 7 лет, как MODX, наверняка я там еще больше дыр нашел бы. В целом MODX довольно хорошо защищен, далеко не каждый взломает.
Я писал довольно много здесь про другие дыры, стоит перечитать комменты. Так или иначе, практически от всех этих уязвимостей спасает смена префиксов.
Они взяли на заметку. В отличие от нас буржуи привыкли в выходные отдыхать. Наверняка завтра примут PR. Но этот ПР не решение проблемы в целом, префиксы менять все равно надо.
И здесь опять-таки, спасают кастомные префиксы таблиц.
Понятно дело, что он многое сам домыслил и доделал, но сама бага мне была понятна и очевидна, и я про нее говорил Райну тоже, но он действительно отмахнулся, а я не стал развивать тему и ломать им сайт. Так вот, багу не совсем закрыли, точнее, сама архитектура MODX-а такова, что все эти уязвимости во многом являются не багами, а фичами. Это такой механизм безопасности. И уязвимости можно задействовать даже с передачей существующего контекста, если политики не правильно настроены (ведь даже аноним по сути автоматом авторизован в контексте web, а это значит уже НЕ НЕ авторизован). Кстати, что интересно, воспользоваться этим механизмом позволяет как раз JS-компонент MODx, который не сложно подключить даже на фронт сайта просто через редактирование HTML-а, а если можно попасть на входную страницу админки, так вообще проблем нет никаких.
По сути, если ты хочешь дать кому-то права на выборки документов и прочих элементов, давать их надо не на контексты, а на конкретные элементы. Но тут проблема в неудобстве сразу встает — если ты хоть кому-то дал права на какие-то группы элементов, значит все остальные сразу лесом пойдут, то есть придется всем остальным так же права прописывать.
Есть у меня одна хорошая, но довольно сложная статья, которая несколько проливает свет на все это.
А так можно, к примеру, получить список всех сниппетов и плагинов на сайте. Да, модифицировать их не получится, но если проанализировать их кода хорошенько, можно попробовать найти какие-нибудь логические ошибки, особенно там, где используются механизмы формирования ключей для автоматической авторизации пользователей, проведения платежей и т.п.
В общем, точек входа довольно много, можно несколько отдельных статей написать про них, поэтому я не стал много воды лить, я просто привел максимально эффективное на мой взгляд решение. Практически все эти проблемы решаются сменой префиксов таблиц и сокрытием папки коннекторов.