Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
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
Anti-Tamper-Perturbation — [ICCV 2025] Proteção Anti-Adulteração para Geração Não Autorizada de Imagens Individuais | Kitploit
Ferramentas/GitHubGitHub/seeyn/anti-tamper-perturbation
EsteganografiaPapers e PesquisaAprendizado e EducaçãoSegurança de IAAtaque Adversário
GitHubseeyn/anti-tamper-perturbation

Anti-Tamper-Perturbation

[ICCV 2025] Proteção Anti-Adulteração para Geração Não Autorizada de Imagens Individuais

Ver Repositório
616há 10 mesesAinda 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

🛡️ Proteção Anti-Adulteração para Geração Não Autorizada de Imagens Individuais

Código Oficial para o Artigo ICCV 2025
📄 Proteção Anti-Adulteração para Geração Não Autorizada de Imagens Individuais

Página 1 do PDF

⚙️ Configuração do Ambiente

root@kitploit:~
conda create --name ATP --file requirements.txt
conda activate ATP

🔐 Iniciar ATP

  1. Baixe os datasets CelebA-HQ e VGGFace2. Os links para os datasets podem ser encontrados em CelebA-HQ, VGGFace2. Para o treinamento do modelo de autorização, o FFHQ também deve ser baixado.

  2. Baixe os pesos do modelo de autorização e a máscara de orientação.

  3. Defina o caminho de weights em configs/authorization.yaml e o caminho de mask em configs/protection.yaml.

  4. Execute

root@kitploit:~
python perturb.py --device cuda:0 --input_dir path_to_cleanData --output_dir path_to_perturbedData --method CAAT --input-mask path_to_mask

Recomendamos integrar o CAAT com o ATP, que alcança um bom equilíbrio entre eficiência de geração e desempenho de proteção. Mas também fornecemos código para integrar MetaCloak, Anti-DreamBooth e AdvDM.

📁 Estrutura do Diretório de Saída

root@kitploit:~
output_dir/
├── Authorized/  # Authorized images
|       ├ {id}/ # Authorized images separated by id
|       ├ Authorization_messages/ # Authorization messages for each image
└── ATP_{method}/     # Protected Images by ATP+{method}
         ├ {id}/ # ATP Perturbed images separated by id

🔍 Verificação

  1. Defina o caminho de weights em configs/verification.yaml

  2. ✅ Sem Purificação: Execute

root@kitploit:~
cd authorization
python verify.py --message_dir path_to_authorization_messages  --input_dir path_to_atp_protected_image --method CAAT
  1. 🔓 Sob Purificação
  • Transformação Ingênua: Execute
root@kitploit:~
cd authorization
python verify.py --message_dir path_to_authorization_messages  --input_dir path_to_atp_protected_image --method CAAT --noise-args 2 --noise-type Resize
root@kitploit:~
cd authorization
python verify.py --message_dir path_to_authorization_messages  --input_dir path_to_atp_protected_image --method CAAT --noise-args 70 --noise-type JPEG
  • Purificação Avançada: GridPure
  1. Primeiro execute o GridPure
  2. Execute
root@kitploit:~
cd authorization
python verify.py --message_dir path_to_authorization_messages  --input_dir path_to_atp_protected_image --method GridPure

Exemplo de Saída:

root@kitploit:~
Average Bit-Error: 0.44984375 Unauthorized image Ratio: 1.0 Pass Verification Identity Num: 0

Pass Verification Identity Num pode ser usado para calcular a Taxa de Sucesso de Proteção (PSR). Quando a purificação acontece e a identidade não passa na verificação, consideramos isso uma proteção bem-sucedida.

🧑‍🎨 Geração

Se as imagens passarem na verificação, elas podem ser usadas para geração.

  1. ✅ Sem Purificação: Execute
root@kitploit:~
 cd generation
 python generate.py --input_dir path_to_image_for_generation --method CAAT --device cuda:0

Os resultados são salvos no diretório "DREAMBOOTH".

  1. 🔓 Sob Purificação

Embora as imagens purificadas não sejam utilizadas para geração em nossos experimentos, devido à falha completa em passar na verificação, ainda incluímos código para os algoritmos de linha de base para permitir comparação.

Para JPEG e Resize, execute:

root@kitploit:~
 cd generation
 python generate.py --input_dir path_to_image_for_generation --method CAAT --device cuda:0 --purification naive

Para GridPure, você precisa primeiro executar o GridPure, depois usar as imagens purificadas para executar:

root@kitploit:~
 cd generation
 python generate.py --input_dir path_to_image_for_generation --method CAAT --device cuda:0 --purification gridpure

🧾 Cálculo de Métricas

  1. Baixe o embedding de ID de celebahq, vggface.

  2. Modifique as configurações definidas em ./configs/metrics.yaml. Você precisa definir o caminho para a imagem a ser avaliada (instance_dir), o caminho para o diretório onde será armazenado o arquivo de registro de resultados de avaliação (output_dir), o prompt usado para gerar a imagem, o caminho do embedding de ID (id_emb_path).

  3. Baixe o LIQE.pt do url. Coloque-o em ./metrics/LIQE/checkpoints

root@kitploit:~
 cd metrics
 python eval_dir.py --dataset CelebA-HQ --method CAAT

O resultado da avaliação será salvo no output_dir que você definir no metrics.yaml

root@kitploit:~
 python show.py --path evaluation_results

Exemplo de Saída:

root@kitploit:~
CLIP-IQAC       LIQE            ISM             FDFR             PSR
-0.176525       1.033371        0.489084        0.406250        0.859375

(Modificando o código do eval_dir.py nas linhas 67 a 68 (comentadas), você também pode avaliar o resultado da geração purificada a partir da transformação ingênua.)

📈 Treinamento

Você também pode treinar seu próprio modelo de autorização.

Modifique as configurações em ./configs/authorization.yaml

root@kitploit:~
cd authorization

bash scripts/train.sh 

📚 Agradecimentos

Para construir este projeto, utilizamos códigos de: LIQE, GridPure, ANTIDB, METACLOAK, CAAT, HiDDeN, BasicSR.

Agradecemos pelo excelente trabalho deles!

📌 Se você achar este projeto útil para sua pesquisa, considere citar nosso artigo.

© 2025 The Board of Trustees of the University of Illinois. Todos os direitos reservados.

Baixar ferramenta
ArgumentDescriptionExample
--deviceDecide em qual GPU executar o modelocuda:0, cuda:1
--input_dirCaminho para as imagens de entrada limpas./data/clean/
--output_dirCaminho para salvar as imagens perturbadas./data/perturbed/
--methodMétodo de perturbação de proteçãoCAAT, ANTIDB, ADVDM,METACLOAK
--input-maskCaminho para a máscara./mask/050_mask.pt
ArgumentDescriptionExample
--message_dir_dirCaminho para o diretório de mensagens de autorização./data/Authorization_messages
--input_dirCaminho para as imagens a serem verificadas./data/perturbed/
--methodMétodo de perturbação de proteçãoCAAT, ANTIDB, ADVDM,METACLOAK
--noise-argsMétodo de perturbação de proteção2, 50
--noise-typeMétodo de perturbação de proteçãoJPEG, Resize
ArgumentDescriptionExample
--datasetDataset para avaliaçãoCelebA-HQ, VGGFace2
--methodMétodo de perturbação de proteçãoCAAT, ANTIDB, ADVDM,METACLOAK