PauSaDRaMaTiCa escribió:La gente no se esta dando cuenta de lo laborioso que es esto y lo poco que se ha avanzado.
Ya solo para que os imagineis, el ring de memeria al que ha accedido, tiene un ancho de banda de mas de 200 Gb/s osea que dumpear la memoria en tiempo real es impensable por la cantidad de datos obtenidos. Por ciclo de reloj se mueven 8 bytes por 4 canales, asi que imaginos la cantidad de datos que se pueden obtener(realmente se mueven 16 bytes por cada dos ciclos de reloj).
No hace falta un ataque en tiempo real pinchando el HW. Usas el exploit, paras el resto de procesos para que no cambien nada, y vas volcando tranquilamente mediante software la memoria.
PauSaDRaMaTiCa escribió:De todas formas hay algo que no termino de comprender: En el SPE Isolated se encuentra el HV junto con el OS, el se encarga de verificar/encriptar/desencriptar hasta aqui bien. Solo puede haber uno en modo isolated, asi que la informacion una vez desencriptada tiene que meterse en el ring para que otro SPE la recoja (todo en el cell se comunica mediante esa memoria comun).
Puedes tener más de un SPE en modo aislado.
PauSaDRaMaTiCa escribió:
Y ya tenemos acceso a esa memoria, pero sigue todo encriptado, asi que algo en esa descripcion de funcionamiento no termina de cuadrar(o no todo esta encriptado). El montaje del SPE isolated no puede ser encriptado porque en el momento del inicio no hay nada cargado para encriptar/desencriptar asi que por cohones el encargado de eso se tiene que meter desencriptado en el SPE y a partir de entonces ya se puede enviar el trafico encriptado.
Yo sigo diciendo que todo es mas sencillo, que la mayoria de las cosas van normales sin cifrar por la memoria y se ejecutan como procesos normales. ¿ o creeis que todos los movimientos del linux a memoria pasan por el HV para que les cifre y le descifre los datos de la memoria ?
En cuanto a que el montaje del SPE aislado no puede ser cifrado porque en el momento del inicio no hay nada cargado para cifrar/descifrar , tampoco es así. Y esto ya no es especulación mia, viene en la documentación de IBM.
Es precisamente la capacidad que tiene el SPE de que le metas algo cifrado (así nadie lo ha tocado ni manipulado), ponerse en modo aislado , descifrarse dentro ( y al estar aislado ya nadie puede modificarlo ) y ejecutarse en el modo aislado, lo que da seguridad al Cell.
PauSaDRaMaTiCa escribió:
Lo que si que esta claro es que un SPE no puede albergar la clave pues su memoria es de 128 bites asi que para albergarla dentro del SPE podria almacenar una palabra de 128 bites y no tendria memoria para albergar nada mas. Asi que o la clave de encriptacion es menor de 128 o no se encuentra dentro del SPE. Y dudo que el tamaño de la clave sea de 128 pues mediante un brute attack se podria obtener en muy poquito tiempo.
Para los entendidos de la materia, hay algo que se me escapa a ver si podeis hecharme un mano.
[...]
La memoria de un SPE es de 256KB , así que le caben unas claves algo mas gordas que una de 128 bits. Aparte que la clave la tiene en HW, y es una facilidad HW la que descifra, sin tener que tener un cargador/descifrador SW.