Una carta del equipo Anti-Cheat

Hola jugadores de PUBG:

Queremos manteneros informados sobre nuestras medidas anti-cheat, así que aquí tenéis un resumen de nuestros progresos durante los últimos meses. Estamos trabajando en varios proyectos anti-cheat y, aunque no podemos revelar todos los detalles, ya que hacerlo podría perjudicar su
desarrollo, nos gustaría hablaros de la situación actual y de nuestros objetivos futuros.

  • Reforzar las mediciones técnicas

  • Mejorar la funcionalidad de las soluciones anti-cheat

  • Mejorar en la detección de programas no autorizados

  • Gestión de vulnerabilidades en el sistema de Steam

  • Fortalecer la respuesta por la vía legal

 

Reforzar las mediciones técnicas

Ha habido varios tipos de ataques llevados a cabo por programas de cheats en el proceso de juego de PUBG, y hemos tomado varias medidas de seguridad para responder a cada tipo de ataque y mejorar la eficiencia. Primero vamos a explicar cómo operan estos programas de cheats en general y el refuerzo técnico que hemos hecho en base a esto.

ikgFqsptnguEr8qb_M4VYY4m5TZb4FkKIlGJySMqH4ZP_1AsqIcEid0SLzwUjiHClTwd_LMXIk7iE8qFfvgrLQazwWRayV99JpTrj0WH2Xkq9t0NlaqKt9FNI7SIj54ls1nn9po-

① Cuando el programa de cheats (exe) y el juego (exe) se ejecutan, la información necesaria se cargan en la memoria RAM de manera simultánea.

② Se activa una protección por defecto del juego o una solución anti-cheat 3rd Party

    • Es una fase de protección preliminar para bloquear que otros procesos accedan a los propios procesos del juego.

③ El proceso del programa de trampas hace que la tecnología de protección del punto ② sea inefectiva y consigue acceder* a los procesos del juego que hay en memoria

    • *Conseguir acceder a estos procesos significa poder cambiar la información relacionada con el juego de la manera deseada.

    • Los cheats más representativos usados en estos casos son DKOM, Process Hollowing y SSDT hooking.

④ El programa de cheats habiendo accedido a los procesos de la memoria puede recoger diversa información y modificarla o copiarla para proporcionar funcionalidades ilegales que no están disponibles en el juego. La técnica más representativa que se usa es la de inyección de DLL o inyección de Código.

    • Inyección DLL: Inyecta un fichero DLL en un proceso determinado. Usa LoadLibrary() API de Windows.

    • Inyección de Código: Inyecta ejecuciones en el proceso objetivo. Usa CreateRemoteThread() de Windows.

⑤ El espacio de memoria obtenido puede ser leído libremente, o falsificado/modificado para proporcionar funcionalidades que no están implementadas en el juego.

La inyección de DLL es uno de los métodos de hacks más antiguos y más usados. Consiste en inyectar por la fuerza un fichero DLL en el proceso del juego. Cuando este ataque se consigue hacer correctamente el juego confía en el código del fichero DLL como si se tratara de código del juego original. Por lo tanto, los procesos del juego se pueden modificar tal y como el hacker desee.

Nuestro equipo anti-cheat ha estado trabajando en bloquear estos ataques de inyección de DLL. También hubo problemas de compatibilidad en las fases tempranas del desarrollo ya que programas como Steam y Discord se detectaban como intentos de inyección de DLL y eran reconocidos como programas de código malicioso.

Otro tipo de ataque al que nos hemos enfrentado son los ataques a los controladores del kernel. El controlador del kernel es un archivo necesario para la comunicación entre piezas de hardware y que forma parte de un proceso que opera bajo un nivel de autoridad específico. El controlador del kernel
puede eludir la mayoría de las soluciones anti-cheats y se ejecuta con una autoridad superior a la del usuario general, por lo que es mucho más difícil de detectar.

Además, aunque el sistema operativo Windows bloquea internamente los controladores del kernel no autorizados, hay casos en los que se distribuyen certificados y controladores no autorizados como si fueran legales para explotar fallos de seguridad.

Podríamos defendernos de este tipo de ataques utilizando el mismo método de bloqueo de inyecciones de archivos DLL, pero no sería muy efectivo, ya que se descubren nuevas vulnerabilidades en el sistema operativo Windows constantemente. Además, la mayoría de las soluciones anti-cheats emplean métodos similares a los utilizados por el código malicioso, así que no es fácil distinguirlas. Por lo tanto, el equipo anti-cheats está protegiendo la sección de la memoria que puede ser objetivo de piratas informáticos mediante el uso de encriptación para responder efectivamente a los ataques con controladores del kernel. Estamos haciendo todo lo posible para aplicar este método a otras secciones.

También usamos varias soluciones técnicas como el cifrado del protocolo de comunicación entre el cliente y el servidor, o la verificación del valor de los resultados en el cliente, para ir un paso por delante en esta lucha contra los piratas.

