NT-2026.10.06 DOSSIÊ DFIR
OPERAÇÃO BELGRADE CURTAIN: GEOIP MENTE — BANDEIRA IRANIANA ENGANA
Investigação OSINT passo a passo: IP suspeito com bandeira iraniana → ASN sérvio → WHOIS/RIPE revela operador iraniano → 9 empresas de fachada em 9 países → BGP confirma infraestrutura compartilhada → Censys/Shodan/GreyNoise/Spamhaus validam. Ensina por que IP ≠ localização física do atacante.

Introdução: Quando a Bandeira no Firewall Engana
Abri o console do CrowdSec numa manhã de sábado em Manila e encontrei um painel que parecia ter sido aberto por um serviço de inteligência estrangeiro no FalconEye.
2.143 alertas de um único IP. 99,3% de todo o meu ruído. A coluna ASN dizia Cipher Operations Doo Beograd. O painel Source AS mostrava um pequeno tricolor iraniano ao lado da entrada. O FalconEye é meu toolkit OSINT público, rodando em falconeye.osintph.info. Tem nome reconhecível, rastro no GitHub, e faz exatamente o tipo de trabalho investigativo que alguns governos prefeririam que ninguém fizesse. Uma campanha de brute force iraniana naquele host específico não seria surpreendente, e valeria a pena escrever sobre.
Seis pivôs WHOIS depois, a história tinha se invertido. A bandeira iraniana estava lá de verdade, mas era a última coisa sobre o atacante que era iraniana. Todo o resto da operação estava encenado a partir da Sérvia, Ucrânia, Emirados Árabes, Reino Unido, Irlanda, África do Sul, Romênia, Moldávia e Holanda, envolto em torno de um único operador de hospedagem à prova de balas (bulletproof hosting) iraniano que mantém uma vitrine de varejo pública que qualquer um com cartão de crédito pode comprar.
Este artigo é sobre como esse pivô funciona. Se você roda um serviço exposto na Internet e confia em atribuição baseada em GeoIP para entender quem está batendo no seu servidor, você vai obter a resposta errada mais frequentemente do que imagina. A história abaixo é um exemplo. A técnica é geral.
O Incidente: Dashboard CrowdSec com Bandeira Iraniana
O widget Source IP no CrowdSec Console conta eventos de alerta por IP de origem. Dezesseis IPs aparecem na janela, mas a primeira linha engole o gráfico inteiro: 62.60.130.193 com 2.143 hits contra um ruído de fundo de quinze outros IPs contribuindo com entre um e cinco alertas cada. O resto do ruído são Sistemas Informáticos de Portugal, Microsoft e Amazon da AWS, Censys fazendo suas varreduras habituais de Internet inteira, e um endereço Chinanet. Todo ruído de fundo legítimo em qualquer host público.
O widget Source AS torna isso mais evidente. Seis ASNs no total, seis milésimos de porcento do ruído, e um ASN a 99,3%.
A campanha tem forma limpa no gráfico. Começou por volta das 19:30 de 17 de julho e manteve taxa constante até diminuir por volta das 12:30 de 18 de julho. Aproximadamente dezessete horas de grinding contínuo de um único nó.
Você pode ver a mesma forma no CLI:
sudo cscli alerts list --scenario crowdsecurity/ssh-bf --since 24h
sudo cscli alerts list --scenario crowdsecurity/ssh-slow-bf --since 24h
Cada linha tem o mesmo valor na coluna: Ip:62.60.130.193. Cada linha tem o mesmo ASN: 215930 Cipher Operations Doo Beograd - Novi Beograd. O cenário disparava cerca de uma vez por minuto, renovando o ban a cada overflow do leaky-bucket. É um nó grindando em uma lista de alvos, não uma campanha distribuída.
Essa distinção importa. Campanha distribuída implica coordenação e investimento em infraestrutura. Um único nó rodando por dezessete horas contra um alvo que parou de responder após os primeiros dez minutos implica um VPS de brute force alugado que o cliente não se deu ao trabalho de monitorar. O cliente pagou adiantado e não liga se os pacotes chegam. O bouncer fez o trabalho imediatamente.
Os contadores da chain subiram para milhões de pacotes descartados, e uma vez que o ban se propagou, o sshd parou de ver tentativas daquele IP. A CROWDSEC_CHAIN fica na posição 1 na chain INPUT, à frente do UFW, então nada mais precisa funcionar corretamente para o ban valer.
sudo iptables -nvL CROWDSEC_CHAIN
A defesa segurou. O atacante nunca percebeu. Isso vale registrar como ponto de dados por si só, mas a atribuição era interessante o suficiente para perseguir em paralelo.


