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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
BotLens — Artefato de pesquisa e servidor MCP que audita preocupações de segurança e privacidade em bots de Discord de terceiros por meio de análise de avaliações em larga escala, rotulagem por LLM e uma taxonomia de 31 temas. | Kitploit
Ferramentas/GitHubGitHub/ua-spectral/botlens
Análise de VulnerabilidadesColeta de InformaçõesSegurança WebPrivacidadeAprendizado de MáquinaPapers e PesquisaAprendizado e EducaçãoRastreador
GitHubua-spectral/botlens

BotLens

Artefato de pesquisa e servidor MCP que audita preocupações de segurança e privacidade em bots de Discord de terceiros por meio de análise de avaliações em larga escala, rotulagem por LLM e uma taxonomia de 31 temas.

1há 5 diasAinda não revisado
Ver Repositório

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

BotLens: Um Framework de Auditoria de Segurança e Privacidade para Bots Comunitários de Terceiros em Plataformas Sociais

Artigo: Kofi Ampomah e Tu Le. Measuring Users' Security and Privacy Concerns About Third-Party Community Bots on Discord. Network and Distributed System Security (NDSS) Symposium 2027. https://dx.doi.org/10.14722/ndss.2027.230535

Revisores de artefatos: comece por ARTIFACT-EVALUATION.md. Ele mapeia cada afirmação do artigo para o comando exato que a reproduz, lista as saídas e os tempos de execução esperados, e indica quais componentes estão fora do escopo.

Visão Geral

Este repositório contém o código-fonte do pipeline BotLens, que analisa preocupações de segurança e privacidade (S&P) em bots comunitários de terceiros no Discord por meio de análise de avaliações em larga escala e auditoria de metadados. O pipeline processa 183.142 avaliações de usuários de 23.102 bots coletados do Top.gg, identifica 8.832 avaliações como relevantes para S&P — um rendimento observado do pipeline de 4,82% — e as mapeia em uma taxonomia de S&P de 31 temas.

Estrutura do Repositório

BotLens/
├── README.md                          # This file
├── ARTIFACT-EVALUATION.md             # Claim → command → expected output
├── LICENSE                            # See License below
├── CITATION.cff                       # How to cite (also used by Zenodo)
├── botlens-ndss-data.zip              # The data; unpack to data/ (see Data below)
├── requirements-lock.txt              # Exact versions used for the paper
├── requirements.txt                   # Looser version bounds
│
├── config/                            # Pipeline configuration
│   ├── __init__.py
│   ├── settings.py                    # Paths, model params, thresholds
│   └── taxonomy.py                    # 31-theme S&P taxonomy (single source of truth)
│
├── scrapers/                          # Data collection scripts
│   ├── topgg_metadata_scraper.py      # Bot metadata scraper (Top.gg pages)
│   ├── topgg_reviews_scraper.py       # Bot review scraper (Top.gg reviews)
│   └── discord_server_scanner.py      # Server bot scanner — OUT OF SCOPE, see below
│
├── scripts/                           # Pipeline stages + analysis
│   ├── stage0_preprocess.py           # Merge, clean, detect language, translate
│   ├── stage1_llm_labeling.py         # Binary S&P classification via Ollama
│   ├── stage1b_active_learning.py     # Active learning loop
│   ├── stage2_prepare_data.py         # Train/val/test splits with balancing
│   ├── stage3_finetune_deberta.py     # Fine-tune DeBERTa-v3-large classifier
│   ├── stage4_classify_all.py         # Classify all 183K reviews
│   ├── stage5_theme_assignment.py     # Assign 31-theme taxonomy themes
│   ├── stage6_emotion_classification.py # GoEmotions → Ekman-style groups
│   ├── stage7_analysis.py             # Sec. IV-A: SPRR, TPR, per-tag/per-bot tables
│   ├── stage8_visualizations.py       # Figs. 2–9
│   ├── rq3_permissions_metadata.py    # RQ3 (Sec. IV-D): statistics + Figs. 10–14, 18
│   ├── language_affective_analysis.py # Appendix B: Fig. 17
│   ├── experiment_labeling_pct.py     # Labeling-budget experiment (10–45%)
│   ├── create_irr_sheets.py           # Inter-rater reliability labeling sheets
│   ├── compute_kappa.py               # Cohen's kappa (Sec. III-C3)
│   ├── check_langs.py                 # Language distribution (Table IV; needs raw crawl)
│   └── prep_30pct_for_al.py           # Prepare labels for active learning
│
├── tests/
│   └── test_smoke.py                  # Fast integrity checks, no data required
│
└── mcp_server/                        # BotLens MCP server (Sec. V)
    ├── server.py                      # The six tools of Sec. V-B2 (+ internal helpers)
    ├── example_client.py              # MCP SDK client reproducing Use Cases 1 and 2
    └── benchmark_latency.py           # Sec. V-D latency session

