Hermes escribió:Bueno señores: he hecho una compilación con una rutina nueva, suponiendo que la rutina de marras (la que estaba parcheada y daba problemas) recibe la ruta de un fichero en el registro %r3 y he añadido una comprobación para que en caso de usar disco duro retorne 1 y parece que funciona la cosa
(como estoy a "ciegas", tengo que suponer las cosas y primero he provocado el famoso Lv1 Panic a modo de test
)
Para los que no 'entienden' y piensan que hablo en chino, se trata de una rutina que retorna un 1 o un 0 en función de algo que le es pasado como parámetro (se supone que la ruta de un fichero) y que tiene relación con los permisos de acceso a los ficheros. El payload parchea eso y hace que retorne 1 siempre y eso es lo que daba problemas con juegos como el F1, por que digamos que hay caso donde debería devolver 0.
Así que en su lugar, lo que estoy tratando es de detectar cuando se accede al disco duro para fijar el 1 que nos da barra libre y dejar otras cosas a su aire.
Tambien me he ocupado de cubrir los dispositivos USB, pero todo esto requiere espacio y como ya teníamos que salirnos del espacio normal del exploit, por que es un pequeño y dejar una rutina en 0x700000, he decidido mover todo el código a 0x7ff000, lo cual añade 1MB extra al 1MB y pico que ya había de distancia desde los módulos a donde teníamos la tabla de parches que no nos cabía.
La razón es obvia: necesitamos espacio extra para trabajar y el punto donde está mas a salvo, es al final de esos 8MB que parece medir el Kernel (si me equivoco en esto,que alguien me corrija).
Si da algún problema (que no creo), siempre hay posibilidad de dar marcha atrás y hacer las cosas de otra forma, pero creo que lo mas inteligente, es correrlo hacia abajo, lo cual nos permitirá añadir mas cosas.
Hoy estoy cansado, así que mañana subiré el código para que lo toqueteéis
. Por lo pronto, el error que me daba al copiar el F1 desde disco duro interno al externo, ya no me da y el F1 arranca sin problema desde el disco duro interno, así que parece que la cosa va bien
PD: Evidentmente, ya no hará falta el poke de marras: si lo hacéis, trabajará igual que antes, claro está
Saludos