Primeiro Pivô: O ASN Aponta para a Sérvia, Não Irã
O IP 62.60.130.193 geolocaliza para Irã no banco GeoIP integrado do CrowdSec. Essa é a bandeira no dashboard. Mas o ASN é registrado na Sérvia.
whois 62.60.130.193
O netblock 62.60.130.0/24 pertence a CIPHER OPERATIONS DOO BEOGRAD, registrado em Jurija Gagarina 231, local 329, em Novi Beograd. “Local 329” é número de suite, o indicador de escritório virtual ou compartilhado. O número de registro da empresa sérvia é 21864242, registrado em novembro de 2023. O /24 em si foi alocado em julho de 2025 e route-registrado em agosto de 2025. Espaço novo em empresa nova.
O Abuse Contact está na Ucrânia:
O objeto inetnum do RIPE diz country: GB, que é um terceiro rótulo de país no mesmo endereço. O AbuseIPDB, quando verifiquei, disse Lituânia.
Quatro fontes diferentes, quatro países diferentes:
- Irã no CrowdSec (GeoIP)
- GB no RIPE (registro de roteamento)
- RS no registro corporativo (Sérvia)
- LT no AbuseIPDB (Lituânia)
Se você parar em qualquer uma delas, obtém uma resposta errada sobre o que está lidando. Também é um bom lembrete de que GeoIP não é tão direto quanto parece.

Segundo Pivô: O Contato de Abuso Não Se Importa
O objeto inetnum do RIPE também lista um contato de abuso (abuse-c). Esse contato é um endereço Gmail:
role: Abuse contact role object
abuse-mailbox: xxx@gmail.com (endereço Gmail pessoal)
address: Khreshhatik St., 14D, Kyiv, UA
nic-hdl: ACRO58704-RIPE
Endereço postal em Kiev. Nome com padrão iorubá na parte local do email. Esta é uma empresa sérvia, com endereço postal ucraniano para seu contato de abuso, com um Gmail pessoal com nome nigeriano como canal de abuso.
Provedores de hospedagem legítimos colocam contatos de abuso em seus próprios domínios corporativos. Esse padrão de escritório virtual + telefone móvel + Gmail descartável é a impressão digital padrão de um revendedor bulletproof de pequena escala.
Uma verificação rápida no Crimewall só com o email dá um perfil LinkedIn inútil e alguns leads interessantes — será um novo artigo, o segundo da série Crimewall. Aguardem.
Dois identificadores a mais no objeto valem a pena puxar:
- admin-c: ACRO58704-RIPE é o handle RIPE desse contato de abuso
- mnt-by: mm500-mnt e mnt-ref: wcd são os objetos maintainer que controlam acesso de escrita ao registro RIPE
Handles e maintainers são os pontos de pivô que transformam um IP ruim em uma imagem de uma operação.

Terceiro Pivô: Os Mantenedores Desbloqueiam o Império
As reverse maintainer queries levam cerca de noventa segundos e retornam vários megabytes de objetos RIPE. É aqui que a história para de ser sobre 62.60.130.193 e começa a ser sobre o império por trás dele.
whois -h whois.ripe.net -- '-i mnt-by mm500-mnt'
whois -h whois.ripe.net -- '-i mnt-by wcd'
O mm500-mnt pertence a uma pessoa chamada Majid M. em “Sar Sabz St., Tehran, Iran”. Seu Gmail pessoal, majid.xxxx@gmail.com, aparece em múltiplos contatos de abuso de LIR. Sua organização RIPE formal é Abdolmajid M sob o handle LIR ORG-AM403-RIPE, baseada em “No. 13, Khavari Alley, TAT Str., Marzdaran Blvd, Tehran”.
O wcd pertence a Mohammad K., handle RIPE INN21-RIPE, usando a identidade alternativa DWCI NET em endereço no Burj Khalifa, Bur Dubai, com abuse xxxxx@khatibi.org.
Essas duas pessoas rodam tudo.
Os objetos maintainer estão carimbados em dezenas de recursos RIPE, e a imagem que se forma é uma marca de revendedor de hospedagem chamada LordVPS.
abuse@lordvps.net aparece como endereço de abuso em netblocks nomeados IR-LORDVPS1-20240109, IR-LORDVPS2-20240112, e assim por diante até IR-LORDVPS12-20240625. Doze sub-organizações LordVPS numeradas, cada uma respaldando um /24 diferente em espaço IP europeu, emirata ou estadunidense, todas patrocinadas pelo LIR iraniano Atis Omran Sevin PSJ na Unit 7 Negin Mall Tehran.
Doze netblocks é só a metade visível. A outra metade é um conjunto de empresas de fachada (shell companies) registradas em nove países diferentes, cada uma detendo espaço IP e cada uma nominalmente independente, todas rastreáveis de volta através dos objetos maintainer para os mesmos dois operadores iranianos.

