Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
nullorigin — Kit de ferramentas de robustez de marcas d'água de IA somente para pesquisa: proxy reverso local remove C2PA/EXIF/XMP, Unicode, esteganografia de imagem/áudio, metadados OOXML/PDF e verifica Trojan Source. | Kitploit
Ferramentas/GitHubGitHub/rakib-nyc/nullorigin
Análise Estática de Código (SAST)Proxies Web e InterceptaçãoEsteganografiaPrivacidadeAprendizado e EducaçãoSegurança de IAAtaque Adversário
GitHubrakib-nyc/nullorigin

nullorigin

Kit de ferramentas de robustez de marcas d'água de IA somente para pesquisa: proxy reverso local remove C2PA/EXIF/XMP, Unicode, esteganografia de imagem/áudio, metadados OOXML/PDF e verifica Trojan Source.

Ver Repositório
439há 1 mêsAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

NullOrigin 🛡️

Middleware Universal de Proveniência e Sanitização de Marcas d'Água de IA Artefato de pesquisa — somente para avaliação de robustez de marcas d'água.

CI License: Apache 2.0 Python 3.10+ Tests Code style: ruff


🔬 Somente para uso em pesquisa

NullOrigin é um artefato de pesquisa. Ele é publicado para apoiar o estudo acadêmico e independente da robustez de marcas d'água, e para nenhum outro propósito.

Esquemas de marca d'água são alegações de segurança, e alegações de segurança só são significativas quando alguém tentou quebrá-las. A literatura que este projeto implementa — Kirchenbauer et al. sobre KGW, Krishna et al. sobre ataques de paráfrase, Boucher & Anderson sobre Trojan Source — existe porque pesquisadores publicaram ataques funcionais para que defensores pudessem medir robustez real em vez de assumi-la. Essa é a tradição à qual este repositório pertence.

Usos pretendidos

  • Medir o quanto a detectabilidade de uma marca d'água degrada sob um ataque declarado
  • Reproduzir e estender resultados de robustez publicados
  • Avaliar vazamento de metadados de proveniência em seus próprios documentos antes de compartilhá-los
  • Auditar código-fonte para ataques Trojan Source e homoglifos (CVE-2021-42574, CVE-2021-42694)
  • Ensinar como esses esquemas funcionam e onde eles se sustentam

Não pretendido e não suportado

  • Apresentar trabalho gerado como seu onde uma pessoa ou instituição pediu que você não o fizesse
  • Neutralizar sinais de proveniência em conteúdo que você pretende deturpar
  • Remover atribuição de trabalho que não é seu
  • Contornar qualquer política de plataforma, licença ou integridade acadêmica

Nada aqui é um controle técnico sobre como o código executa. É uma declaração dos termos sob os quais ele é oferecido, e do que seu autor apoiará ou não. O software é fornecido "AS IS", sem garantia de qualquer tipo — consulte LICENSE.

Leia Escopo e limitações honestas antes de tirar qualquer conclusão de um número que esta ferramenta imprimir. Vários dos esquemas que ela alvo não podem ser verificados contra um detector público, e o README afirma isso em vez de dar a entender o contrário.


Conteúdo

  • Somente para uso em pesquisa
  • Escopo e limitações honestas
  • Fundamentos teóricos
  • Instalação
  • Início rápido
  • Docker
  • Implantação além de localhost
  • CLI
  • Benchmarking
  • Fidelidade semântica
  • Configuração
  • Solução de problemas
  • Arquitetura
  • Testes
  • Citação e reutilização
  • Status do projeto
  • Referências
  • Aviso legal e atribuição

⚠️ Escopo e limitações honestas

Leia isto antes de tirar conclusões de qualquer número que esta ferramenta imprimir.

