Вставляем произвольный код в посты и страницы WordPress. Вставляем произвольный код в посты и страницы WordPress Поиск подходящих сервисов

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

WordPress – добавляем произвольный код HTML.

Всегда есть необходимость вставить произвольный код HTML, сделать красивую подписку на Ваш канал в боковой панели или просто разместить текст на главной странице, вариантов масса всё зависит от Ваших потребностей.

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

И так, для того что бы добавить наш код нам необходимо в панели администратора перейти во вкладку “Внешний вид” -> “Настройка”. Можно и через виджеты, но тогда мы не увидим сразу результат. Я предпочитаю больше визуальный редактор.

Выбираем место куда хотим добавить наш код. Я хочу добавить счётчик в боковую панель. Выбираем “Боковую панель (Sidebar)”, у Вас может отличаться название, всё зависит от шаблона.

Появиться новый виджет, раскрываем его и в содержимое вписываем наш код, не забываем сохранять.

В результате получим такой результат.

Таким образом Вы можете добавить HTML код в любое место где можно использовать виджеты.

На этом всё, надеюсь данная статья была полезной.

Критическая уязвимость в корпоративной версии популярнейшей системы контроля версий GitHub позволяет любому авторизованному пользователю выполнять произвольный код в системе. Для эксплуатации этой уязвимости требуется применить сразу несколько техник: инъекцию в кеширующий сервис и внедрение объектов.

Общие сведения

Метод Addressable::URI.parse парсит переданный URL и проверяет его на соответствие спецификациям RFC 3986, RFC 3987 и RFC 6570. Это значит, что мы можем отправлять запросы на любые серверы. Никаких других проверок адреса не выполняется.

Только вот при попытке использовать локальные адреса localhost, 127.0.0.1 и тому подобные система возвращает ошибку Invalid host. Однако не локалхостом единым! Эту ошибку можно обойти, просто используя адрес 0.0.0.0 или сокращенно 0 .

Давай проверим, как это работает. Поставим на прослушку порт 31337 (nc -lp 31337 -vvv) на виртуалке. И затем создадим веб-хук, указав в качестве URL http://0.0.0.0:31337/test . После нажатия кнопки «Добавить» к нам незамедлительно прилетает запрос.



Можем поздравить себя, мы обнаружили SSRF-уязвимость. Да не простую, а которая еще и показывает ответ сервера, если он оформлен как валидный HTTP response.

Теперь нужно придумать, что с ее помощью можно сделать.

Я неспроста так рьяно пытался пробиться на localhost. GitHub Enterprise - это большое и сложное приложение, поэтому внутри крутится некоторое количество вспомогательных сервисов. Взгляни на одну только строку статуса.


Тут нам и «Эластик», и «Редис», и «Мемкеш». Выбирай - не хочу!

Начнем с Memcached. Протокол общения с ним текстовый, поэтому можно попробовать провести инъекцию. Попробуем провернуть разделение запроса (HTTP Request Splitting), для этого создадим хук с символами перевода каретки.

Http://0:31337/Hello%0D%0Aworld

Не вышло. Ладно, не отчаиваемся, на этом сервере еще есть чем поживиться.

Поиск подходящих сервисов

Теперь настало время посмотреть на открытые порты. Выполним команду sudo netstat -anp | grep -i LISTEN .



Вот такой внушительный список сервисов, которые доступны по сети. Есть где разгуляться, даже порт 1337 открыт 😉

Если помнишь, я говорил, что SSRF позволяет читать ответ. Это можно использовать во время тестов на проникновение по методике черного ящика. Например, посмотрим, что находится на пресловутом порте 1337. Создадим хук http://0:1337/ , откроем его и проскроллим до Recent Deliveries. Там, во вкладке Response, можно увидеть ответ от сервера. Если хотим заново отправить запрос, то к вашим услугам кнопка Redeliver.

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «сайт», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score!

