He sido dev de cheats y contesto a vuestras preguntas

B

Los baneos por overwatch son siempre Gameban en juego. Ahora hay otros 2 bans parecidos:

Vac: Se ha detectado un cheto en ejecución mientras jugabas en un servidor de csgo protegido por Vac.

Game ban: Se ha detectado "algo" inhumano mientras jugabas en un servidor de csgo. No tengo claro por que algunos casos es Vac y otro Gameban.

Todos se aplican únicamente si estás jugando online, aunque sea detectable si juegas offline no tiene por que bloquearte.

1 respuesta
cabron
#130AikonCWD:

No existe tal protección. Siempre podrás acceder a la memoria de un juego/programa que se ejecuta bajo los mismos permisos que el cheat.

Sí que existe, a cada proceso el sistema operativo le asigna su espacio de memoria virtual privado, y no tiene forma de salir de ahí para intentar acceder al espacio virtual de otro proceso salvo que hagas alguna de las cosas que pone #134

1 respuesta
AikonCWD

#152 Si ambos procesos (cheat y juego) se ejecutan bajo el mismo usuario (mismos privilegios), podrás acceder a la memoria de dicho juego, sin restricción. Llamas a la API SeDebugPrivilege y con el handle obtenido puedes ir trabajando la memoria. Otra opción es cargar el cheat/injector en ring0, a través de un driver (por ejemplo) y con eso ya podrías manejar la memoria de procesos/programas/juegos que se ejecuten bajo SYSTEM o similares.

A parte de la api SeDebugPrivilege, hay otros métodos.

1 respuesta
cabron

#153

Si no te he dicho que no se pueda hacer de ninguna forma, solo te decía que lo que comentaba #129 es verdad. Desde un proceso no puedes acceder directamente a la memoria de otro salvo que la tenga compartida por que tiene espacios de memoria virtual diferentes.

NeV3rKilL

Ojalá MV Tuviese un par de posts como este al mes.

Gracias por el AMA y por impregnar de conocimiento esta comunidad.

Sepi

Yo el problema mayor de los cheats y corrigeme si me equivoco es que existen muchisimos mas programadores trabajando para crear cheats o vulnerar los anticheats que gente trabajando en esos anticheats para pillarlos.

y mas si contamos con las remuneraciones ecoonomicas, si un programador por realizar un cheat se esta ganando un buen dinero y le pillan su cheat es normal y logico que intente sacar uno nuevo lo antes posible y por mucho que actualicen el anticheat a los pocos dias o incluso horas existiran nuevos cheats que lo vulneren. o esa es mi impresion.

1 respuesta
B

#156 Pues yo creo que el principal problema es que hay gente dispuesta a usarlos, e incluso peor, dispuesta a pagar por usarlos.

2
Soltrac

Buenos días!. Me pongo a responder:

#136 Hoy en día, en juegos con largo recorrido es fácil porque la gente lo ha hecho tantas veces q hasta en github tienes código. Te pondré un ejemplo de modo externo, de modo interno es parecido:

Supongamos que ya con cheat engine o similares hemos encontrado en que posición de memoria están los jugadores y sus posiciones o simplemente en internet las han publicado y yo hago uso de ello:

Hago un bucle for cada 16 ms (alrededor de 60 FPS) en un programa para recorrer las posiciones de memoria de esos jugadores.

Una vez las tengo, compruebo lo básico. La vida del jugador (posición de memoria) y el equipo (posición de memoria) y ya depende del juego ciertas cosas más. Si el jugador está vivo y está en el otro equipo, voy a dibujarlo.

¿Cómo lo dibujo? Lo más sencillo es dibujar como dibuja el propio engine. Esta función es la que en el mundo de los desarrolladores de videojuegos se denomina WorldToScreen. Es decir, a partir de una posición en 3 dimensiones (X,Y,Z) dibujar una posición en 2 dimensiones (X,Y) que es mi pantalla. Si se donde está esa función y encima conozco el engine y se como se dibuja simplemente la replico. De esa manera, simplemente compruebo si la posición está dentro de mis límites de pantalla y dibujo lo q sea. Si la posición está fuera de la pantalla (por ejemplo, detrás mía), ya si quiero decido si dibujar algo.

Si el engine no es conocido, hay que tirar un poco de matemáticas y trigonometría.

Ahora la pregunta, como pinto? Cualquier lenguaje de programación te deja pintar en 2D en una pantalla invisible, pero esto es lento (porque estamos pintando cada frame y pintamos por software). Lo mejor es pintar en OpenGL o pintar en D2D/D3D que son muchos más rápidos porque pintamos por hardware. Para esto, tiramos de la SDK de ambos. Hoy en día, existen cientos de ejemplos en github y similares de pintar líneas, texto, etc en github.

Espero que la explicación más o menos se haya entendido.

#137 Va así. Es un poco muy coñazo depende del juego. Debuguear hoy en día con los anticheat es imposible, es la mejor manera de comerte un ban. Digamos que hay 3 pasos. Uno es conseguir leer el juego (saltarse el anticheat), el segundo es que no detecte lo que estás haciendo y el tercero que lo que estás haciendo funcione.

