1 pontos por GN⁺ 2024-06-11 | 1 comentários | Compartilhar no WhatsApp
  • Quando um PDF acadêmico é compartilhado, a combinação de metadados por download com o horário de acesso pode ser usada para rastrear a origem, mesmo sendo o mesmo artigo
  • O valor de identificação pode ser visto com exiftool, e os metadados de nível superior podem ser removidos com a combinação exiftool + qpdf
  • O PDF também contém uma tag NISO indicando a “final published version” (VoR) e restrições de domínios permitidos, e a Elsevier faz varredura em PDFs com esses metadados
  • Os artigos obtidos pelo Sci-Hub aparentemente também mantêm esses metadados, o que pode levar à identificação da conta acadêmica usada no download
  • Dois PDFs com tags de identificação diferentes ficaram idênticos no diff após a remoção dos metadados e o uso de qpdf --deterministic-id, mas é difícil generalizar a ausência de marcação adicional

Metadados de PDFs da Elsevier que mudam a cada download

  • PDFs da Elsevier recebem um hash único nos metadados a cada download
  • Ao baixar o mesmo artigo duas vezes e comparar os metadados, aparecem valores diferentes
  • Quando esse valor é combinado com o horário de acesso, ele pode ser usado para identificar de qual download veio um PDF compartilhado

Ferramentas usadas para verificar e remover

  • É possível inspecionar diretamente os metadados do PDF com exiftool
  • Comandos para remover metadados de nível superior:
    • exiftool -all:all= <path.pdf> -o <output1.pdf>
    • qpdf --linearize <output1.pdf> <output2.pdf>
  • Para remover todos os metadados, é possível usar dangerzone ou mat2
  • Ferramentas relacionadas:
    • exiftool: ferramenta de leitura/gravação de metadados
    • qpdf: ferramenta de processamento de PDF
    • dangerzone: ferramenta GUI que renderiza o PDF como imagem e depois refaz OCR
    • mat2: ferramenta de remoção de metadados que renderiza o PDF como imagem, mas não faz OCR

Script de limpeza automática e extração de tags

  • O shell script fornecido busca PDFs recursivamente no diretório especificado ou no diretório atual e remove os metadados
  • O ambiente de destino é macOS e sistemas do tipo Unix, com qpdf e exiftool instalados
  • Para cada PDF, ele cria uma versão limpa com o sufixo _clean.pdf e aplica exiftool e qpdf --linearize
  • Depois, foram adicionados ao gist as tags extraídas corretamente e um código Python que permite extraí-las diretamente
  • No começo isso foi chamado de “hash”, mas o valor extraído tem um padrão claro, e ainda não se sabe exatamente o que ele contém

Tags NISO e rastros que permanecem no Sci-Hub

  • Os metadados do PDF incluem uma tag NISO que indica o estado do documento
    • O estado do documento é marcado como “final published version” (VoR)
    • Junto disso, há também restrições sobre em quais domínios ele deve existir
  • A Elsevier faz varredura em PDFs com esses metadados, então é necessário removê-los ao compartilhar cópias
  • Os artigos obtidos pelo Sci-Hub aparentemente também preservam esses metadados
  • Se o Sci-Hub baixa artigos usando credenciais acadêmicas coletadas, a editora pode usar esses metadados para identificar quais contas devem ser fechadas ou protegidas

Possibilidade de marcação adicional e resultado da verificação

  • Continua existindo a possibilidade de uma marcação d’água mais sofisticada além dos metadados
  • Resultado do experimento com dois arquivos contendo tags de identificação diferentes:
    • Os metadados foram removidos
    • Foi feita uma nova linearização com a flag --deterministic-id do qpdf
    • Os PDFs resultantes apareceram como idênticos no diff
  • Só esse resultado não permite generalizar que não exista marcação adicional
  • Os metadados se destacam especialmente por permitirem varrer grandes volumes de PDFs com rapidez

