157 meneos
1767 clics
Sandsifter busca secretos en tu procesador. [EN]
El proyecto Sandsifter presentado en la DefCon 2017 analiza los procesadores x86 a la búsqueda de instrucciones ocultas y errores. Puede analizar instrucciones del fabricante, disassemblers, assemblers, emuladores, hipervisores y en general cualquier error en el hardware de la familia x86. github.com/xoreaxeaxeax/sandsifter
|
comentarios cerrados
news.ycombinator.com/item?id=14872418
github.com/xoreaxeaxeax/sandsifter/blob/master/references/domas_breaki
Es para un amigo pajillero.
Se puede??
#12 Un placer, la universidad de la vida es mi cátedra.
Por ejemplo tu novia virtual eran solo píxeles es una pantalla por mucho que parecieran nalgas reales.
No hace falta ponerse paranoicos con hackeos del microcódigo de la CPU, con los bugs e instrucciones no documentadas ya vale para romper cosas.
Supongo que en unas semanas aparecerán actualizaciones de microcódigo para Intel y AMD... Que meteran bugs nuevos y mejorados.
El que ha programado la herramienta al parecer trabajaba para la CIA/NSA
Pero hoy en dia yo no llamaba al amigo informatico y le decia a la novia que lo atienda mientras no estas en casa...
Buscar errores y funcionalidades no documentadas por el fabricante en las cpus, hardware que se ha demostrado puede tener los mismos problemas que el software (bugs, flaws, puertas traseras).
La verdad es que el autor lo explica bastante bien:
Although we treat our processors as trusted black boxes,
they are riddled with the same flaws and secrets we find in
software. Through guided instruction fuzzing based on a
depth-first search and page fault analysis, the sandsifter toolset
is able to exhaustively enumerate and test all reasonably
distinct instructions in the x86 ISA. The process has revealed
hidden instructions, software bugs, hypervisor flaws, and
critical processor failures. With the release of the sandsifter
tool [1], the reader is encouraged to audit their own processors
for defects and hidden instructions. This work provides an
important first step towards introspecting x86 chips, and
validating the processors we all blindly trust.
Es como aquella actualización que instalé en mi teléfono Samsung para convertirlo en sumergible
Dicho eso, en la entradilla dice que entre otras cosas buscan instrucciones ocultas.
Vamos que igual pueden hacer algo que no te han dicho porque no quieren que lo sepas y no lo han documentado.
Me parece de ciencia ficción que con software puedan auditar una cpu para comprobar sus puertas traseras, etc..
Ahora si me hablas de sparc, powerpc o mips o cosas asi pues joder claro que son diferentes arquitecturas pero no es el segmento del que hablamos.
AMD e intel tenian ( y siguen teniendo, si no me equivoco ), precisamente, un acuerdo de patentes cruzado en ESTE tema: esto es, AMD no paga a intel los royalties por x86 ( o mejor dicho i386 o IA32, x86 es incorrecto y un cajon desastre donde meterlo todo ) e intel no paga a AMD los royalties por AMD64 ( que es como se llama la arquitectura en realidad ) o x86-64.
Por ultimo: "de ahi salieron x86-64 EMT64 o IA32e"... EMT64 es como intel llamo al modo AMD64 en sus procesadores, sin mas. IA32e es el submodo de compatibilidad hacia atras con el modo IA32 DENTRO del modo AMD64, no es un sinonimo de AMD64, sino un submodo de este. Por hacer un paralelismo, ya que es muy diferente, seria una cosa parecida a cuando IA32 introdujo el submodo V86 dentro de IA32, para poder ejecutar codigo de modo 8086 y derivados de forma controlada.
Un Windows typo "x64" ( asi es como Microsoft llama a los AMD64 fuera de ambitos tecnicos ), para su modo Wow64 ( Windows on [Windows 64] ) prepara descriptores de codigo y datos de modo IA32e dentro del modo AMD64 y algunos "gates" de pasarela entre IA32e y AMD64 y carga aplicaciones IA32 en ellas.
4096 cores con 256 neuronas electronicas = 2^14 * 2^8 = 2^20 = 1 meganeuronas ( algo mas que un millon ). Como cada una de estas neuronas puede tener 256 conexiones o sinapsis ( que entiendo que esas 256 sinapsis son solo con las "cercanas" o dentro de cada uno de esos 4096 "cores" o "cumulos" de 256 neuronas electronicas ), se pueden simular 2^20 * 2^8 = 2^28 sinapsis, supongo que con esas limitaciones de que la mayoria de sinapsis son intra-cumulo/core.
No se cuales son los principios de funcionamiento de estos chips o cores, pero seran funciones muy basicas como "unir" o hacer sinapsis, cambiar estado, propagar, etc. La idea, parece, es simular cerebros y uniones nerviosas.
Hace tiempo que IBM y otros estan intentando cosas de estas, una para poder hacer IAs tipo ser vivo y otra por que, para algunos problemas, las redes neuronales o esta computacion neuromorfica consiguen buenos resultados a un consumo energetico muy bajo.
Vamos, ese chip seria algo asi como un simulador de "cerebros" tipo ser vivo pero programable.