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

De ministros do STF a deputados: hackers vendiam 200 mi de dados de pessoas

Unsplash
Imagem: Unsplash

Gabriel Dias

Colaboração para Tilt, em Macapá

29/06/2023 04h00Atualizada em 29/06/2023 13h11

A PCDF (Polícia Civil do Distrito Federal) prendeu na última semana uma dupla de suspeitos de serem cibercriminosos que comercializavam mais de 200 milhões de dados sigilosos de brasileiros. Considerando os valores aplicados na venda dessas informações, é possível que os dois tenham faturado entre R$ 217 mil e R$ 508 mil.

O caso já é considerado pelas autoridades policiais como um dos maiores vazamentos de dados sigilosos identificado até hoje no Brasil.Em perícia realizada pelo Instituto de Criminalística da PCDF foram encontrados dados do governador do DF, Ibaneis Rocha (MDB), de deputados distritais e federais, além de ministros do STF (Supremo Tribunal Federal).

Segundo o delegado Eric Sallum, da 9ª Delegacia de Polícia do Distrito Federal, responsável pelas investigações, entre as informações pessoais comercializadas estavam:

  • números de celular,
  • endereços residenciais,
  • email,
  • fotos,
  • s digitais,
  • registros de veículos e de armas.

As investigações agora seguem para descobrir a origem do esquema criminoso e quem foram os compradores do o aos dados. A polícia não informou os nomes dos dois nem as identidades dos parlamentares e juízes que tiveram as informações adas e vendidas.

Descobrimos indícios de que grande parte dessas informações é de hackeamento de órgãos públicos. Mas, também detectamos um comércio ilegal por pseudoempresas de proteção de crédito. À revelia da Lei Geral de Proteção de Dados, os dados pessoais da população brasileira têm sido vendidos massivamente às escondidas e sem qualquer critério de sua destinação. Eric Sallum, delegado da Polícia do DF

Como os criminosos agiam

A polícia informou que, em posse desses dados, os compradores poderiam realizar fraudes eletrônicas, elaborar dossiês contra autoridades públicas e violar a intimidade dos cidadãos.

"Todas essas informações estavam disponíveis na internet, organizadas de maneira profissional e estruturada, de forma que, qualquer leigo, em rápidos cliques, tivesse o à vida de qualquer cidadão brasileiro", afirmou o delegado.

A PCDF descobriu que a dupla conseguia reunir dados de empresas e veículos registrados nos nomes das vítimas, além de informações sobre parentes e vizinhos.

Além disso, os suspeitos também tinham o às câmeras de OCR (leitura de placas), o que dava a eles o poder de saber a por onde as vítimas aram nas rodovias de todo o país.

Os hackers presos na operação serão investigados pelos crimes de:

  • divulgação de segredo,
  • invasão de dispositivo informático,
  • organização criminosa,
  • lavagem de dinheiro.

Venda ilegal dos dados e investigação

A investigação começou na delegacia do Lago Norte (DF), bairro nobre de Brasília, após a análise de 100 inquéritos de pessoas vítimas de golpes ao longo de um ano.

Os dados pessoais dos brasileiros eram comercializadas na dark net, uma espécie de internet oculta.

Agentes da polícia se infiltraram em grupos criminosos do Telegram e conseguiram comprar o a painéis de consulta com informações sobre os dados roubados.

Esse o era vendido em pacotes que expiravam dentro de 7, 15 ou 30 dias. Eles custavam, respectivamente, R$ 150, R$ 200 e R$ 350.

A polícia concluiu que esses painéis eram a fonte de informação dos criminosos. A partir deles, eram selecionadas as vítimas e montadas as estratégias para enganá-las.

Segundo Sallum, a investigação também obteve os logs de todos os 1.453 usuários que haviam comprado o ao com dados pessoais sigilosos de cidadãos e autoridades. Essas pessoas também serão objeto de investigação.

No caso da dupla de hackers, a operação envolveu mandados de prisão temporária, busca e apreensão, além do bloqueio de contas bancárias e de criptomoedas (um tipo de dinheiro virtual).

Os próximos os

Segundo a polícia, o objetivo é comprovar como os criminosos tinham o aos dados da população brasileira, em especial, o hackeamento online das câmeras de reconhecimento de placas.