bueno, en estos momentos
creo que ya no interesa saberlo, pero ayer en la noche dije que lo hiba a publicar hoy, asi que aqui le muestro esta info (Ojo! programadores) de como mas o menos funciona el tema... esto es basado en chips
Macromix/MXIC MX25L2005 y el video que mostraro los rusos.
Muy bien veamos como funciona de una forma resumida este metodo:
Tal y como dije anteriormente en el hilo de
jimbo los SPI poseen registros (al menos este), registros independientemente del Firmware que contienen parametros modificables por ciertos comandos, estos parametros en bits tambien indican el estado del SPI asi tambien como su configuracion, lo que quiero decir es que por medios de este registro se puede activar o desactivar el
Write Protect, pero todo depende del nivel de Write Protect puesto en el SPI este nivel se conose de la siguiente forma, la proteccion esta dividida en Bloques (BP1 y BP0), si por ejemplo Microsoft solo hubiese activado el WP en uno de los Bloques de proteccion el nivel de proteccion seria bajo y si hubiese una solucion mediante comandos, pudiendo asi ser desbloqueados sin ningun problema mediante software, pero Microsoft tal y como lo dice Gememia (presiono el Red Button Command) activo el WP completamente en el SPI convirtiendola automaticamente en
read-only (de solo lectura) y nunca posibilitar la escritura. Pero esto solo estoy hablado del WP, comandos como por ejemplo leer el estado de la SPI o modificar algunos Bits del WP si pueden ser recibidos/enviados sin y ningun problema.
Ahora biene lo interesante, como no se puede de ninguna forma (creo que, ni incluso Microsoft) desactivar el WP por comandos, de alguna forma estos rusos lograron modificar el registro, es decir cambiar los bit del BP1 y BP0 y asi anular completamente el WP, aqui muesto un Byte de estado de registro del SPI con respecto al WP:
bit 7 =
Proteccion contra-escritura, este bit define si el WP esta activado, no da exactitud del nivel de proteccion.(1=Write Protect activada/= Write Protect desactivada)
bit 6 = no tiene funcion (se queda en 0)
bit 5 = no tiene funcion (se queda en 0)
bit 4 = no tiene funcion (se queda en 0)
bit 3 =
Bloque de proteccion 1 (BP1), este define la proteccion de dos de los Bancos de memoria. (1= activado/0= desactivado)
bit 2 =
Bloque de proteccion 0 (BP0), este define la proteccion de uno de los Bancos de memoria pero solamente si esta activado este solo, si ambos bloques de proteccion estan activados (BP1 y BP0) indica que los 4 bancos de memoria estan protegidos incluyendo gran parte del registro del SPI. (1= activado/0= desactivado)
bit 1 =
Switch de Escritura Activada al registro del SPI, este es diferente a otros, este indica la posiblidad de escribir/modificar el registro del SPI asi tambien como dar instrucciones de borrado y escritura de memoria. (1= Activado/ 0= Desactivado)
bit 0 =
Proceso de Escritura, este indica el estado de escritura, es decir si esta en proceso de escritura (1= en proceso/ 0=no en proceso)
Ahora bien con todos estos datos, si pedimos el estado de registro del WP del SPI perteneciente a los 0225 Blockeados, nos devolveria lo siguiente:
10001100
este estado indica que el SPI esta completamente Bloqueado, como Microsoft lo deja. Vease el video (
Minuto 00:41) de los rusos en la parte superior-derecha del programa que ellos programaron, mas adelante (Minuto 1:35) mandan un comando de Write/Erase a la memoria/SPI por JF, pero al estar activado el WP no puede ser ejecutado y es abortado, seguido de esto se recibe el estado de registro (minuto 02:01) y muestra el siguiente estado
10001110
indica que todavia sigue protegido y el Registro del SPI acepta ejecutar instrucciones de borrado, aun asi no puede ser borrada la memoria ya que el WP, BP1 y BP0 siguen activos, entonces por ultimo con la modificacion (electricamente) hecha por ellos el bit de Write Protection queda desactivado y junto con "Unlock drive" que de seguro debe ser una instruccion/comando para desactivar los bit BP1 y BP0, al final queda todo en
00000000
que con todo el gusto el SPI acepta comandos de Borrado (Erase)/Escritura (wite) . y por lo que se, puede ser re-escrito cuantas veses se desee sin tener que preocuparse mas por el WP.
Saludos y espero que sirva de algo