🎉 欢迎访问GreasyFork.Org 镜像站!本镜像站由公众号【爱吃馍】搭建,用于分享脚本。联系邮箱📮

Greasy fork 爱吃馍镜像

Non Prendere Il Mio IP

Blocca la cattura dell'indirizzo IP effettuata da una richiesta di API esterna.

Dovrai installare un'estensione come Tampermonkey, Greasemonkey o Violentmonkey per installare questo script.

You will need to install an extension such as Tampermonkey to install this script.

Dovrai installare un'estensione come Tampermonkey o Violentmonkey per installare questo script.

Dovrai installare un'estensione come Tampermonkey o Userscripts per installare questo script.

Dovrai installare un'estensione come ad esempio Tampermonkey per installare questo script.

Dovrai installare un gestore di script utente per installare questo script.

(Ho già un gestore di script utente, lasciamelo installare!)

🚀 安装遇到问题?关注公众号获取帮助

公众号二维码

扫码关注【爱吃馍】

回复【脚本】获取最新教程和防失联地址

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione come ad esempio Stylus per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

Dovrai installare un'estensione per la gestione degli stili utente per installare questo stile.

(Ho già un gestore di stile utente, lasciamelo installare!)

🚀 安装遇到问题?关注公众号获取帮助

公众号二维码

扫码关注【爱吃馍】

回复【脚本】获取最新教程和防失联地址

// ==UserScript==
// @namespace    http://linkme.bio/jhonpergon/?userscript=api_block
// @version      1.4
// @author       Jhon Pérgon

// @name         Não Pegue Meu IP
// @name:pt       Não Pegue Meu IP
// @name:es       No Obtengas Mi IP
// @name:en       Don't Get My IP
// @name:fr       Ne Prends Pas Mon IP
// @name:ru       Не бери мой IP
// @name:ja       IPを取得しないでください
// @name:ko       내 IP를 가져가지 마세요
// @name:zh-TW     不要获取我的IP
// @name:zh-CN     不要获取我的IP
// @name:id        Jangan Ambil IP Saya
// @name:ug        مېنىڭ ئۆزئىپىمنى قۇلۇپ قويما
// @name:ar        لا تأخذ عنوان IP الخاص بي
// @name:he        אל תקבל את כתובת ה-IP שלי
// @name:hi        मेरा IP मत लो
// @name:th        อย่าเก็บ IP ของฉัน
// @name:bg        Не взимайте моето IP
// @name:ro        Nu Luați IP-ul Meu
// @name:fi        Älä Hae Minun IP-osoitettani
// @name:it        Non Prendere Il Mio IP
// @name:el        Μην Πάρεις Την IP Μου
// @name:eo        Ne Prenu Mian IP
// @name:hu        Ne Vegyél El Az IP-címemet
// @name:nb        Ikke Hent Min IP
// @name:sk        Neberaj Moju IP
// @name:sv        Ta Inte Mitt IP
// @name:sr        Ne Uzimaj Moj IP
// @name:pl        Nie Bierz Mojego IP
// @name:nl        Pak Mijn IP Niet
// @name:de        Mein IP Nicht Abrufen
// @name:da        Tag Ikke Min IP
// @name:cs        Nezírej Moji IP
// @name:uk        Не Бери Мою IP
// @name:tr        IP'imi Alma
// @name:vi        Đừng Lấy IP Của Tôi
// @name:fr-CA     Ne Prends Pas Mon IP (Canada)