1 comentários

 
GN⁺ 2024-06-11
Opiniões no Hacker News
  • Dá para imaginar o esforço enorme para encontrar pessoas que compartilharam ideias que essas empresas nem criaram nem financiaram, só para puni-las por não terem pago
    Essas empresas simplesmente parecem entidades que atrapalham o progresso da humanidade

    • Na prática, não é tão difícil assim, mas concordo com o ponto principal
      Além disso, empresas assim cobram valores absurdos dos autores por serviços adicionais, como impressão de imagens coloridas
      Num futuro distante, acho que escolas e universidades vão tratar essas empresas como exemplos de parasitas sociais
    • A empresa em si é mais um sintoma do que o problema
      O problema real, na minha visão, são os governos — especialmente o dos EUA — que usam seu monopólio da coerção para ajudar essas empresas a impor esse modelo de negócio
    • Também é preciso considerar quanto esforço dá escrever um livro
      Alguns autores passam anos escrevendo, muitos autores dedicam pelo menos um ano, e alguns acadêmicos passam anos em um único artigo
      A Elsevier também é uma parceira bastante envolvida na produção e no financiamento desse trabalho, e seus funcionários cuidam de edição, diagramação e distribuição
      Os autores também são parceiros nesse processo e, em muitos casos, recebem royalties da Elsevier
      Só que há pessoas que inventam todo tipo de argumento forçado para justificar pirataria
      Se há autores pobres, deve-se entender que a cópia ilegal prejudica sua capacidade de viver da venda de seus textos
    • É engraçado que, quando a Elsevier tenta aplicar direitos autorais, o HN a trata como o diabo, mas, quando o assunto são dados de treinamento de IA, de repente vira o grupo de guerreiros da propriedade intelectual mais rigoroso que já vi
    • Pelo que entendo, a culpa não é só da Elsevier; o problema é a estrutura em que governos distribuem verbas de pesquisa e promoções com base no número de publicações em periódicos da Elsevier
  • Parece um bom hábito receber cópias de duas fontes diferentes e comparar os hashes antes de tornar um documento público
    Dados podem ser embutidos em qualquer lugar: imagens, arquivos de áudio, PDFs, programas etc.
    Pelo menos no caso da Elsevier, parece bem claro que eles usam uma chave para rastrear usuários

    • Ainda assim, PDFs não têm pop-up de consentimento de cookies
      Talvez finalmente dê para usar essa lei de um jeito útil
  • Existe o DangerZone, uma ferramenta livre e de código aberto usada para remover possíveis malwares de arquivos PDF, e ela também pode apagar metadados
    Pode ser exagero para uma simples limpeza de metadados, mas vale mencionar
    https://dangerzone.rocks/

    • Pode ser que o problema não seja apenas metadados
      Em um PDF suficientemente longo, há muitas formas de esconder um identificador de 128 bits
      Um retângulo branco sobre fundo branco, pixels aqui e ali que não são totalmente pretos, qualquer coisa assim
      Muitos métodos podem sobreviver até a impressão seguida de digitalização
  • Uso um pequeno script para limpar PDFs de modo geral e também reduzir o tamanho
    É mais ou menos assim
    pdftops -paper A4 -expand -level3 file.pdf
    ps2pdf14 -dEmbedAllFonts=true \
    -dUseFlateCompression=true \
    -dOptimize=true \
    -dProcessColorModel=/DeviceRGB \
    -r72 \
    -dDownsampleGrayImages=true \
    -dGrayImageResolution=150 \
    -dAutoFilterGrayImages=false \
    -dGrayImageDownsampleType=/Bicubic \
    -dDownsampleMonoImages=true \
    -dMonoImageResolution=150 \
    -dMonoImageDownsampleType=/Subsample \
    -dDownsampleColorImages=true \
    -dColorImageResolution=150 \
    -dAutoFilterColorImages=false \
    -dColorImageDownsampleType=/Bicubic \
    -dPDFSETTINGS=/ebook \
    -dNOSAFER \
    -dALLOWPSTRANSPARENCY \
    -dShowAnnots=false \
    file.pdf file.pdf
    Se necessário, é possível adicionar metadados depois
    Não foi projetado especificamente para remover algum método de rastreamento em particular, mas, na maioria dos casos, é simples e útil o suficiente

  • Você pode baixar o PDF da Elsevier, abri-lo no seu visualizador de PDF, clicar em imprimir e escolher Print to PDF na seleção de impressora

    • Como etapa 0, é preciso desativar o salvamento do Zone Identifier ou removê-lo com uma ferramenta
      É bem provável que essa informação seja preservada ao copiar o arquivo e, dependendo da ferramenta e do formato, ela pode entrar em um arquivo compactado e ser restaurada depois
      https://www.digital-detective.net/forensic-analysis-of-zone-...
      Entre os plugins do Total Commander, há alguns que mostram de onde um determinado arquivo foi baixado
      Tenho vários instalados, então não sei exatamente qual é, mas acho que provavelmente é este plugin: https://totalcmd.net/plugring/ntfsstreamviewer.html
    • Baixe o PDF da editora, abra-o no visualizador de PDF, clique em imprimir e imprima em papel de verdade
      Depois, digitalize novamente as páginas impressas do PDF, junte-as em um documento PDF com convert e pdfunite, e compacte com ghostscript
    • Mesmo assim, toda possível esteganografia escondida em kerning, cores, espaçamento entre linhas etc. pode permanecer intacta
    • Também dá para baixar o PDF da Elsevier, converter as páginas em imagens PNG, juntá-las em um novo PDF e então rodar OCR
    • Isso pode destruir completamente as tags e as informações de acessibilidade que existiam no PDF
      Por favor, não faça isso a menos que você tenha certeza de que é realmente necessário
  • Deixo isto aqui porque tem relação com o tema
    https://github.com/kanzure/pdfparanoia
    e também
    https://github.com/firstlookmedia/pdf-redact-tools

    • Na página do pdf-redact-tools está escrito: “Warning: This project is no longer maintained. A much better tool is dangerzone.”
      O link para o DangerZone pode ser encontrado na thread original enviada no Mastodon
  • Precisamos criar ferramentas que permitam compartilhar e abrir o conhecimento da humanidade

  • O fato de entidades como a Elsevier conseguirem continuar existindo, e de as pessoas de fato pagarem por esses sistemas parasitários, exige encontrar e analisar a causa raiz
    Algumas pistas possíveis: a academia, no fim das contas, é preguiçosa e não tem intenção de consertar o sistema; pesquisadores estão tão imersos em suas pesquisas que a qualidade das coisas que não estão diretamente relacionadas ao próprio trabalho é péssima; e existe uma estrutura de incentivos que retorna benefícios às pessoas que mantêm esse sistema
    Há outras pistas?

    • Varia conforme a área
      Por exemplo, a área de tecnologia migrou bastante para periódicos de acesso aberto, e isso funciona bem para a promoção de pesquisadores
      Mas, enquanto coisas como estabilidade no cargo dependerem de publicação na Nature, será difícil deslocar a Nature em um futuro próximo
  • Metadados são um alvo facílimo em marcação d'água de documentos
    Normalmente, renderizadores de PDF usam espaçamento, kerning, caracteres invisíveis e todo tipo de esteganografia para tornar cada cópia única
    Não sei que sentido teria um hash; na prática, é mais provável que seja um código de autenticação de mensagem que mistura um valor secreto com a cópia única
    Isso ajudaria a editora a identificar uma cópia lavada
    Com duas ou mais cópias, dá para reanonimizar, e fico pensando se modelos de linguagem voltados a resumo poderiam ser úteis para esse tipo de coisa
    Claro que também é possível inserir variações esteganográficas em gráficos
    PDF é um formato de documento bagunçado, então quase sempre converto para texto simples, geralmente sem perda de significado

  • Essa prática é legal na UE?

    • A Elsevier é uma empresa neerlandesa e pertence a uma empresa britânica, então imagino que não haja grande problema