Grafo Corporativo: 9 Empresas de Fachada em 9 Países
Aqui está a lista de entidades de fachada e onde estão registradas, todas vinculadas por mm500-mnt ou wcd:
- Cipher Operations Doo na Sérvia → detém AS215930 e 62.60.130.0/24
- SafeshipNetworks na Ucrânia → detém 81.30.107.0/24
- AMWAJ Alkhyr Commercial Brokers nos EAU → detém AS44947 e AS213456
- Feo Prest SRL na Romênia → detém 62.60.131.0/24 e AS208137
- SKYNET NETWORK LTD em endereço de Luton, UK → detém bloco IPv6
- KOI Cloud Services (Pty) Ltd na África do Sul, frontada por pessoa chamada Kenneth (REDACTED) → detém AS209425
- FIRSTBYTE HOSTING LTD em endereço de Londres, UK → detém AS210703
- Sariff Industries na Irlanda e UK → co-maintenance do AS210703
- Audit Data SRL na Moldávia → detém 194.0.234.0/24
- IPNET na Holanda com contato
abuse@ipsupply.ir→ detém 62.60.134.0/24
Os contatos de abuso nesse grafo são um elenco rotativo de Gmails descartáveis (redatados aqui, mas obtíveis via WHOIS), um endereço Yandex (xxx-ltd@yandex.ru), e um conjunto de endereços xxx@[domínio-descartável] como xxx@feoprest.life e xxx@serveroffer.lt. O Gmail com nome nigeriano sozinho aparece em quatro organizações separadas em quatro países separados.
A fábrica de peering BGP fecha o loop.

Quarto Pivô: BGP Confirma Infraestrutura Compartilhada
O AS215930 (Cipher Operations, o front sérvio) faz peering com:
- AS44947 (Amwaj, o front dos EAU)
- AS209425 (KOI, o front da África do Sul)
- AS133398 (transit externo)
Três dos quatro peers estão dentro da mesma operação.
O AS215930 tem como organização patrocinadora a ORG-AOSP1-RIPE, que é o LIR original do LordVPS. A Cipher Operations Doo Beograd não é uma empresa sérvia independente que acontece de ter clientes iranianos. É um dos próprios fronts europeus do Majid, patrocinado pelo seu LIR iraniano.
Por isso as bandeiras não concordam entre si.
O tráfego de 62.60.130.193 pode sair via AS44947 nos EAU, AS209425 através de peering sul-africano, ou AS133398 para transit externo. Qualquer que seja o egresso que a base GeoIP viu por último determina qual bandeira aparece ao lado do IP. Todas as quatro bandeiras estão tecnicamente corretas em algum ponto da jornada do pacote. Nenhuma delas te diz que o operador é iraniano.

Quinto Pivô: Censys — O Box É Um Nó Dedicado de Brute Force
O Censys vê o atacante como um host Ubuntu Linux em infraestrutura de Vilnius, rodando um serviço e apenas um serviço:
- Sem web panel
- Sem serviço de monitoramento
- Sem cPanel ou Plesk
- Sem mail
- Sem game server
- Sem endpoint VPN
Apenas OpenSSH.
Um cliente normal de VPS compra uma caixa para rodar algo. Esta caixa não roda nada. Ela existe para iniciar conexões SSH outbound, e seu SSH inbound é presumivelmente como o operador a gerencia. Essa é a impressão digital operacional de um nó dedicado de brute force, não do servidor de propósito geral de um cliente.

