622

Мегафон встраивает рекламу - часть вторая

В общем сразу к делу.

Решил я вчера протестировать свой сайт на мобилках, выгрузил на хостинг, захожу с iPhone супруги... и здравствуйте. В середине сайта, здоровенный блок рекламы (к которому я конечно же не имею отношения), который мало того, что находится на коммерческом ресурсе без согласия владельца, так еще и контент перекрывает. Методом научного тыка, я выявил виновника моего подгоревшего от возмущения седалища - им оказался мегафон (в наглую встраивает код в страницу при загрузке на устройство). Я об этом соответственно не знал и начал гуглить. Собственно нашел упоминания об этом,  на Пикабу в том числе - ТЫЦ. Новость довольно старая. Но пост не об этом, а о защите от подобной наглости.

Не буду никого грузить лишней информацией, все отлично гуглится, объясню кратко - есть такая штука CSP (Content Security Policy), которую можно указывать как в мета на отдельных страницах, так и в файле .htaccess (что вообще очень круто). Настраиваем эту штуку на своем сайте - запуск левых скриптов и т.д. не будет осуществляться. Просто так, пихать куда попало ее не стоит, так как функционировать не будут и полезные вещи - например подключаемые веб-шрифты (вообще шрифты, библиотеки и прочее лучше подключать локально, но это другая история), виджеты, ролики с ютуба и т.д., их нужно будет заносить в исключения.

Как пример - у меня на сайте есть ролики с ютуба, Яндекс карта и виджет сообщества ВК, чтобы они подгружались, а остальное блокировалось (включая рекламу мегафона), необходимо добавить в .htaccess

<IfModule mod_headers.c>
Header set X-XSS-Protection "1; mode=block"
Header set X-Frame-Options "DENY"
Header set Content-Security-Policy "default-src 'self' https://*.youtube.com https://vk.com; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://*.yandex.ru; object-src 'self' *; img-src 'self' * data:; font-src 'self' * data:; connect-src 'self' *; style-src 'unsafe-inline' 'unsafe-eval' 'self' *;"
</IfModule>
Лучше конечно же дублировать домены и прописать все варианты, просто я ленивый. Например:

*.youtube.com http://*.youtube.com https://*.youtube.com youtube.com http://youtube.com https://youtube.com

После этого, всякие какашки могут отправиться в пешее эротическое. Так же хочу обратить внимание - это просто пример, для каждого сайта будут свои требования и задачи, и просто бездумно копировать не стоит. Почитайте про CSP - информации очень много, я лишь озвучил проблему (повторно) и предложил рабочий вариант (очень кривой в моем исполнении) ее решения. Я понимаю, что прошаренные создатели контента и так все это знают, но огромное кол-во частников и любителей могут и не иметь представления о подобном. А когда каждый веб разработчик будет обладать инструментами, знать о проблеме и решать - проблема потеряет актуальность. Спасибо за внимание, надеюсь был полезен.

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества