Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
BotLens — Artefacto de investigación y servidor MCP que audita problemas de seguridad y privacidad en bots de Discord de terceros mediante análisis de reseñas a gran escala, etiquetado con LLM y una taxonomía de 31 temas. | Kitploit
Herramientas/GitHubGitHub/ua-spectral/botlens
Análisis de VulnerabilidadesRecopilación de InformaciónSeguridad WebPrivacidadAprendizaje AutomáticoPapers e InvestigaciónAprendizaje y EducaciónCrawler
GitHubua-spectral/botlens

BotLens

Artefacto de investigación y servidor MCP que audita problemas de seguridad y privacidad en bots de Discord de terceros mediante análisis de reseñas a gran escala, etiquetado con LLM y una taxonomía de 31 temas.

1hace 5 díasAún no revisado
Ver Repositorio

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

BotLens: un marco de auditoría de seguridad y privacidad para bots comunitarios de terceros en plataformas sociales

Artículo: Kofi Ampomah y 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 artefactos: comiencen por ARTIFACT-EVALUATION.md. Asigna cada afirmación del artículo al comando exacto que la reproduce, enumera las salidas esperadas y los tiempos de ejecución, e indica qué componentes quedan fuera del alcance.

Descripción general

Este repositorio contiene el código fuente del pipeline de BotLens, que analiza las preocupaciones de seguridad y privacidad (S&P) en bots comunitarios de terceros en Discord mediante análisis de reseñas a gran escala y auditoría de metadatos. El pipeline procesa 183.142 reseñas de usuarios de 23.102 bots extraídos de Top.gg, identifica 8.832 reseñas como relevantes para S&P — un rendimiento observado del pipeline del 4,82 % — y las asigna a una taxonomía de S&P de 31 temas.

Estructura del repositorio

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 generan los scripts lleva el nombre del número de figura de su artículo (figures/fig02_sprr_over_time.png es la Fig. 2, y así sucesivamente). Los scripts producen exactamente las figuras del artículo: Figs. 2–14, 17 y 18. La Fig. 1 es el esquema del pipeline y las Figs. 15–16 son capturas de pantalla de la interfaz del informe de BotLens.

Obtención del artefacto

El artefacto se publica en https://github.com/ua-spectral/BotLens. Cada release de GitHub se archiva de forma permanente en Zenodo con un DOI; el DOI se indica en el apéndice del artefacto del artículo y en la página de releases del repositorio.

Datos

Los datos se distribuyen en el repositorio como botlens-ndss-data.zip (41 MB; un archivo se descomprime a 515 MB, por encima del límite por archivo de GitHub). Descomprímelo una vez, en la raíz del repositorio:

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

Esto crea data/ junto a config/; no es necesario descargar nada más. La estructura es:

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 la integridad con sha256sum -c SHA256SUMS.txt desde dentro de data/. data/README.md describe cada archivo.

Arquitectura del pipeline

EtapaScriptDescripciónSalida clave
0stage0_preprocess.pyFusionar reseñas + metadatos, detección de idioma, Argos Translatedata/raw/reviews.csv
1stage1_llm_labeling.pyClasificación binaria S&P con Ollama/Llama 3 8Bphase1_binary_labels.csv
1bstage1b_active_learning.pyMuestreo por incertidumbre + etiquetas por voto mayoritarioConjunto de entrenamiento mejorado
2stage2_prepare_data.pyFiltrado por confianza, submuestreo 5:1, divisiones estratificadastrain/val/test.csv
3stage3_finetune_deberta.pyAjuste fino de DeBERTa-v3-large (F1 = 0.938 con 30% de etiquetado)best_model/
4stage4_classify_all.pyInferencia por lotes sobre las 183.142 reseñasall_reviews_classified.csv
5stage5_theme_assignment.pyOllama asigna los temas de la taxonomía de 31 temasprivacy_reviews_themed.csv
6stage6_emotion_classification.pyGoEmotions (RoBERTa) → 8 grupos de afectoprivacy_reviews_full.csv
7stage7_analysis.pySPRR, TPR, SPRR por etiqueta y por bot, afecto por temadata/results/analysis_summary.json
8stage8_visualizations.pyFigs. 2–9, incluida la tendencia OLS de la Fig. 2 (R² = 0.35)figures/fig02_* … fig09_*

Métricas clave

  • SPRR (Security and Privacy Review Rate, tasa de reseñas de seguridad y privacidad): el porcentaje de reseñas que nuestro pipeline identificó y retuvo como relevantes para S&P. SPRR global = 4,82%. Esta es una tasa de reseñas identificadas por el pipeline, no una medida de vulnerabilidades verificadas, conducta indebida confirmada ni riesgo a nivel de bot.
  • TPR (Theme Prevalence Rate, tasa de prevalencia de temas): distribución de las reseñas de S&P entre la taxonomía de 31 temas, excluyendo las reseñas etiquetadas como unassigned.

Taxonomía

Descargar herramienta