Sexto Pivô: Shodan — Composição de ASN Incompatível com Hosting Legítimo
O Shodan confirma a impressão digital no nível do ASN:
- 1.452 hosts no AS215930
- Desses, apenas 41 rodando SSH visível
- Apenas 49 rodando HTTP
Um provedor de hospedagem legítimo com 1.452 caixas de clientes teria centenas de servidores web e mail visíveis. Este ASN não tem isso. O que ele tem são 315 vazamentos mDNS e um punhado de superfícies nginx e OpenSSH.
A composição parece infraestrutura de proxy ou brute force com um verniz fino de clientes.

Sétimo Pivô: GreyNoise — IP Não É Scanner Indiscriminado
O GreyNoise fecha a última ponta solta:
curl -s https://api.greynoise.io/v3/community/62.60.130.193 | jq
{
"ip": "62.60.130.193",
"noise": false,
"riot": false,
"message": "IP not observed scanning the internet."
}
O GreyNoise roda uma rede global de sensores especificamente para pegar mass scanners. “Not observed scanning” significa que este IP não está participando de varredura indiscriminada de Internet inteira. É direcionado (targeted).
Combinado com os 78 relatórios no AbuseIPDB com 100% de confiança e meus próprios 2.143 alertas no FalconEye, isso significa que múltiplos alvos estão sendo atingidos, mas de uma lista curada, não de um scattergun. Alguém especificamente escolheu apontar este nó para mim.

Oitavo Pivô: Spamhaus DROP/ASN-DROP — Classificação Oficial Como Operação Iraniana
O Spamhaus não adiciona redes à lista Don’t Route Or Peer por palpite. DROP é reservado para redes que o Spamhaus classificou como controladas diretamente por cibercriminosos ou hijacked. Entrar no DROP significa uma listagem formal com trilha de evidência SBL.
curl -s https://www.spamhaus.org/drop/drop_v4.json | grep "62.60.130"
{"cidr":"62.60.130.0/24","sblid":"SBL683637","rir":"ripencc"}
O /24 específico que atingiu o FalconEye está no Spamhaus DROP como SBL683637.
A lista ASN-DROP adiciona duas confirmações:
curl -s https://www.spamhaus.org/drop/asndrop.json | grep -E "215930|209425"
{"asn":209425,"rir":"ripencc","domain":"lordvps.net","cc":"IR","asname":"KOI-AS"}
{"asn":215930,"rir":"ripencc","domain":"almaseabi.net","cc":"IR","asname":"COD"}
O Spamhaus explicitamente marca AS215930 (Cipher Operations, o front sérvio) e AS209425 (KOI Cloud, o front sul-africano) com cc: IR. Eles independentemente chegaram à mesma conclusão que eu dos pivôs WHOIS. Ambos ASNs são classificados como operações iranianas independentemente do país de registro nominal.
O Spamhaus também vincula explicitamente AS209425 ao domínio lordvps.net e AS215930 a almaseabi.net.

A Loja Virtual: LordVPS — Varejo de Bulletproof Hosting
A marca de varejo está publicamente online:
whois lordvps.net
curl -sI https://lordvps.net
Domínio criado novembro de 2020. Registrado via Bluehost, escondido atrás de Perfect Privacy LLC em Jacksonville, Florida. Nameservers NS1.UAEDNS.COM e NS2.UAEDNS.COM, vinculando de volta à infraestrutura K. em Dubai. E criticamente, HTTP/1.1 200 OK. O site está vivo e serve 98 kilobytes de HTML.
Mas obviamente não é para conseguir clientes regulares diretamente, pois é basicamente texto placeholder:
Esta é a fachada de varejo da operação. O texto placeholder é revelador por si só. Um revendedor legítimo investe na vitrine porque quer novos clientes. Este site não investe, porque não precisa deles. A base de clientes encontra o LordVPS através de canais que o operador não anuncia na página inicial.
O outro domínio que o Spamhaus nomeou, almaseabi.net, foi registrado em 2009, atualmente atrás do Cloudflare com origin mal configurado (HTTP 525), e usa WHOIS privacy. O correspondente .ir, almasnet.ir, esconde atrás de privacidade IRNIC mas aponta nameservers para morvahost.com, uma marca de hospedagem iraniana.
Padrão clássico bulletproof: uma marca de exportação para estrangeiros, uma marca doméstica para o mercado local.