CamadaO que ela realmente faz
Caracteres invisíveisTotalmente eficaz. Cargas de zero-width, controle bidirecional, seletor de variação e bloco de tags Unicode são removidas completamente, com uma contagem reportada. Confusáveis homoglifos entre escritas (renderização cirílica/grega como ASCII) são normalizados.
Metadados de documento (.docx)Totalmente eficaz. Autor, último editor, contagem de revisões, carimbos de data/hora, modelo e versão do aplicativo são limpos de docProps, com a formatação preservada byte por byte.
C2PA / EXIF / XMPTotalmente eficaz. A imagem é reconstruída a partir de amostras de pixels brutos em um contêiner novo, portanto manifestos JUMBF assinados e todos os metadados são removidos. Verificado por teste contra fixtures marcados.
Marca d'água estatística KGWDepende inteiramente do backend de reescrita. Sem um modelo local configurado, a marca d'água estatística sobrevive — a ferramenta afirma isso em vez de dar a entender o contrário.
SynthID-Text / SynthID-Image / Tree-RingNão verificável aqui. Esses usam chaves privadas e decodificadores proprietários. O NullOrigin aplica as perturbações que a literatura descreve, mas não é feita nenhuma afirmação de que eles derrotam os detectores reais, porque não há detector público para medir.
AudioSeal / SynthID-AudioNão verificável aqui, pela mesma razão.

Sobre o detector KGW

KGWStatisticalDetector é uma implementação matematicamente fiel, autoconsistente, do esquema de lista verde/vermelha de Kirchenbauer et al. sobre tokens de espaço em branco. Ele não é um decodificador para a marca d'água de produção de nenhum fornecedor — essas dependem de um segredo privado e do vocabulário BPE do próprio modelo.

Seu propósito é tornar o benchmark real: KGWWatermarkEmbedder insere uma marca d'água genuína, o pipeline a ataca, e o detector correspondente mede a redução real. Essa é uma medição verdadeira do ataque contra este esquema. Ela não se transfere para a marca d'água de um fornecedor.


📖 Fundamentos teóricos

Texto — lista verde/vermelha KGW

O vocabulário $V$ é particionado a cada passo $t$ por um hash semeado no contexto anterior:

$$s_t = \text{Hash}(w_{t-k}, \dots, w_{t-1})$$

em uma lista verde $G_t$ de tamanho $\gamma|V|$ e uma lista vermelha $R_t$. Um viés $\delta > 0$ é adicionado aos logits verdes:

$$\tilde{l}{t,v} = \begin{cases} l{t,v} + \delta, & v \in G_t \\ l_{t,v}, & v \in R_t \end{cases}$$

A detecção conta acertos verdes. Sob $H_0$ eles são $\text{Binomial}(T, \gamma)$, portanto:

$$z = \frac{|S_G| - \gamma T}{\sqrt{T\gamma(1-\gamma)}}$$

com $z > 4.0$ ($p < 3\times10^{-5}$) marcado como sintético.

Por que a paráfrase ataca isso: a marca d'água vive inteiramente em transições locais de n-gramas. Reescrever a forma de superfície com um modelo sem marca d'água re-semeia cada posição. Este é o ataque de robustez padrão na literatura de marcas d'água.

Por que o comprimento importa: $z$ cresce como $\sqrt{T}$. Uma passagem de 100 tokens com uma fração verde de 0,70 atinge apenas $z \approx 3,9$ — abaixo do limite. A detecção precisa de algumas centenas de tokens, e o mesmo vale para fixtures de benchmark significativos.

Imagem — C2PA e incorporação no domínio da frequência

  • C2PA / JUMBF: manifestos assinados em segmentos JPEG APP11, chunks PNG tEXt/iTXt, ou caixas c2pa WebP/AVIF. Como a assinatura cobre os dados de pixel, a re-codificação a partir de um buffer de amostra puro remove-a sem analisar JUMBF.
  • SynthID-Image: deslocamentos nos coeficientes DCT/DWT. Atacado por limiarização suave das sub-bandas de detalhe de alta frequência.
  • Tree-Ring: um padrão circularmente simétrico no latente inicial da difusão, sobrevivendo como estrutura coerente na fase de Fourier. Atacado por randomização da fase em anéis de média frequência preservando a magnitude — é por isso que a imagem permanece visualmente idêntica.

Áudio — AudioSeal / SynthID-Audio

Baixar ferramenta