Um formulário de verificação pode parecer legítimo enquanto um invasor o usa para disparar envios pagos. O invasor mira fluxos de cadastro, código de verificação ou verificação que permitem a qualquer pessoa disparar um envio. O ataque gera custos de mensagem enquanto uma parte ao longo da rota se beneficia.
O setor também chama SMS pumping de tráfego artificialmente inflado.
Por que alguém faz isso?
Porque enviar um SMS para certos destinos movimenta dinheiro, e parte dele pode ser capturada adiante na cadeia.
Terminar uma mensagem custa para o remetente e remunera participantes ao longo da rota. Quando um atacante controla ou é pago por um participante dessa rota, gerar tráfego para ela é diretamente lucrativo. Ele não precisa ler os códigos de verificação nem comprometer nenhuma conta: o envio em si é o produto.
É isso que torna o pumping diferente da maioria dos abusos. Não há tomada de conta para detectar nem dados para proteger. O dano é a fatura, e ele se acumula enquanto cada solicitação individual parece legítima.
Como é a aparência?
Um pico com um formato distinto, e o formato importa mais do que o tamanho.
- Concentrado em destinos incomuns. As solicitações se agrupam em códigos de país e faixas de números que você normalmente não atende, muitas vezes com taxas de terminação altas.
- Quase nenhuma conclusão. Códigos de verificação são solicitados e nunca digitados, então a proporção entre envios e verificações bem-sucedidas desmorona.
- Números que parecem sintéticos. Faixas sequenciais ou padronizadas, em vez da dispersão típica de clientes reais.
- Uma origem difícil de bloquear por identidade. As solicitações chegam de muitos endereços, porque o fluxo abusado não exige uma conta.
Esse último ponto é o motivo pelo qual a limitação de requisições por usuário é fraca sozinha: não há usuário. O abuso mora na parte do seu produto que deliberadamente funciona para desconhecidos.
Como posso impedir?
Quatro medidas, aproximadamente na ordem de quanto retorno dão pelo esforço.
- Restrinja destinos aos que você atende. Se seus clientes estão em cinco países, enviar para os outros duzentos é prejuízo sem benefício. Bird controla o envio por destino, então um país precisa estar habilitado antes que o tráfego possa alcançá-lo.
- Limite com base no que você tem, não em quem a pessoa é. Por número de telefone, por prefixo, por endereço, por sessão. Uma fraude que não pode ser vinculada a uma conta geralmente ainda pode ser vinculada a uma faixa de destino.
- Adicione fricção antes do envio. Um desafio antes de o código de verificação ser solicitado custa a um usuário real um instante e custa ao atacante automatizado a viabilidade econômica.
- Observe a taxa de conclusão em vez do volume. Envios subindo é ambíguo. Envios subindo enquanto conclusões permanecem estáveis é o sinal, e ele aparece antes da fatura.
Bird também aplica seu próprio teto abaixo do que você configurar. O guia de envio de verificação diz claramente:
Independent of your settings, Verify enforces platform caps to keep OTP traffic from being weaponized, whether against your wallet (SMS pumping) or against a victim's inbox
Isso é importante por dois motivos: um limite mal configurado da sua parte não é a única coisa entre você e uma fatura, e um teto que você não definiu pode ser o que está barrando tráfego legítimo.
Isso é o mesmo que um ataque de inundação de códigos de verificação?
Relacionado, mas com uma vítima diferente.
A mesma citação nomeia os dois. O pumping mira o seu bolso: o atacante quer que as mensagens sejam enviadas, e o destinatário é incidental. A inundação mira o celular de uma pessoa: o atacante quer que uma vítima seja soterrada por mensagens de código de verificação, muitas vezes como assédio ou para esconder um alerta real.
O pumping aparece como muitos destinos e nenhuma conclusão; o flooding aparece como um único destino e muitas solicitações. Um limite por destinatário reduz solicitações repetidas a um número. Ele não consegue deter um ataque distribuído por muitos números. Combine-o com restrições de destino.
Para o contexto geral sobre fluxos de verificação, o que significa OTP cobre o mecanismo em que esse abuso se apoia.
Em resumo
A receita do atacante é o seu custo de envio.
O tráfego é bombeado para números em rotas onde alguém adiante na cadeia fica com uma parte, então as mensagens são o objetivo e não um efeito colateral.
O alvo é qualquer coisa que envie um SMS sem exigir login.
Formulários de cadastro, solicitações de código de verificação e fluxos de verificação por telefone são a superfície de ataque, porque permitem que um desconhecido dispare uma mensagem paga.
A assinatura tem formato de destino, não de volume.
Um pico concentrado em códigos de país e faixas de números incomuns, com quase nenhuma verificação concluída, é o sinal revelador.
Limites da plataforma ficam abaixo das suas próprias configurações.
Bird aplica limites ao tráfego de verificação independentemente do que você configurar, então um limite mal configurado não é a única linha de defesa.