Cada figura que os scripts geram recebe o nome do número da figura do artigo (figures/fig02_sprr_over_time.png é a Fig. 2, e assim por diante). Os scripts produzem exatamente as figuras do artigo: Figs. 2–14, 17 e 18. A Fig. 1 é o esquema do pipeline e as Figs. 15–16 são capturas de tela da interface do relatório do BotLens.

Obtendo o artefato

O artefato é disponibilizado em https://github.com/ua-spectral/BotLens. Cada release do GitHub é arquivado permanentemente no Zenodo com um DOI; o DOI é fornecido no apêndice de artefatos do artigo e na página de releases do repositório.

Dados

Os dados são distribuídos no repositório como botlens-ndss-data.zip (41 MB; um arquivo é descompactado para 515 MB, além do limite por arquivo do GitHub). Descompacte-o uma vez, na raiz do repositório:

python -m zipfile -e botlens-ndss-data.zip .

Isso cria data/ ao lado de config/; nada mais precisa ser baixado. A estrutura é:

BotLens/
└── data/
    ├── processed/
    │   ├── all_reviews_classified.csv    # 183,142 rows — required by the MCP server
    │   ├── privacy_reviews_full.csv      # 8,832 S&P reviews w/ themes + affect
    │   ├── bot_metadata_cleaned.csv      # 23,102 bots (Table I, MCP fallback)
    │   ├── train.csv / val.csv / test.csv
    │   └── label_map.json
    ├── results/                          # Tables behind the paper's numbers
    ├── reference_figures/                # Our output of every generated figure
    └── irr/                              # Annotator workbooks (Sec. III-C3)

Verifique a integridade com sha256sum -c SHA256SUMS.txt de dentro de data/. data/README.md descreve cada arquivo.

Arquitetura do Pipeline

EtapaScriptDescriçãoSaída Principal
0stage0_preprocess.pyMescla avaliações + metadados, detecção de idioma, Argos Translatedata/raw/reviews.csv
1stage1_llm_labeling.pyClassificação binária S&P com Ollama/Llama 3 8Bphase1_binary_labels.csv
1bstage1b_active_learning.pyAmostragem por incerteza + rótulos por voto majoritárioConjunto de treino aprimorado
2stage2_prepare_data.pyFiltragem por confiança, downsampling 5:1, divisões estratificadastrain/val/test.csv
3stage3_finetune_deberta.pyFine-tuning do DeBERTa-v3-large (F1 = 0,938 com 30% de rotulagem)best_model/
4stage4_classify_all.pyInferência em lote sobre todas as 183.142 avaliaçõesall_reviews_classified.csv
5stage5_theme_assignment.pyOllama atribui temas da taxonomia de 31 temasprivacy_reviews_themed.csv
6stage6_emotion_classification.pyGoEmotions (RoBERTa) → 8 grupos de afetoprivacy_reviews_full.csv
7stage7_analysis.pySPRR, TPR, SPRR por tag e por bot, afeto por temadata/results/analysis_summary.json
8stage8_visualizations.pyFigs. 2–9, incluindo a tendência OLS da Fig. 2 (R² = 0,35)figures/fig02_* … fig09_*

Métricas Principais

  • SPRR (Security and Privacy Review Rate): a porcentagem de avaliações que nosso pipeline identificou e reteve como relevantes para S&P. SPRR geral = 4,82%. Esta é uma taxa de avaliações identificadas pelo pipeline, não uma medida de vulnerabilidades verificadas, conduta indevida confirmada ou risco em nível de bot.
  • TPR (Theme Prevalence Rate): distribuição das avaliações de S&P pelos 31 temas da taxonomia, excluindo avaliações rotuladas como unassigned.

Taxonomia

A taxonomia de S&P de 31 temas (Tabela V do artigo) compreende 20 temas herdados de Akgul et al. (USENIX Security 2024) e 11 temas desenvolvidos indutivamente neste estudo — 2 temas adicionais de Segurança & Proteção e 9 temas específicos do Discord. config/taxonomy.py é a única fonte de verdade; stage8_visualizations.py deriva seus agrupamentos a partir dele.

Baixar ferramenta