1 puntos por GN⁺ 2024-10-18 | 1 comentarios | Compartir por WhatsApp
  • El mundo de operar servidores de CSGO

    • Se operaba InvexGaming, una comunidad de servidores de CSGO con base en Australia y Nueva Zelanda. Estos servidores se volvieron populares gracias a la comunidad, el contenido, los torneos y los plugins personalizados del juego.
    • Operar los servidores incluía tareas como mantener los foros de la comunidad y la infraestructura del servidor, gestionar costos, agregar contenido, automatizar el sistema VIP, escribir plugins personalizados, corregir bugs del juego, mitigar ataques DDoS y gestionar a los jugadores que rompían las reglas.
    • La tarea más engorrosa era identificar y bloquear a los tramposos.
  • Un juego del gato y el ratón

    • En los juegos siempre hay tramposos, y los operadores de servidores pueden usar diversas técnicas para detectarlos.
    • Se puede recurrir a código del lado del servidor, al sistema Valve Anti-Cheat (VAC) y a antitrampas a nivel de kernel.
    • Sin embargo, estos métodos no pueden detectar automáticamente todas las trampas, y como último recurso hay que analizarlas manualmente mediante demos de CSGO.
    • Cuando se atrapa a un tramposo, hay que banearlo permanentemente del servidor. Pero los tramposos vuelven a intentar hacer trampa, y los jugadores con más conocimientos técnicos pueden evadir el baneo.
  • La técnica para evadir baneos

    • La evasión de baneos se logra cambiando información de identificación como la dirección IP y el Steam ID.
    • Si se usa un Steam ID o una dirección IP nuevos, se puede evadir el baneo, pero el sistema detecta esos cambios y vincula la nueva información de identificación con un baneo existente.
    • Es posible cambiar la dirección IP usando una VPN, pero si el Steam ID está baneado, vuelve a aplicarse el baneo.
    • Si se cambian ambas identificaciones al mismo tiempo, el sistema lo reconoce como un jugador nuevo y así se puede evadir el baneo.
  • Los problemas del fingerprinting por dirección IP

    • El Steam ID identifica de forma única a un jugador, pero la dirección IP no.
    • Esto puede causar problemas en redes compartidas, como entre hermanos o en la red de una universidad.
    • Para esos casos se construyó un sistema de excepciones, pero se recomendaba no jugar desde redes no confiables.
  • IdentityLogger

    • Los tramposos siempre causaban problemas en el juego, y a inicios de 2017 la evasión de baneos se había vuelto un problema serio.
    • Para resolver el problema de cambiar al mismo tiempo el Steam ID y la dirección IP, se ideó un método para guardar cookies usando el navegador VGUI.
    • Esas cookies persistían incluso al cerrar y volver a abrir el juego, y se almacenaban en el directorio de instalación de Steam, donde a los tramposos no les resultaba fácil borrarlas.
    • Esto permitió generar un identificador adicional, el Tracking ID, para poder identificar a los jugadores.
  • La gran ola de baneos de 2017

    • En febrero de 2017, este sistema se desplegó en todos los servidores de CSGO de Invex Gaming, y muchos tramposos fueron baneados.
    • La comunidad ganó reputación como un servidor “difícil para hacer trampa”, y los reportes relacionados con tramposos disminuyeron drásticamente.
    • Este método funcionó eficazmente hasta que Valve eliminó el navegador VGUI; después de eso, la técnica se compartió públicamente y el plugin se ofreció como código abierto.

Resumen de GN⁺

  • Este artículo presenta un caso interesante sobre cómo identificar y banear tramposos durante la operación de servidores de CSGO.
  • El método de identificación basado en cookies usando el navegador VGUI fue creativo y efectivo, y redujo en gran medida el problema de los tramposos en la comunidad.
  • Aunque este método ya no puede usarse debido a una actualización de Valve, plantea un nuevo enfoque para la seguridad en juegos.
  • Proyectos con funciones similares incluyen el sistema VAC y otros programas antitrampas.

1 comentarios

 
GN⁺ 2024-10-18
Comentarios de Hacker News
  • En UT2004 se usaba el GUID o la IP como método para bloquear jugadores. Pero cuando Epic abandonó el juego, aparecieron generadores de claves y el bloqueo por GUID dejó de servir. El bloqueo por IP tiene límites por el uso de VPN
    • La solución posible hoy en día es combinar el bloqueo por IP con el bloqueo de VPN, agregando subredes de VPN conocidas al firewall, y usar técnicas de fingerprinting que escanean estructuras específicas de carpetas del sistema
  • Aplausos al autor por haber usado una dirección RFC5737 TEST-NET-2
  • Los jugadores de países grandes a menudo se pierden del sentido de comunidad que existe en países pequeños. Cuando conoces a la gente que juega todos los días en un número reducido de servidores, eso agrega conversación y diversión
  • Un sistema anticheat que funcione solo del lado del servidor es un área de problemas con la que definitivamente me gustaría trabajar al menos una vez en mi carrera. Este tipo de enfrentamiento se vuelve más interesante cuanto más lo piensas
  • Si quieres leer el artículo cuando el sitio está caído o lento, se ofrece una captura de pantalla de la página completa
  • El tema no es detectar cheats, sino bloquear a los cheaters reincidentes. La detección de cheats es un problema completamente distinto, especialmente en relación con cheats de hardware
    • Personalmente, el método más efectivo es cobrar por el juego
  • El tráfico cifrado con HTTPS no permite encontrar tokens en bruto con herramientas como Wireshark. Pero con herramientas como Fiddler o Burp Suite se puede descifrar HTTPS fácilmente
  • Solo compartí la solución y las técnicas con operadores de servidores de confianza. Usar VGUI fue efectivo, aunque fue una lástima que el navegador web se eliminara alrededor de 2018
  • Respeto la creatividad y efectividad de la solución. Pero habría sido mejor que VGUI no existiera desde el principio
    • Este tipo de rastreo está tan extendido en la web que es casi imposible evitarlo. Resulta atractivo obtener mejores resultados aprovechando errores lógicos
  • Bloquear nuevos Steam ID desde una IP bloqueada es demasiado estricto. Algunos ISP usan CG-NAT o rotan las IP, así que un solo usuario malicioso puede terminar perjudicando a muchos jugadores inocentes