3 pontos por GN⁺ 2024-04-03 | 1 comentários | Compartilhar no WhatsApp
  • DN$ é um resolvedor DNS com suporte a anúncios, apresentado com a proposta de entregar publicidade junto com registros DNS, satirizando a ideia de que provedores DNS tradicionais como ISP, Cloudflare e Google podem rastrear tráfego e vender dados
  • O projeto é open source e feito em Rust, repetindo que é seguro e rápido, e diz “inovar” o DNS ao adicionar patrocínios a quase todas as respostas DNS em vez de fazer sequestro de NXDOMAIN
  • O README diz que abandonou RFCs e compatibilidade retroativa em nome do progresso, e também apresenta modelos de negócio exagerados como uma assinatura vitalícia com redução de 3% nos anúncios
  • Na atualização de 2 de abril de 2024, informa que o DN$ foi encerrado por causa de vários processos e investigações criminais, e que o código-fonte para configurar seu próprio resolvedor DN$ permanece disponível
  • A execução pode ser feita com cargo build --release seguido de ./target/release/adcache --forward-addr 1.1.1.1:53, e há exemplos de consulta a um servidor DNS local 127.0.0.1 em Unix/MacOS e Windows

DN$: sátira de um resolvedor DNS que injeta anúncios

  • DN$ é um resolvedor DNS com suporte a anúncios que começa com a frase: “você não quer receber anúncios junto com registros DNS?”
  • Parte da premissa de que ISPs, Cloudflare e Google, que fornecem resolvedores DNS tradicionais, podem rastrear a atividade na internet e vender isso a fornecedores terceirizados de dados
  • O README diz que esses dados podem ser revendidos ao governo ou à Meta, e então afirma satiricamente que a equipe do DN$ vai eliminar esses agentes “até reunir usuários suficientes para explorá-los”
  • Diz que precisa exibir anúncios para operar o serviço e informa que clientes com assinatura vitalícia recebem menos anúncios
    • Pela nota de rodapé, a redução de anúncios é de 3%

Implementação e postura técnica

  • O projeto é apresentado como open source e feito em Rust
  • O README repete a ideia de que, por ter sido feito em Rust, ele é seguro e rápido
  • No backend, risca monolith, microservice e modular monolith, deixando $NEW_DEVELOPER_FAD, satirizando modismos de desenvolvimento
  • Afirma ter inovado o DNS ao adicionar patrocínios a quase todas as respostas DNS, em vez do velho e entediante sequestro de NXDOMAIN
  • Diz que abandonou RFCs e compatibilidade retroativa em nome do “progresso”

Sátira sobre dados e responsabilidade

  • O README diz que executivos de empresas provavelmente não receberão pena de prisão mesmo se cometerem crimes graves, ficando no máximo com pequenas multas financeiras
  • O DN$ “promete” não praticar atos maliciosos como rastrear e vender dados de usuários e comportamento na internet
    • A nota de rodapé acrescenta a ressalva: “por enquanto”
  • Também diz que não vai usar dados que afirma não coletar para treinar modelos de IA e ficar rico com isso

Atualização de 2 de abril de 2024 e modo de execução

  • Na atualização de 2 de abril de 2024, o projeto é marcado como deprecated
  • Como motivo do encerramento, são citados vários processos e investigações criminais
  • Informa que o código-fonte para configurar seu próprio resolvedor DN$ continua disponível
  • Comandos para execução:
    cargo build --release
    ./target/release/adcache --forward-addr 1.1.1.1:53
    
  • Exemplo para Unix/MacOS:
    dig @127.0.0.1 reddit.com
    
  • Exemplo para Windows PowerShell:
    Resolve-DnsName -Name reddit.com -Server 127.0.0.1
    