Если вам нужно вставить произвольный код в посты и страницы WordPress сайта, можно воспользоваться плагином Global Content Blocks. Плагин не тяжелый, позволяет быстро и удобно вставить в статью или страницу коды HTML, PHP, произвольные коды, формы подписки, рекламу AdSense, текстовые блоки. С его помощью можно вставить код php в шаблон сайта и разместить блоки в две, три колонки. Плагин постоянно обновляется и его можно отнести к лучшим плагинам WordPress.

Скачать и установить

Проходим стандартные шаги . Если ставите плагины по , даю адрес официальной страницы плагина: https://ru.wordpress.org/plugins/global-content-blocks/

Настройка плагина Global Content Blocks

Как таковых, настроек плагина нет. После активации плагина в консоли появляется меню: Global Content Blocks . На странице плагина видим вкладки управления:

  • Manage Blocks (1)- управления блоками плагина;
  • Add a Content Blocks (2) — добавление блоков;
  • Setting (3) — импорт блоков с другого сайта.

Также, в редакторе сайта появляется кнопка добавления блоков плагина.


кнопка добавления блоков Global Content Blocks в редакторе

Вставить произвольный код в посты и страницы WordPress при помощи плагина Global Content Blocks

Работать с плагином несложно:

  • Идем на страницу добавления блока;
  • Даем новому блоку название (1),
  • Даем ему латинское название для шорткода (2);
  • Выбираем тип контента (3);
  • Можно выбрать картинку (5), которая будет помещена в блок;
  • Вставляем содержание блока (4).

Создаем новый блок Global Content Blocs

Всем привет! На сегодня у меня запланирована небольшая инструкция — как на блоге для пользователей приходящих с поиска выводить произвольный код в любом месте шаблона.

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

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

В качестве примера я привел подписку, но также можно организовать показ рекламных строк, любые объявления и так далее. И естественно, что место расположения не ограничивается шапкой, данный код допустимо выводить в любом месте шаблона. Приступим к практической части реализации скрипта.

Функция, определяющая источник запроса (HTTP referer)

Первым делом создаем новую функцию fromsearch (условный перевод — «из поиска»), название функции может быть любым, главное учтите и используйте в дальнейшем принятое название. Эта функция предназначена для определения источника перехода — будь то ПС, другой сайт и т.п. Нас интересует ПС. Итак, на WordPress в файл шаблона functions.php вставляем код:

function fromsearch () { $ref = $_SERVER["HTTP_REFERER" ]; $SE = array ("/search?" , "images.google." , "search." , "yandsearch" , "/search/" , ".yahoo." ); foreach ($SE as $source) { if (strpos($ref,$source)!==false ) return true ;} return false ;}

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

Вывода произвольного кода при переходах с поисковых систем

Следующим шагом необходимо заранее заданную функцию вывести на странице. Для этого используем следующие строки, которые вставляем в файл шаблона, для примера я использую index.php:

class ="showfromsearch" > ПРОИЗВОЛЬНЫЙ КОД div >

Например у меня полный код с подпиской выглядел так:

class ="showfromsearch" > <div class ="warning" > Впервые на блоге? Подпишитесь на рассылку! div > div >

Все, на этом вывод функции закончен, переходим к следующему шагу.

Стили оформления блока, выводящего код для посетителей с ПС

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

Все зависит от верстки и места, где выводится данная функция. Внешне моя строка, которую привожу в примере, выглядела следующим образом:

Блок, отмеченный красной стрелкой показывается только пользователям, пришедшим с поисковых систем, для всех других переходов он не виден. Приведу свой пример, для которого в файле style.css задаю стиль оформления:

.showfromsearch { width :900px ; border :0 ; text-align :left; margin :auto; padding :0 ; }

И вновь обращаю Ваше внимание: данный стиль присвоен блоку с функцией, т.е. мы настраиваем именно вид и расположение самого блока, а не то что в нем находится. Для внутреннего содержимого используются свои стили. Если посмотреть выше на скриншот, где я выводил подписку, то рамка вокруг строки, фон и изображение присвоены для другого класса (warning ), в который заключен текст.

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

В продолжение темы:
Устройства

Мы с Вами познакомились с основными компьютерными терминами и определениями. Практически изучили назначение всех (почти) клавиш на клавиатуре конкретно на примерах. Не...

Новые статьи
/
Популярные