Mejorar la funcionalidad de las soluciones anti-cheat

Como añadido a estas técnicas de protección explicadas antes, PUBG también utiliza soluciones externas de anti-cheat para proteger las áreas de procesado del juego. Como ya anunciamos en notas de prensa, etc, actualmente usamos dos sistemas anti-cheat: BattlEye y Uncheater. Estos sistemas protegen los procesos del juego y detectan varios intentos de saltarse las soluciones anti-cheat al mismo tiempo.

Además de estas soluciones, también hemos aplicado una técnica de aprendizaje que analiza el patrón de uso de nuestros jugadores y construye un sistema que puede detectar cambios anormales en los patrones de juego o en acciones que interrumpen la operación normal del juego procedentes de jugadores que usan hacks. En el proceso de construcción de este sistema, hemos colaborado con numerosas compañías con gran experiencia en soluciones anti-cheat y con los mejores ingenieros, que nos han ayudado a fortalecer nuestras medidas de seguridad.

Continuaremos trabajando con más compañías centradas en soluciones anti-cheat para estudiar las nuevas técnicas de ataque que surjan y desarrollar la tecnología necesaria para protegernos.

Mejorar en la detección de programas no autorizados

Incluso con estas medidas de protección, es prácticamente imposible bloquear todos los programas no autorizados. En el caso de los programas que intentan saltarse nuestras soluciones, tratamos de detectar si dichos programas se utilizan en el juego para poder bloquearlos de inmediato.

El equipo anti-cheats analiza aproximadamente 3 TB de registros de juegos, unos 60 tipos de registros de trampas y más de 10 millones de informes de media al día. De este mar de datos, seleccionamos a los usuarios con patrones de juego anormales e iniciamos un proceso de verificación, tras el que bloqueamos las cuentas pertinentes. Además, actualizamos periódicamente los patrones de programas no autorizados para asegurarnos de que los programas que hemos bloqueado antes no se hayan modificado para que vuelvan a funcionar.

Asimismo, tratamos de mejorar los métodos para compartir actualizaciones con los usuarios. Un ejemplo es el sistema de denuncias que se introdujo en la actualización del 23 de agosto. Desde entonces, se han enviado más de 100 millones de denuncias a los usuarios. El 83 % de los usuarios que recibieron múltiples denuncias en una sola sesión sufrieron un bloqueo permanentemente, así que si alguien piensa que su denuncia no sirve de mucho, debe saber que está siendo clave para lograr una experiencia de juego más justa.

A continuación, se muestran los datos de las denuncias semanales del 23 de agosto al 30 de noviembre.

0I_NnRI0YwAX96tjbPwzRJRkRUdl9FnleBsoqb9OVt4jbXV00pzwWnVYc1YoMmr2qCogr3YmSmBpPPTJTo3789qBzHH95ofHupc0y39jGyrhuBWHzOKmsTBBV4W4stzeTt9UKjtU

Los bloqueos de hardware comenzaron el 19 de noviembre. Este método de bloqueo es muy delicado, por lo que tomamos precauciones adicionales para asegurarnos de que los ordenadores de cibercafés u ordenadores públicos no se vean afectados injustamente. Seleccionamos cuidadosamente los dispositivos que vamos a bloquear para evitar errores. Al bloquear un dispositivo de hardware, se muestra el mensaje que aparece en la siguiente captura de pantalla, tras lo cual no se podrá jugar más a PUBG desde dicho dispositivo. Además de los bloqueos de hardware, también hemos comenzado a bloquear ratones macro. Queremos impedir que los jugadores se aprovechen de las injustas ventajas que proporcionan estos dispositivos macro.

yvACnq6ZmnMHlyfCFPDPCF7t6_FDmF66_Rrk3e1AqXDMrQryZ6M4ij1k9ebDZOjOip6sL3-D0Gnkl1CjoBU0oG-tfTWUAiwv0pAZBMeLP8LwHxUCUZQMC4RGRD0k5RE4qs6kRVAA

0-L2q8YPz_rPsIntCOgBaZp_IT4DBuWBLLLTm7HZL4agK3ZqVw-pN90LECsple7Z10EktRFJQ6QhkeJnb9LUrNuNyBzE_NUjK3mXWPhTGNkp_KthwVbZWQv5dsr7tK1brHToR5Gh

<Mensaje de bloqueo por hardware (arriba) / Mensaje de bloqueo por ratón con macro (debajo)>

Actualmente hay más de 100 personas monitorizando los vendedores de programas ilegales (sitios webs, programas de mensajería, discord, etc) alrededor de todo el mundo 24/7. También estamos monitorizando varias comunidades que intercambian información sobre programas ilegales de manera que cualquier elemento que pueda suponer una amenaza a la seguridad de PUBG se pueda detectar y solucionar rápidamente.