Roadmap interno e plano de negócios satírico

  • O “Internal Roadmap (DO NOT LEAK)” traz planos trimestrais para 2024
  • Q1 2024:
    • Desenvolver toda a stack em Golang
    • Dizer que qualquer linguagem que não seja Rust é “garbage” e reescrever toda a stack em Rust
    • Migrar repetidamente entre microservices, modular monolith, de volta para microservices e novamente para a arquitetura original
  • Q2 2024:
    • Lançar a v0.1 em 1º de abril de 2024
    • Fazer marketing agressivo para fundos de VC
    • Fazer promessas impossíveis a investidores e usuários
    • Coletar pedidos de funcionalidades de clientes como roadmap público
    • Vender assinatura vitalícia
  • Q3 2024:
  • Q4 2024:
    • Quebrar a promessa de assinatura vitalícia e não oferecer reembolso
    • Ofuscar o paradeiro do dinheiro de investidores e clientes com mistura de criptomoedas e lavagem de dinheiro
    • Encerrar a empresa e o serviço alegando que “não é rentável”
  • O README termina com /s, deixando claro que todo o projeto é uma sátira

1 comentários

 
GN⁺ 2024-04-03
Comentários no Hacker News
  • Só de ver o título, minha pressão subiu um pouco, mas, quando cliquei e li, a qualidade de execução é realmente muito boa, e a demo em funcionamento também é excelente

  • A execução é ótima. Em uma consulta, ao rodar dig @35.223.197.204 google.com, apareceu Warning: ID mismatch: expected ID 37255, got 53558, mas não sei o que isso significa
    O projeto é legal, e graças a ele também descobri um curso que diz que vai me fazer ganhar US$ 100.000 por mês

    • Uma incompatibilidade de ID DNS ocorre quando o ID da consulta DNS e o ID da resposta são diferentes. Como a consulta e a resposta devem compartilhar o mesmo ID, isso pode ser intencional ou um sinal de que há um bug no resolvedor
      Parece uma vulnerabilidade de segurança grave, então vou investigar dentro de 3 a 5 anos
  • Dei uma olhada bastante detalhada na Cloudflare e, no momento, não diria que eles estão monetizando isso. Mas, como a recompensa potencial é grande, a qualquer momento pode virar uma situação do tipo “se a receita trimestral cair, quebre o vidro e use”
    O Google é… o Google

  • Temos aqui um Uniformly Dopey Peasant. Pelo nmap -sV -p 53 35.223.197.204, a porta 53/tcp está aberta, e ele responde a requisições do tipo version.bind com "TCP is for enterprise clients only"

    • Na cultura da nossa empresa, determinamos que tanto clientes gratuitos quanto clientes enterprise sejam chamados de forma consistente de peasants
      Clientes enterprise são chamados de "Top Customer Peasants"
  • Bom :D
    Os anúncios em TXT estão aqui: https://github.com/tedkim97/adcache/blob/main/src/adcache.rs...

    • Muito bom: "Meet hot, lonely DNS records in your area tonight"
  • Foi feito em Rust? Então preciso colocar isso imediatamente no topo do meu resolv.conf

    • Você quer dizer resolv.conf.ron, certo? E por que esse arquivo precisaria de qualquer outra coisa? Só DN$ já basta
  • Recomendo. Testei e levou só 11,423 segundos para resolver reddit.com

    • Isso provavelmente foi erro do usuário. Nosso resolvedor foi escrito em Rust, então obviamente é absurdamente rápido
  • Atualização de 2 de abril de 2024: este projeto foi descontinuado
    Por causa de vários processos e investigações criminais, o DN$ precisa ser encerrado. O código-fonte para configurar seu próprio resolvedor DN$ está aqui

  • Já vi uma vaga de emprego pedindo 5 anos de experiência com DN$

  • DN$ only supports DNSSEC for customers in the ENTERPRISE tier; quanto eu preciso pagar para mudar essa mensagem para "DNSSEC is pointless and you should feel bad for making this request"?

    • Se você participar da nossa rodada de investimento pre-pre-seed, acho que podemos dar um jeito
    • Em vez de mudar a mensagem, não seria só adicionar mais uma? Uma empresa inteligente deveria conseguir vender contratos de suporte até para coisas inúteis