Investigadores de la Universidad Carnegie Mellon, la Universidad Estatal de Carolina del Norte y Socket han desarrollado un conjunto de herramientas para identificar proyectos con calificaciones infladas en GitHub. Como resultado del uso de la herramienta, se identificaron 3.1 millones de estrellas expuestas ficticiamente, que abarcan 15835 depósitos. Se utilizaron 278 mil cuentas para hacer trampa.
El proceso de agregar estrellas ficticias se puso en marcha y se utilizó principalmente para aumentar el nivel de confianza en los repositorios que distribuyen códigos maliciosos bajo la apariencia de copias pirateadas de programas comerciales, bots de criptomonedas y trampas de juegos. El impulso de estrellas también se ha utilizado para promocionar productos, engrandecer a los desarrolladores, menospreciar a los competidores y aumentar la importancia a los ojos de los usuarios. Se dan ejemplos de 7 servicios de promoción comercial, cuyo costo oscila entre $0.10 y $1.62 por estrella.
El estudio procesó 6 mil millones de eventos, reflejados en un archivo de 20 terabytes de actividad de GitHub monitoreado por el proyecto GHArchive. Los eventos se analizaron en busca de anomalías, como calificaciones de estrellas sincrónicas para grupos de proyectos, aumentos repentinos de calificaciones para proyectos inactivos y actividad sesgada de los usuarios creada para hacer trampa. El kit de herramientas StarScout, que utiliza análisis de conglomerados e identificación de patrones repetitivos de comportamiento típicos de hacer trampa, se publica bajo la licencia Apache 2.0.
Como resultado del uso de la herramienta, se identificaron anomalías en la aparición de 4.53 millones de estrellas en GitHub, emitidas utilizando 1.32 millones de cuentas y cubriendo 22915 repositorios. Para excluir falsos positivos, se llevó a cabo un filtrado adicional de los resultados, durante el cual solo quedaron picos pronunciados en la visualización de estrellas y depósitos con un alto porcentaje de estrellas sospechosas.
Como resultado, se identificaron 278 mil cuentas con un patrón repetitivo de comportamiento típico de hacer trampa. Estas cuentas se utilizaron para asignar 3.1 millones de estrellas a 15835 repositorios. GitHub eliminó el 90.75% de los repositorios marcados y el 61.95% de las cuentas en octubre de 2024.




Fuente: opennet.ru