El objetivo es incrementar las acciones preventivas para conseguir que estos usuarios dejen de ser activos en el juego.

También se ha aplicado en el servidor un sistema que envía notificaciones en tiempo real a los jugadores que se encuentren en una sesión si alguien de esa misma sesión resulta expulsado. Cuando una situación de juego que se sale de los patrones habituales se detecta en tiempo real o se demuestra que un usuario está utilizando programas ilegales se anunciará la expulsión a todos los jugadores que se encuentren en esa misma sesión de juego mediante el killfeed. Creemos que esto aclarará algunas de las preguntas que nuestros jugadores tenían acerca de las actividades anti-cheat.

Gestión de vulnerabilidades en el sistema de Steam

Además de las medidas aplicadas dentro del juego, también hemos mejorado los puntos débiles de las plataformas externas. Como sabéis, PUBG utiliza la plataforma de Steam. Hay situaciones en las que algunos puntos débiles de la plataforma son explotados para obtener beneficios ilícitos, y hemos trabajado junto con Steam para evitar que ocurran estos casos. A continuación podéis ver algunos ejemplos de casos reales.

  • Utilizar el punto débil en el sistema Steam Family Sharing para evitar las restricciones de Steam y PUBG

    • Si una cuenta que ha comprado PUBG utiliza Family Sharing para compartir el juego con otra cuenta que no lo haya comprado, la cuenta con la que se ha compartido el juego, no puede jugarlo más.

  • Modificar el tiempo de juego en Steam para conseguir un reembolso del juego a pesar de haber estado jugando durante largos períodos de tiempo

    • Hemos trabajado con Valve (Steam) para reforzar el cálculo de tiempo de juego de PUBG y el software de Steam para realizar los reembolsos, para evitar que esta situación se siga repitiendo.

  • Utilizar una cuenta que ha sido bloqueada en el Servidor Live para acceder al Servidor de Prueba y usar hacks, abusando del hecho de considerarse dos servidores diferentes debido a la estructura de la plataforma de Steam.

    • Hemos cambiado el sistema para que los registros de bloqueo se comprueben en todos los servidores. Los registros de bloqueo se comparten entre ambos servidores y otros servidores para que dichos jugadores tampoco puedan acceder a ellos.

Estamos mejorando constantemente el sistema gracias a una colaboración con Steam contra estos abusos que se aprovechan de las vulnerabilidades del sistema.

 

Acciones Legales Reforzadas

Los Hacks que  empañan un ambiente de juego justo, deben ser bloqueados y los desarrolladores, promotores y vendedores de dichos programas, deben ser eliminados de la industria de los videojuegos. Para prevenir la difusión de dichos programas, estamos trabajando con diferentes autoridades alrededor del mundo que tomarán medidas legales, tanto al comprador como a las demás partes implicadas. A continuación podéis ver un desglose de las opciones legales tomadas en 2018 en Asia, gracias a un colaboración con Tencent.

  • 41 detenidos en Lianyunggang, China en Enero, 2018

  • 3 detenidos en Huai’an, China en Febrero, 2018

  • 11 detenidos en Shanyang, China en Febrero, 2018

  • 141 detenidos en Nanjing, China en Abril,, 2018

  • 1 detenidos en Huai’an, China en Abril, 2018

  • 6 detenidos por Daejeon Metropolitan Police Agency, Corea en Agosto, 2018

  • 1 detenidos en Wenzhou, China en Septiembre, 2018

  • 3 detenidos en Tangshan, China en Octubre, 2018

  • 34 detenidos en Wenzhou, China en Octubre, 2018

  • 11 detenidos por Yangcheon Police Station, Corea en Octubre, 2018

Además de las resoluciones comentadas anteriormente, actualmente estamos investigando la venta de programas ilegales junto con la The Korean National Police Agency, firmas de abogados, y agencias de protección de derechos de autor. Os daremos más información acerca del resultado de las investigaciones en cuanto nos sea posible.

 

Para terminar

PlayerUnknown’s Battlegrounds es un juego battle royale donde 100 jugadores se enfrentan al mismo tiempo, por lo que el uso de un solo hack, afecta a los otros 99 jugadores y puede tener una influencia definitiva en la partida por lo que que tenemos que mantener un nivel de seguridad mucho más alto, en comparación con otros juegos.

Nuestra intención es seguir trabajando en este sentido. Esta carta que hoy compartimos contiene los primeros pasos en esta batalla, pero no vamos a dejar de investigar y desarrollar nuevas tecnologías anti-cheats contra programas y sus desarrolladores.

Queremos expresar nuestra gratitud a todos los usuarios que habéis depositado vuestra confianza en nosotros. Haremos todo lo que esté en nuestra mano para devolveros esa confianza. Gracias por vuestro constante apoyo y contribución.

Gracias,

El Equipo PUBG

 

Discutir artículo
Compartir artículo