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

SIM swap: entenda como 'clonagem' de celular leva a 'roubo' de Instagram

SIMcard - justyle/ Shutterstock
SIMcard Imagem: justyle/ Shutterstock

De Tilt, em São Paulo

20/05/2023 13h21Atualizada em 21/05/2023 10h30

Vítima de um golpe, a humorista Livia La Gatto viu sua conta no Instagram ar de uma hora para outra a divulgar um falso investimento. Tudo tática de bandidos para incentivar algumas pessoas a fazer Pix de grandes volumes de dinheiro.

Repaginado para o mundo dos influenciadores, o golpe não é novo e tem nome: SIM swap. No ado, envolvia o roubo de contas do WhatsApp, mas se expandiu para o Instagram.

A tática consiste em pegar perfis de usuários para fazer publicações de vendas se ando pelas vítimas.

A segunda fase do crime é induzir os interessados a realizar transações via Pix. Os enganados nunca veem os produtos comprados chegarem ou os investimentos serem feitos.

A estratégia dos criminosos tem ganhado as redes sociais, pois uma postagem de alguém conhecido não levanta suspeitas.

Nesse método de ataque, os criminosos nem precisam encostar no aparelho celular da vítima. É uma invasão "pelo ar", em que o roubo é feito de forma remota. Muitas vezes, a vítima só fica sabendo quando é tarde, ao ser avisada por conhecidos sobre postagens de vendas nas redes sociais.

A engenharia do golpe

Segundo especialistas em segurança digital ouvidos por Tilt, uma das maneiras de aplicar o golpe é por meio do SIM swap, quando o criminoso "clona" o número de um chip de celular.

Em posse dele, a pessoa consegue ar informações como mensagens, senhas e contas de redes sociais das vítimas. Dessa forma:

  • Para configurar em seu telefone/computador o Instagram da vítima, o criminoso recorre a opção "redefinir senha".
  • Se a vítima tiver configurado a camada de segurança chamada "autenticação em dois fatores/duas etapas", um código de verificação será enviado para o número de telefone cadastrado.
  • É nessa hora que o bandido consegue "clonar" a conta do Instagram. Fala-se popularmente em clonar um perfil, mas o termo mais correto é roubar.

A "clonagem" do chip de celular

A "clonagem" do número de um chip é um processo legítimo, que as operadoras podem fazer. Bandidos, porém, estão se aproveitando indevidamente da situação. Funciona assim:

  • Para fazer o SIM swap, criminosos pegam um chip em branco (limpo);
  • Usando dados da potencial vítima --que podem ser obtidos em vazamento de dados ou publicações nas redes sociais, por exemplo--, eles ligam para a operadora e se am por ela;
  • No contato com as teles, eles solicitam a ativação do novo chip. Alegam, geralmente, que o chip anterior foi perdido ou roubado.

Um falsário liga para a operadora se ando pela vítima, e pede a ativação do número nesse novo chip, fornecendo todos os dados pessoais necessários para fazer esse processo Martha Carbonell, presidente-executiva da Law 360, empresa que implanta a LGPD (Lei Geral de Proteção de Dados) em companhias

  • Sem imaginar que se trata de golpe já que os dados necessários foram confirmados, a operadora realiza a ativação da conta no chip dos bandidos;
  • Com isso, o invasor tem o a ligações, mensagens SMS e senhas da vítima -- caso esteja salvas.

Para o especialista em cibersegurança Leandro Gouvêa, esse tipo de invasão ainda acontece devido às falhas nos sistemas do controle de dados das pessoas.

Grande parte das empresas ainda tem falhas no sistema de manutenção dos dados cadastrais de clientes possibilitando o vazamento de dados, por exemplo. Além disso, na outra ponta do golpe, estão as operadoras que precisam adotar sistemas mais rigorosos no quesito a validação dos dados de seus usuários. É um assunto que ainda precisa ser muito debatido Leandro Gouvêa, especialista em cibersegurança

Como se proteger?

Todos podem adotar algumas medidas para dificultar a vida dos criminosos e aumentar a proteção.

A principal dica dos entrevistados é evitar quando for possível o uso de SMS ou ligação telefônica como método de recuperação de senha de aplicativos. Uma vez que o criminoso tem o seu número, ele certamente tentará reativar dessa forma programas como WhatsApp e suas redes sociais.

"O ideal é que o usuário use aplicativos de tokens [senhas] de o, como Google Authenticator, Authy para proteger senhas e, consequentemente, contas", acrescenta Martha.

Fui vítima do golpe. E agora?

Caso você ou alguém conhecido tenha sido vítima deste golpe, siga o o a o destacado pelo Instagram na Central de Ajuda:

  • Toque em "Obter ajuda para entrar" na tela de ;
  • Digite nome de usuário, endereço de email ou telefone associado à conta e clique em "Enviar link para ";
  • Responda o captcha para confirmar se você é um ser humano e clique em "Avançar";
  • Clique no link para em seu email ou SMS e siga as instruções na tela; opte por um endereço de email ao qual apenas você tenha o.

As orientações valem para:

  • Conta invadida
  • Conta publicando conteúdo não autorizado
  • Email da conta foi alterado
  • Vítima de phishing no Instagram (tipo de golpe que usa iscas para convencer pessoas)

Outros cuidados:

  • Evite postar dados pessoais nas redes sociais. Eles podem ser facilmente usados para enganar você e seus conhecidos.
  • Tenha atenção com códigos recebidos via SMS, quando não houver motivo para recebê-los.
  • Nunca compartilhe o código de ativação do WhatsApp e das redes sociais;
  • Desconfie de telefonemas em que alguém solicite seus dados pessoais e códigos enviados por SMS.

*Com informações de Lucas Carvalho, de Tilt, em São Paulo