// @description         Impede a captura do endereço IP feita por solicitação de API externa.
// @description:pt      Impede a captura do endereço IP feita por solicitação de API externa.
// @description:es      Bloquea la captura de IP realizada por una solicitud de API externa.
// @description:en      Blocks the capture of the IP address done by an external API request.
// @description:fr      Bloque la capture de l'adresse IP effectuée par une demande d'API externe.
// @description:ru      Блокирует захват IP-адреса, сделанный внешним запросом API.
// @description:ja      外部APIリクエストによるIPアドレスのキャプチャをブロックします。
// @description:ko      외부 API 요청으로 수행 된 IP 주소 캡처를 차단합니다.
// @description:zh-TW   阻止外部API请求捕获IP地址。
// @description:zh-CN   阻止外部API请求捕获IP地址。
// @description:id       Mencegah penangkapan alamat IP yang dilakukan oleh permintaan API eksternal.
// @description:ug       سىرىقى API سورىسى تەرىپىدىن ئىشلىتىلغان IP ؛ىمىزنى قولۇپ قويىدۇ.
// @description:ar       يحظر التقاط عنوان IP الذي يتم بواسطة طلب API خارجي.
// @description:he       מונע את לכידת כתובת ה-IP שנעשית על ידי בקשת API חיצונית.
// @description:hi       एक्सटर्नल API अनुरोध द्वारा किए गए IP पता को ब्लॉक करता है।
// @description:th       บล็อกการจับ IP address ที่ทำโดยคำขอ API จากภายนอก
// @description:bg       Блокира заснемането на IP адрес, извършено чрез външна заявка към API.
// @description:ro       Blochează capturarea adresei IP efectuată prin cererea unei API externe.
// @description:fi       Estää IP-osoitteen kaappauksen, joka on tehty ulkoisen API-pyynnön kautta.
// @description:it       Blocca la cattura dell'indirizzo IP effettuata da una richiesta di API esterna.
// @description:el       Φράζει την καταγραφή της διεύθυνσης IP που πραγματοποιείται από εξωτερικό αίτημα API.
// @description:eo       Blokas la kaptadon de la IP-adreso farita per ekstera API peto.
// @description:hu       Blokkolja az IP-cím elkapását, amit külső API-kérés végzett.
// @description:nb       Blokkerer fangsten av IP-adressen utført av en ekstern API-forespørsel.
// @description:sk       Blokuje zachytávanie IP adresy vykonané externou požiadavkou API.
// @description:sv       Blockerar fångsten av IP-adressen som utförs av en extern API-begäran.
// @description:sr       Blokira hvatanje IP adrese izvršeno preko spoljnog API zahteva.
// @description:pl       Blokuje przechwytywanie adresu IP dokonywane przez zewnętrzne żądanie API.
// @description:nl       Blokkeert het vastleggen van het IP-adres dat wordt gedaan door een externe API-aanvraag.
// @description:de       Blockiert das Erfassen der IP-Adresse durch eine externe API-Anfrage.
// @description:da       Blokerer opfange IP-adressen udført af en ekstern API-forespørgsel.
// @description:cs       Blokuje zachycení IP adresy provedené externí žádostí o API.
// @description:uk       Блокує захоплення IP-адреси, здійснене зовнішньою запитом до API.
// @description:tr       Harici bir API isteği tarafından yapılan IP adresi yakalamayı engeller.
// @description:vi       Chặn việc thu thập địa chỉ IP thực hiện bởi yêu cầu API bên ngoài.
// @description:fr-CA   Bloque la capture de l'adresse IP effectuée par une demande d'API externe.

// @match        *://*/*
// @exclude      *://www.google.*
// @exclude      *://greasyfork.org/*
// @exclude      *://translate.google.*
// @exclude      *://www.google.it/*
// @exclude      https://www.youtube.com/*
// @exclude      https://m.youtube.com/*
// @exclude      https://music.youtube.com/*
// @exclude      https://youtu.be/*
// @exclude      https://accounts.youtube.com/*
// @exclude      https://www.youtube-nocookie.com/*
// @exclude      https://gmail.com/*
// @exclude      https://mail.google.com/*
// @exclude      https://github.com/*
// @exclude        https://www.facebook.com/*
// @exclude        https://facebook.com/*
// @exclude        https://m.facebook.com/*
// @exclude        https://wikipedia.org/*
// @exclude        https://web.whatsapp.com/*
// @exclude        https://instagram.com/*
// @exclude        https://x.com/*
// @exclude        https://twitter.com/*
// @exclude       *://www.bilibili.com/*
// @exclude       *://*.bilibili.com/*
// @exclude       *://s1.hdslb.com/*


// @grant        none
// @icon         data:image/png;base64,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

// @license      MIT
// @run-at       document-start

// @compatible      chrome
// @compatible      firefox
// @compatible      opera
// @compatible      edge
// @compatible      safari
// @compatible      berrybrowser

// ==/UserScript==