#138 Lo que quería decir es exactamente lo que has dicho. Q hoy en día VAC no puede detectarme (no se mañana), pero overwatch sí.

Para los 2 primeros, lo más cómodo es hacerlo en juegos f2p que use el mismo anticheat. Para el tecero pues uno se inventa sus métodos de debug (escribir en archivos y demás).

De todas formas, estamos en lo mismo. Depende del juego y del engine, ya existe mucha información de los engines más usados (UE4, Unity, Source, etc.)

#139 Me parece fatal. Desgana, etc. Desconozco si tiene algún anticheat, pero por lo que me comentas, no. Mi CV a EA no serviría de nada porque hay anticheats que se venden ya y además hay gente muchíiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiimo mejor preparada que yo. Yo en este mundo estoy por debajo de la media.

#142 El secreto para mi va encaminado en 2 sentidos. Que el anticheat sea desarrollado por la propia compañía que desarrolla el videojuego (Warden de blizzard o Riot con el lol) y la seguridad del sistema operativo. Si yo desarrollo el videojuego, puedo controlar que cosas no son humanas. Battleye y EAC al ser externos, funcionan de 2 maneras que me parece que están bien, que son la de impedir acceder al juego y la de detectar cosas sospechosas en el PC, pero es necesario también detectar cosas inhumanas. Microsoft en este sentido está dando buenos pasos. Hace años era muy fácil esconder un rootkit. Si yo puedo esconder un virus, imagina un cheat. Cada vez que se va actualizando Windows, Patchguard protege más y más y cada vez es más difícil esconderlo. Además, lo mismo con el modo driver, si hago un driver y no lo firmo, no puedo usarlo. Antes firmar era cuestión de dinero, con Windows 10 ya tienes que tener una empresa. Si yo no puedo esconder un virus, no puedo esconder un cheat.

#144 Llegará con la profesionalización. Es decir, yo puedo doparme para echar una pachanga con los amigos al fútbol, pero si juego en la liga, la cosa es más seria.

#146 Pedazo de anticheat. Se nota que Blizzard hace las cosas bien. Vais a encontraros muy pocos cheaters en Overwatch.

#156 El problema es de desgana de los desarrolladores de juego (más que desgana, presupuestos). Aparte de que los S.O. son abiertos. En consolas no tienes este problema. Como contesté a #142, el camino es que el desarrollador del videojuego proteja su juego, como Warden hace con blizzard y que el S.O. cada vez sea un sistema más protegido. Por supuesto, la realidad es que la gente está dispuesta a pagar por tener ventajas. Y no solo por ganar un torneo de miles de dólares.

1 respuesta
F

Igual ya te lo han preguntado por ahí y no lo he leído. ¿Hay compañías que hacen la vista gorda a los hacks/bots para ganar dinero? ¿Hay compañías que desarrollan sus propios hacks para venderlos por otro lado?

No se, cuando era la época de Silkroad (MMO), me daba la sensación de que Joymax vendía sus propios bots o recibía dinero por parte de terceros para no banearlos.

1 respuesta
Kb

#65 yo te he visto en el foro de CE, haces algo mas a parte de eso?

1 respuesta
1 comentario moderado
Soltrac

#159 En mi opinión, hay compañías más dejadas en este tema, no se si por presupuesto o por no complicarse. Respecto a si ellos mismos hacen bots o hacks, yo personalmente lo dudo.

AikonCWD

#160 Nah, en mi caso es puro altruismo. Ya expliqué antes que no cobro nada, todo free. Además casi nunca hago cosas para juegos online.
Sobre si hago otras cosas... sí. Me dedico al análisis de malware, desarrollo de malware, y participo en un foro de seguridad informática como moderador. Hace años también desarrollaba para seguridadwireless (supongo que os sonara wifislax/wifiway).

B

Que los DEVS de cheats, lo hagais como reto, superacion y ya perfecto. Pero cuando el cheto sale de tu pc para que sea usado os convierte en otra cosa, algo que me produce asco y desprecio.

Luego estan los que los usan, que ya son el limite de la mediocridad como player.

1 1 respuesta
AikonCWD

#164 A veces he programado cheats más currados que el propio juego que venden a 9.99$, así que por mi parte; remordimiento 0. No es mi problema que el fabricante no sepa programar correctamente un juego, o que directamente se la sude la seguridad de sus juegos.

Y para romper una lanza a mi favor, el 80% o 90% de lo que he creado ha sido para juegos single-player. Y si la memoria no me falla, jamás he creado nada para ningún multiplayer competitivo.

1 respuesta
B

Como devs de cheats, ¿que haríais para que VAC sea mucho más seguro? ¿Se podría conseguir esa seguridad sin que el sistema se convierta en algo super intrusivo?

1 respuesta
B

