Четверг , 25 Апрель 2024
ДомойБезопасностьВся правда об использовании iframe вместо баннеров-картинок

Вся правда об использовании iframe вместо баннеров-картинок

Вы любите свой сайт? Зарабатываете на нём? Радуетесь, когда рекламодатели сами выходят на вас и предлагают «вкусные» условия для размещения рекламы?

Осторожно, вы в группе риска!

Разберём, как это происходит. Вы открываете почтовый ящик и видите новое письмо с темой «Мой любимый блог: Реклама!!!» (название условное, подобной настройкой занимается владелец сайта). В письме русским по белому предлагается выкупить место под баннер, но с маленьким условием: потенциальный рекламодатель просит разместить не картинку в ссылке, а iframe. Объяснения бывают разные:

  • Мы планируем часто менять изображения, ссылаться на разные страницы сайта, чтобы оценить конверсию, и не хотим очень уж напрягать Вас.
  • Нам важен географический таргетинг.
  • Мы сотрудничаем с множеством рекламодателей и физически не можем бла-бла-бла…

Если места выкупаются, да ещё для оплаты используется повышающий коэффициент, правда в том, что никакой разницы нет, почему именно так.

iframe вставки — зло или добро

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

Дело движется, деньги капают, все счастливы.

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

Как же так? Взломали?!!

Не торопитесь делать выводы.

Забегая вперёд, сто́ит отметить, что проверка всех файлов и таблиц базы данных может не найти изменений.

Попробуйте набрать в смартфоне адрес своего ресурса. Если «повезёт», с удивлением обнаружите, что происходит перенаправление на другой сайт.

Всё ещё ищете виновного? Тогда вспомните про тег iframe, который при каждом заходе транслирует один и тот же баннер. Непонятно?

Исторически сложилось, что страница во фрейме с помощью Javascript может осуществить редирект страницы, её вызвавшей. Небольшой пример, с помощью которого можно воспроизвести этот «баг».

Код первого файла скопируйте в файл testexplo.html (название можете задать любым):

<!doctype html>
<html>
<head>
    <meta http-equiv="content-type" content="text/html;charset=utf-8">
    <title>Мой супер-сайт</title>
</head>
<body>
<header>header</header>
<iframe width="880" height="290" src="explo.html"></iframe>
<footer>footer</footer>
</body>
</html>

Теперь создайте файл explo.html с таким содержимым:

<!doctype html>
<html>
<head>
    <meta http-equiv="content-type" content="text/html;charset=utf-8">
    <title>Explo</title>
</head>
<body>
<h1>TEST</h1>
<script type="text/javascript">
    var ua = navigator.userAgent;
    if (ua.search(/android/i) > -1) {
        window.top.location = 'https://www.android.com/';
    } else if (ua.search(/iphone/i) > -1) {
        window.top.location = 'https://www.apple.com/ru/';
    } else if (ua.search(/firefox/i) > -1) alert('Hello, Firefox!');
    else if (ua.search(/msie/i) > -1) alert('Hello, IE!');
    else if (ua.search(/opera/i) > -1) alert('Hello, Opera!');
    else if (ua.search(/chrome/i) > -1) alert('Hello, Chrome!');
    else if (ua.search(/safari/i) > -1) alert('Hello, Safari!');
    else alert('Hello!');
</script>
</body>
</html>

Для теста закиньте оба файла на свой сайт, в любую папку, а в адресной строке наберите путь:
http://ваш.сайт/путь/к/файлам/testexplo.html

В зависимости от браузера будет выводить соответствующее приветствие. Теперь самое интересное, зайдите на эту страницу со своего смартфона на базе Android или iOS. Оценили степень трагедии?

Таким образом, нечестные покупатели рекламы могут воровать ваших мобильных, либо любых других (по критериям), пользователей.

Код последнего примера написан на Javascript, однако не думайте, что открыв страницу из iframe найдётся что-то подобное. Проверка может выполняться на уровне серверных скриптов, а по её результатам отдаётся либо обычный баннер, либо html код с редиректом.

Ну так что, сдадите баннерное место под iframe? ;-)

Рейтинг: 0

Автор публикации

2 070
не в сети 12 месяцев

x64 (aka andi)

Комментарии: 2893Публикации: 405Регистрация: 02-04-2009
Так себеНеплохоХорошоЗамечательноСупер! (2 голосов, в среднем: 5,00 из 5)
Загрузка...

7 комментариев

  1. Жесть laugh Да это вообще телефоны убийцы … убийцы всего, что хотелось сделать, но не получилось из-за :hover laugh

    Пиши еще про такие вещи, полезно.

    Рейтинг: 0
  2. Андрей, я размещаю с помощью iframe в постах блога свои журналы с эффектом листания. Код этот беру на стороннем сервисе, где действительно со своего аккаунта я вношу изменения в настройках отображаемого журнала, и все это сходу имеет отображения у меня в блоге. Думаю, что владелец известного сервиса не будет страдать всякого рода махинациями, или хз?..

    Рейтинг: 1

Оставить комментарий

Политика конфиденциальности

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

Принять