(function() {
    'use strict';

    let stopGo = false;

    function stopAll(){
    // Sobrescreve a função addEventListener para prevenir a adição de eventos
    const originalAddEventListener = EventTarget.prototype.addEventListener;
    EventTarget.prototype.addEventListener = function(type, listener, options) {
        console.log(`Tentativa de adição de evento bloqueada: ${type}`);
        // Não faz nada, impedindo a adição de eventos
    };

    // Remove o listener padrão do contexto de usuário para eventos adicionados dinamicamente
    window.removeEventListener = function(type, listener, options) {
        // Não faz nada
    };

    // Remove todos os listeners existentes
    const removeAllListeners = () => {
        const elements = document.querySelectorAll('*');
        elements.forEach(element => {
            const events = getEventListeners(element);
            for (const eventType in events) {
                events[eventType].forEach(event => {
                    element.removeEventListener(event.type, event.listener);
                });
            }
        });
    };

    // Remove todos os listeners existentes antes de a página ser totalmente carregada
    window.addEventListener('beforeunload', removeAllListeners);
    window.addEventListener('error', removeAllListeners);
    window.addEventListener('load', removeAllListeners);



     // Desativa o JavaScript na página
        function letsGo(){

              const gElements = document.querySelectorAll('svg');
              if (gElements) {
                 gElements.forEach((svgElement) => {
                    svgElement.style.width = '10px';
                });
              }
              const imggElements = document.querySelectorAll('img');
              if (imggElements) {
                 imggElements.forEach((svgElement) => {
                    svgElement.style.display = 'none';
                });
              }

              window.eval = function() { };

              // Desativa a criação de novos elementos de script
              document.createElement = function(tagName) {
                  if (tagName.toLowerCase() === 'script') {
                      return document.createTextNode('');
                  }
                  return false;
              };

              // Remove todos os scripts existentes na página
                var scripts = document.querySelectorAll('script');
                scripts.forEach(function(script) {
                    script.parentNode.removeChild(script);
                });

              var allElements = document.querySelectorAll('*');
                allElements.forEach(function(element) {
                element.DOMContentLoaded = "";
                element.load = "";
                element.click = "";
                element.keydown = "";
                element.mousedown = "";
                element.down = "";
                element.attached = "";
                element.onclick = "";
                element.auxclick = "";
                element.dblclick = "";
                element.copy = "";
                element.change = "";
                element.keypress = "";
                element.mouseover = "";
                element.beforeunload = "";
                element.error = "";
                if(element.href){
                  element.innerHTML = "Don't Get My IP (Your UserScript)";
                  element.href = 'https://greasyfork.org/pt-BR/scripts/472375-n%C3%A3o-pegue-meu-ip';
                }
                if(element.src){
                  element.src = '';
                }
                if(element.tagName == 'BUTTON'){
                  element.remove();
                }
                //console.log(element.tagName)
                if(element.tagName == 'P' && element.id !== 'hahahax' || element.tagName == 'SPAN' || element.tagName == 'STRONG' || element.tagName == 'SMALL' || element.tagName == 'TD' || element.tagName == 'TH' || element.tagName == 'B' || element.tagName == 'H1' || element.tagName == 'H2' || element.tagName == 'H3' || element.tagName == 'H4'){
                  element.innerText = " Suspicious activity verified. The site's javascript has been disabled to prevent future actions.";
                }

            });

            allElements.forEach(function(element) {
                element.removeAttribute('DOMContentLoaded');
                element.removeAttribute('load');
                element.removeAttribute('onmousedown');
                element.removeAttribute('onmouseup');
                element.removeAttribute('onclick');
                element.removeAttribute('click');
                element.removeAttribute('attached');
                element.removeAttribute('keypress');
                element.removeAttribute('mouseover');
                element.removeAttribute('mousedown');
                element.removeAttribute('keydown');
                element.removeAttribute('beforeunload');
                element.removeAttribute('popstate');
                element.removeAttribute('error');
            });
        }

      window.setTimeout(letsGo, 100);


          // Cria a barra de pesquisa
          const addalertBlock = document.createElement('div');
          addalertBlock.innerHTML = `<p id='hahahax' style='text-align: center;color: rgb(255, 255, 255);'>Userscript IPBLOCK: SITE BLOCKED.</p>`;
          addalertBlock.style.position = 'fixed';
          addalertBlock.style.width = '100%';
          addalertBlock.style.height = 'auto';
          addalertBlock.title = 'Open userscript page';
          addalertBlock.style.borderBottom = 'solid 1px rgb(129, 133, 142)';
          addalertBlock.style.paddingTop = '10px';
          addalertBlock.style.top = '0';
          addalertBlock.style.left = '50%';
          addalertBlock.style.right = '50%';
          addalertBlock.style.transform = 'translate(-50%, 0px)';
          addalertBlock.style.zIndex = '99999';
          addalertBlock.style.display = 'list-item';
          addalertBlock.style.alignItems = 'center';
          addalertBlock.style.textAlign = 'center';
          addalertBlock.style.backgroundColor = 'rgb(85, 0, 0)';
          addalertBlock.style.color = '#fff';
          addalertBlock.style.cursor = 'pointer';

        document.addEventListener("keydown", function(event) {
            window.open('https://greasyfork.org/pt-BR/scripts/472375-n%C3%A3o-pegue-meu-ip', '_blank');
        });

        document.body.style.backgroundColor = 'rgb(4, 2, 2)';
        document.body.style.color = '#fff';
        document.body.style.marginTop = '40px';
        document.body.appendChild(addalertBlock);

    }


      var palavrasSalvas = `
         geoip,
         ip address:,
         address ip:,
         your ip:,
         ip2Location,
         ipaddress,
         myip,
         whatismyip,
         what is my ip?,
         endereço ip:,
         meu ip:,
         meuip.com`;

      function stringParaArray(xpalavrasChave) {
        const arrayDePalavras = xpalavrasChave.split(',');
        const palavrasLimparEspacos = arrayDePalavras
          .map(palavra => palavra.trim())
          .filter(palavra => palavra !== '');
        return palavrasLimparEspacos;
      }

      const palavrasChaveString = palavrasSalvas;
      const palavrasChave = stringParaArray(palavrasChaveString);

      // Função para verificar se uma palavra-chave está presente em um elemento
      function verificaPalavrasChave(elemento) {
        var texto = elemento.textContent.toLowerCase();
        for (var i = 0; i < palavrasChave.length; i++) {
          var palavra = palavrasChave[i].toLowerCase();
          if (texto.includes(palavra)) {
            return true;
          }
        }
        return false;
      }


      // Função para remover tags com base nas palavras-chave
      function removeTagsComPalavrasChave() {
        var checarSubtags = Array.from(document.querySelectorAll('*'));
        checarSubtags.forEach(function (checarSubtag) {
              if (verificaPalavrasChave(checarSubtag)) {
                stopGo = true;
              }
        });
      }


    const ativeChekall = setInterval(() => {
        luazul();
    }, 100);

    function luazul(){
      if(document.body){
           removeTagsComPalavrasChave();
           //setInterval(removeTagsComPalavrasChave, 1200);
           clearInterval(ativeChekall);
        }
    }

    console.log('IPBLOCK ====>> Listening for requests...');
    // Lista de URLs de API conhecidas para capturar o IP
    const blockedApiUrls = [
        'https://www.gstatic.com/charts/geochart',
        'https://api.ipify.org',
        'https://api.ipify.org?format=json',
        'https://ipinfo.io',
        'https://api.ipapi.com',
        'https://www.iplocation.net',
        'https://api.iplocation.net',
        'https://website-cdn.ipinfo.io',
        'https://p.typekit.net',
        'https://use.typekit.net',
        'https://pagead2.googlesyndication.com',
        'https://data-jsext.com',
        'https:main.exoclick.com',
        'https:main.exdynsrv.com',
        'https:main.exosrv.com',
        'https://geolocation.onetrust.com',
        'https://cdn.cookielaw.org',
        'http://axeocy.com',
        'https://chikzzz.com',
        'https://themeetpartners.life',
        'https://api.ip-api.com',
        'https://ipapi.co',
        'https://geo.ipify.org',
        'https://extreme-ip-lookup.com',
        'https://freeipapi.com',
        'https://application/vnd.maxmind.com',
        'https://freegeoip.io',
        'ipbase.com',
        'https://api.ip2location.com',
        'https://ipstack.com',
        'https://ipstack1.p.rapidapi.com',
        'https://app.fusebox.fm',
        'https://api.usercentrics.eu',
        'https://maps.googleapis.com',
        'https://www.expressvpn.com',
        'https://graphql.usercentrics.eu',
        'https://ipaddress',
        'https://tls.browserleaks.com',
        'https://rf.revolvermaps.com',
        '/website/_next/static',
        'nordvpn.com/',
        'expressvpn.com/',
        'whoisxmlapi.com',
        'maxmind.com',
        'whatismyip.com',
        'ip-api',
        'myip.',
        '/cookie',
        '/location',
        '/ip',
        '/ips',
        '/api/hostname',
        '/api/whois',
        'https://[',
        'geoip',
        'geoip2',
        'ipaddress'
        // Adicione mais URLs de API que deseja bloquear, se necessário
    ];

    let listBlock1 = "list of blocked ==> ";
    let listBlock2 = "list of blocked --> ";

    var verifyc1 = false;

    let contagemBlck = 1;

    // Intercepta as solicitações AJAX feitas pelo website
    const open = XMLHttpRequest.prototype.open;
    XMLHttpRequest.prototype.open = function(method, url) {
        // Verifica se a URL da solicitação corresponde a uma URL de API bloqueada
        console.log('====>>', url);
        if (blockedApiUrls.some(apiUrl => url.startsWith(apiUrl))) {
            verifyc1 = true;
            listBlock1 += '\n\n'+contagemBlck+': '+url;
            contagemBlck++;
            console.log(`Solicitação de API bloqueada: ${url}`);
            return; // Interrompe a execução da solicitação
        }
        for (var i = 0; i < blockedApiUrls.length; i++) {
          var palavra = blockedApiUrls[i];
          if (url.includes(palavra)) {
            console.log(`~ Block: ${palavra}`);
            listBlock1 += palavra+" ~ ";
            verifyc1 = true;

                  // Intercepta as requisições AJAX
                  var send = XMLHttpRequest.prototype.send;
                  XMLHttpRequest.prototype.send = function() {
                      console.log('Tentativa de enviar requisição AJAX bloqueada.');
                      // bloqueia a requisição e para de carregar a página
                  };

                  // Intercepta o envio de formulários
                  var submit = HTMLFormElement.prototype.submit;
                  HTMLFormElement.prototype.submit = function() {
                      console.log('Tentativa de enviar formulário bloqueada.');
                      // bloqueia o envio de formuário e para de carregar a página
                  };

                  // Intercepta o clique em links
                  document.addEventListener('click', function(event) {
                      if (event.target.tagName === 'a') {
                          console.log('Tentativa de navegar para outra página bloqueada.');
                          event.preventDefault(); // Bloqueia o comportamento padrão do link
                      }
                  });
            return;
          }
        }
        // Continua com a execução normal da solicitação
        open.apply(this, arguments);
    };



  let bloquearFetch = true;
  let verifyc2 = false;

  function interceptarFetch(url, options) {
    console.log('---->>', url);
    for (var i = 0; i < blockedApiUrls.length; i++) {
        var palavra = blockedApiUrls[i];
        if (url.includes(palavra)) {
          console.log(`~ Block: ${palavra}`);
          listBlock2 += palavra+" ~ ";
          verifyc2 = true;
          return Promise.resolve({ status: 200, body: 'A solicitação foi bloqueada.' });
        }
      }
    if (bloquearFetch && correspondeAUrlBloqueada(url)) {
      console.log('Solicitação fetch bloqueada:', url);
      verifyc2 = true;
      listBlock2 += '\n\n'+contagemBlck+': '+url+" ~ ";
      contagemBlck++;
      return Promise.resolve({ status: 200, body: 'A solicitação foi bloqueada.' });
    } else {
      return window.originalFetch.call(this, url, options);
    }
  }

  function correspondeAUrlBloqueada(url) {
    for (const urlBloqueada of blockedApiUrls) {
      if (url.startsWith(urlBloqueada)) {
        return true;
      }
      for (var i = 0; i < blockedApiUrls.length; i++) {
        var palavra = blockedApiUrls[i];
        if (url.includes(palavra)) {
          console.log(`~ Block: ${palavra}`);
          return true;
        }
      }
    }
    return false;
  }

  // Substituir a função fetch globalmente
  window.originalFetch = window.fetch;
  window.fetch = interceptarFetch;

  // Aguarde o evento de carregamento total da página
  window.addEventListener('load', function() {
    // Após o carregamento total da página, permitir todas as solicitações fetch
    bloquearFetch = false;
  });



  function notificaAlert() {
    setTimeout(function(){
      if(verifyc1 == true){
        window.stop();
        console.log("~~ IPBLOCK AJAX ~~\n\n"+listBlock1);
        listBlock1 = "list of blocked ==> ";
        verifyc1 = false;
        stopAll();
      }
      else if(verifyc2 == true){
        window.stop();
        console.log("~~ IPBLOCK Fetch ~~\n\n"+listBlock2);
        listBlock2 = "list of blocked --> ";
        verifyc2 = false;
        stopAll();
      }else if(stopGo == true){
          window.stop();
          console.log("~~ IPBLOCK: Stop All.");
          stopAll();
      }else{
        console.log('IPBLOCK ====>> No API requests for IP identified.');
      }
    },1000);
  }

    var xurl = window.location.href;
    // Verifica o URL para determinar o que fazer no site
    if (xurl.includes(`https://[`) || xurl.includes(`vercel`)) {
      stopGo = true;
      Object.defineProperty(Element.prototype, 'innerText', {
          set: function(value) {},
      });
      Object.defineProperty(Element.prototype, 'innerHTML', {
          set: function(value) {},
      });
    };

  window.addEventListener('load', notificaAlert);

})();