Mucho críticar a los devs y tal, pero si vosotros se os diera bien una cosa y pudierais ganar mucho dinero fácil que se joda el juego y que se joda la comunidad.

1 respuesta
B

#165 Osea que segun tu si una empresa saca un juego y no se preocupa en demasia de asegurarse contra su hackeo, te da derecho a meterte donde no te llaman. entiendo.

Y si, es tu problema cuando te metes donde no debes para crear algo, que siendo usado, se convierte en una ventaja sobre otros de forma injusta y mediocre. Y si encima te lucras con ello, peor aun.

Y repito, mientras sea en plan reto y superacion etc, perfecto.

#167 Tenemos a rappel en el foro. Y lo peor es que se cree que todos somos como el.

2 respuestas
AikonCWD

#168 Vayamos por partes...

  • El 80% o 90% de los que he creado ha sido para juegos offline/1-jugador
  • De lo poco que he creado para juegos online/multiplayer, ha sido siempre en juegos no competitivos
  • No he cobrado jamás por hacer cheats. Lo máximo ha sido aceptar que el interesado me regale el juego en steam para poder analizarlo yo.

Y sí, si una empresa tiene la cara dura de programar una mierda a 59.90€ y no dedicar ni lo más mínimo a proteger su software... tengo todo el derecho del mundo en dejar patente lo fácil que es entrar y reventar todo (siempre y cuando no me lucre por ello). Es la única forma para que las empresas se pongan las pilas y hagan las cosas bien y como es debido.

En plataformas de software, las empresas ofrecen bounties para quien descubra fallos. Si alguien en su casa consigue petar facebook/twitter/twitch/etc... pueden reportarlo y la empresa les pagan xxxxx€. Así con poco dinero consiguen parchear sus plataformas, evitan que el crack se haga publico y el "hacker" se lleva una comisión.

Que hagan lo mismo con juegos online y se terminará el problema.

2 2 respuestas
nerkaid

#168 Es que joder, como es la gente, dejo la puerta de mi tienda abierta y entran, cuando claramente yo no quiero que entren aunque no me preocupo de cerrarla xd

1 respuesta
PaCoX

los k decis que se gana mucho... los devs buenos se pasan al lado bueno xk se gana bastante más, a parte de que hay más nivel, reconocimiento y queda bien en el cv xD

B

#169 Si estoy de acuerdo contigo. Pero que una empresa hagas las cosas mal, no te da derecho a meterte ahi. Si lo haces como dices, en plan single o para denunciar un agujero de seguridad, perfecto. Pero cuando es usado por un inutil para sentirse bien matando a gente online, ya es otro tema.

Y si una empresa saca una mierda por 60 pavos, vease COD, es problema de quien lo compra, yo desde luego no dejo ni un duro por juegos copiados por enesima vez.

#170 Claro, veo una tienda abierta y ya tengo derecho a entrar y revolver todo verdad ? por no hablar de llevarte algo. Buen ejmplo has ido a poner.

1 respuesta
nerkaid

#172 No revuelves nada, de hecho no cambias ni una línea de código del juego, solo entras y miras lo que quieres, porque la puerta esta abierta, si no quieres que entren y miren, cierra la puerta como dios manda.

1 respuesta
B

#173 Aqui precisamente se habla de tocar, modificar o incluso inyectar codigo. Creo que nos confundimos eh.

Si es como dice Aikon, para darle caña a las empresa y que esten al dia de su seguridad, ojala fuera la solucion. Pero me temo que muchas empresas sudan de ello, ganan pasta y a otra cosa.

Luego existen aplicacion, que no juegos, como TT, FB que ahi si les conviene tenerlo bien al dia, se juegan mucha pasta, recoleccion de datos etc.

AlexGc

Y la gente perdiendo el pelo por personas como tú

Kalgator

#169 Entonces, si voy a tu casa con una maza, tiro la puerta/pared me da derecho a entrar a tu casa y robar (o destrozar, asi no me lucro) lo que me de la gana?

podías haber invertido en tener paredes y puertas de titanio para que no te entren a robar :psyduck:

1 1 respuesta
E

#158 yo hablaba más bien del tema wow xD quiero desarrollar un bot o algún hack (just for fun) y no se muy bien por donde empezar. Imagino que necesito los mapeos de memoria, handlers y cosillas así, no?

1 respuesta
AikonCWD

#176 No estáis haciendo el simil correcto....

Yo no inyecto código en los servidores, ni rompo nada ajeno... Cuando compro un juego, lo que hago es romper lo que he comprado (imaginemos que me compro una linterna, y en mi casa la desmonto y le cambio el led blanco por uno rojo). Eso es un cheat. No estoy rompiendo la propiedad de nadie, simplemente cojo un producto que he adquirido (fabricado por otro) y lo modifico a mi antojo.

Y recalco, practicamente nunca lo hago en juegos online.

2 respuestas
B

#178 Con eso que comentas, no tengo ninguna objecion.

Kalgator

#178 pero, no compras el juego, compras la licencia para jugar, así que el juego en si no es tuyo