O Que Muda na Interpretação (e o Que Não Muda na Defesa)
Nada sobre minha postura defensiva. O CrowdSec pegou a campanha, o bouncer baniu o IP, e os contadores da chain subiram enquanto o atacante mastigava vainamente drops de pacote. Adicionei uma decisão local persistente de 30 dias (720h) para manter o ban após expiração do cenário, e deixei lá. O /24 fica banido na origem até o Spamhaus me dizer o contrário. Se o mesmo operador rotacionar para um IP irmão em outro bloco LordVPS, o feed comunitário vai pegar. Esse é o ponto do modelo CrowdSec.
O que muda é a interpretação.
A bandeira iraniana no dashboard do CrowdSec sugeria uma coisa. A realidade era um nó dedicado de brute force dentro de uma operação de bulletproof hosting iraniana documentada (LordVPS), vendida como serviço VPS de varejo sob a marca LordVPS, hospedada através de uma empresa sérvia de fachada, saindo via espaço IP lituano, aparecendo em cada base GeoIP com uma bandeira diferente dependendo de qual egresso o pacote tomou.
Para qualquer alvo rodando serviço público, a pergunta correta não é “quem é este IP” mas “o que este IP faz parte”. Um único endereço em um /24 fresco registrado a uma empresa sérvia que você nunca ouviu falar vale trinta segundos de whois e whois -i mnt-by para ver se aquela empresa é real. Neste caso a resposta foi um império de 12 netblocks, 9 países, rodado por dois operadores em Teerã.
Lições para Investigadores: GeoIP Não É Prova de Atribuição
Se você roda CrowdSec ou qualquer outra stack de detecção, três coisas deste incidente valem internalizar:
- Leia contadores de alertas como contagem de eventos, não contagem de fontes únicas. O widget Source IP coloca o vencedor no topo, mas se você olhar Source Countries ou Source AS sem quebrar mais, um nó persistente pode ler como campanha distribuída. Sempre desça para
cscli alerts liste cheque a coluna value.
- Nunca pare na bandeira. GeoIP está te dizendo onde o último hop do pacote parecia geográfico. Não está te dizendo onde o operador está. O email abuse-c, os objetos maintainer, e reverse maintainer queries levam cinco minutos e rendem a atribuição real.
- A cadeia de pivôs importa mais que a ferramenta. AbuseIPDB, Censys, Shodan, GreyNoise, Spamhaus, e RIPE WHOIS cada um contou uma história parcial. Empilhar eles transformou “um IP persistente” em uma visão documentada da infraestrutura do operador. Qualquer um desses fontes sozinho teria deixado a figura incompleta.
O IP agora está na minha block list do Cloudflare, a decisão local do CrowdSec está em 720 horas, e 62.60.130.0/24 fica banido na origem até o Spamhaus me avisar o contrário. Se o mesmo operador rotacionar para um IP irmão em outro bloco LordVPS, o feed comunitário vai pegar. Esse é o ponto do modelo CrowdSec.
Se mais alguém está vendo este ASN nos logs, deixe um comentário. A evidência já é pública, e todo praticante que confirma um incidente contra AS215930 ou AS44947 ou AS209425 adiciona outro ponto de dados à visão comunitária do que o LordVPS realmente é.
Conclusão: A Bandeira No Dashboard Engana
Esta investigação foi escrita nas horas imediatamente após o incidente usando ferramentas publicamente disponíveis: RIPE WHOIS, AbuseIPDB, Censys, Shodan, GreyNoise Community, Spamhaus DROP e ASN-DROP, e Cloudflare DNS. Todos os comandos usados para coletar estes dados estão mostrados inline. Screenshots são do meu próprio CrowdSec Console, Censys, Shodan e Spamhaus. Se você quer reproduzir a investigação nos seus próprios logs, os mesmos comandos funcionam contra qualquer IP suspeito.
A bandeira iraniana no dashboard sugeria uma coisa. A realidade era um nó dedicado de brute force dentro de uma operação bulletproof iraniana documentada (LordVPS), vendida como serviço VPS de varejo, hospedada via empresa sérvia de fachada, saindo via espaço IP lituano, aparecendo em cada banco GeoIP com bandeira diferente dependendo de qual egresso o pacote usou.
Para qualquer alvo rodando serviço público, a pergunta correta não é “quem é este IP” mas “o que este IP faz parte”.
Um único endereço em um /24 fresco registrado a uma empresa sérvia que você nunca ouviu falar vale trinta segundos de whois e whois -i mnt-by para ver se aquela empresa é real. Neste caso a resposta foi um império de 12 netblocks, 9 países, rodado por dois operadores em Teerã.