labestia72 escribió:Sacado de este hilo
http://www.pspain.com/foro/showthread.php?t=10488Que a su vez es una traduccion libre de este otro hilo
http://forums.qj.net/showpost.php?p=174012&postcount=9Mientras que es correcto que se esta corriendo codigo sin firmar (casero) sobre 2.0, este codigo se esta ejecutando en modo USER y no en modo KERNEL.
Aclaracion para aquellos que no sepan que quiere decir. El codigo que corre en modo KERNEL (El sistema operativo de PSP, la Bios) esta protegido por el Hardware (CPU). El codigo que se corre en modo USER (Juegos, aplicaciones) no puede acceder a la memoria usada por el KERNEL.
Esto quiere decir que por el momento, el codigo casero solo puede acceder a cosas que le son permitidas a los juegos, como por ejemplo la pantalla, el sonido o los botones. El codigo casero solo se puede usar en el area de memoria que le ha sido arrebatada al proceso que originalmente se ha parado con el desbordamiento de buffer (64 kb).
Para conseguir mas memoria RAM para ejecutar aplicaciones (e.j. Emuladores) se requiere tener acceso al modo KERNEL. Solo el codigo que se ejecuta con esos privilegios puede asignar mas memoria para las aplicaciones caseras.
O sea que para avanzar necesitamos poder tomar control total del sistema, necesitamos atacar al KERNEL y una vez conseguido podremos ejecutar cualquier tipo de codigo.
Existen varias capas de proteccion entre el modo USUARIO y el modo KERNEL. Imagina que son los aros de una cebolla, donde el KERNEL es el centro y el modo de usuario es el aro mas exterior.
A medida que quitas capas y ganas privilegios estas mas cerca del centro. Se pueden hacer llamadas al sistema en modo USER pero estas llamadas siempre estan controladas por el KERNEL y no son faciles de realizar (XPLOIT), pero usando llamadas al sistema (SYSTEM CALLS) es posible aumentar de forma gradual los privilegios y acercarse al KERNEL(como si fuesemos pelando la cebolla capa a capa). Por descontado esto lleva TIEMPO y necesita de un tipo de ataque mas sofisticado.