;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Além da Lava Jato: investigação aponta para centenas de celulares hackeados

24.out.2017 - O então juiz Sergio Moro e o procurador Deltan Dallagnol  - HÉLVIO ROMERO/ESTADÃO CONTEÚDO
24.out.2017 - O então juiz Sergio Moro e o procurador Deltan Dallagnol Imagem: HÉLVIO ROMERO/ESTADÃO CONTEÚDO

Fausto Macedo

Em São Paulo

24/07/2019 10h09

A investigação sobre a invasão de telefones de autoridades, entre elas o do ministro Sérgio Moro (Justiça e Segurança Pública) e do procurador da República Deltan Dallagnol, indica que centenas de celulares foram hackeados ou sofreram tentativas de hackeamento, em uma ação "muito além da Lava Jato".

Quatro suspeitos de realizarem as invasões foram detidos ontem pela Operação Spoofing da Polícia Federal - entre eles Walter Delgatti Neto, Gustavo Santos e Suellen Priscila de Oliveira. Os presos foram transferidos para Brasília.

Além dos mandados de prisão temporária, os agentes federais cumpriram ordens de busca e apreensão em São Paulo, Araraquara e Ribeirão Preto, cidades do interior paulista. A ação, que apreendeu ainda significativa quantidade de dinheiro em espécie, foi determinada pelo juiz da 10ª Vara Federal de Brasília, Vallisney de Souza Oliveira.

O inquérito sobre a ação de hackers é mantido em sigilo e está sendo conduzido pelo delegado Luiz Flávio Zampronha, que investigou o esquema do mensalão.

O mandado de buscas indica que o desembargador federal Abel Gomes, do Tribunal Regional Federal da 2ª Região (TRF-2), no Rio, o juiz Flávio Lucas, da 18ª Vara Federal do Rio, e os delegados da PF Rafael Fernandes, em São Paulo, e Flávio Vieitez Reis, em Campinas (SP), também teriam sido alvo de hackers.

Em junho, o jornal O Estado de S. Paulo revelou que, além de Moro e Deltan, pelo menos outras oito autoridades que atuam ou atuaram em investigações ligadas à Operação Lava Jato em quatro estados e um jornalista foram alvo de tentativas ou invasão por parte de hackers. Integrantes do Conselho Nacional do Ministério Público (CNMP) também foram alvo de ataque.

Também ontem, a PF informou que vai investigar a suspeita de invasão nos aparelhos celulares do ministro da Economia, Paulo Guedes, e da deputada Joice Hasselmann (PSL-SP).

PF prende quatro suspeitos de invasão em celular de Moro

Band Notí­cias