lo que dices es medio complicado porque a demás tendrás que inyerctar el paquete a tiempo...
mi recomendación, conn sockets programa un proxy en python y que detecte el paquete a cambiar, el resto que sea tranparente
agrego... si quieres solo dropear y no modificar, coniptables puedes leer esto
https://www.centos.org/forums/viewtopic.php?t=58860o buscar en google "iptables match string"
Si a ver, en verdad, una vez dropeado el paquete, no es necesario que sea inmediato el envio del nuevo, por fallo de la aplicación.
Respecto al proxy e iptables acabo de ver que no puedo identificarlo porque el paquete va bajo https, por lo tanto al estar cifrado no puedo discriminarlo del resto.
Para ponerlo un poco más en contexto y por si a alguien le interesa, procedo a explicar mejor lo que estoy haciendo. Ahora eso si, todo lo que digo es de forma teórica y presuntamente funciona de esta forma
.
Mi pasatiempos con el que estoy trabajando, trata sobre los juegos de telegram que se pueden jugar en los grupos poniendo el tag @gamee, estos son de la empresa gameapp.
Hace unos dias, se me ocurrió abrir web.telegram en el ordenador y desde allí jugar. Despues de varia pruebas (de concepto
) identifiqué la petición que asigna la puntuación a la partida. Esta puntuación se envía junto a un hash para comprobar que no es modificada, tambien se envía la url del juego para identificar de que juego se trata y algunos datos más que carecen de interés.
Al ver esto se me ocurrió cambiar la puntuación que conseguía en el juego y tras un analisis del código encontre la forma de generar el hash. Este se genera con una funcion AES, con formato json pasando los parametros de timestamp actual, y puntuación, y se cifra con una clave que esta pintanda de forma invisible en el html del juego.
Por lo tanto generando la petición con dichos cambios eres capaz de ponerte la puntuación que quieras en el juego. El problema es que es necesario iniciar el juego para que se genere una partida nueva en el servicio. Así lo que procedi a hacer es:
- jugar al juego.
- cortar el internet mientras juego para asegurarme que no manda la petición
- cerrar la ventana del juego
- encender internet.
- y enviar la petición con postman.
Despues de llegar a estas conclusiones estaba buscando hacer un pequeño script que automatizara el proceso y de ahi surgen mis previas cuestiones.
Ah, por cierto, cabe decir que todo esto lo hago como un simple hobby, no tiene niguna finalidad. saludos y gracias