La ingeniería inversa de hardware y circuitos integrados es la última frontera de la seguridad, y también uno de los mundos más desconocidos para la mayoría de los profesionales del sector de la seguridad informática.Esta presentación nos ofrecerá un viaje a este mundo microscópico donde podremos ver sus particularidades, retos, y ejemplos de las técnicas necesarias para adentrase en el. Como parte de este viaje también veremos un caso practico de ataque a una CPU de seguridad utilizada en diversos sistemas del mundo del videojuego arcade.
Rooted2015 - Ingenieria inversa de circuitos integrados
1. Ingeniería
Inversa
de
Circuitos
Integrados
Eduardo
Cruz
@edcrossed
Arcadehacker.blogspot.com
2. ¿Por
qué
analizar
chips?
• ÚlCma
frontera
de
la
seguridad
• Gran
reto,
diverCdo
• Aprendizaje
de
múlCples
disciplinas
3. Sobre
el
ponente
• Aficionado
a
la
seguridad
• Coleccionista
de
juegos
arcade
• Si
yo
puedo,
TÚ
TAMBIÉN
4. En
esta
presentación
1. Fabricación
de
circuitos
CMOS
2. Decapsulado,
Microscopía,
Deprocesado
3. Ingeniería
inversa
y
simulación
4. Caso
prácCco:
CPU
Capcom
Kabuki
8. 1947
1925:
Julius
Edgar
Lilienfeld’s
MESFET
patent
1935:
Oskar
Heil’s
MOSFET
patent
194?:
Unpublished
Bell
Labs
MESFET
1947:
Ge
BJT
(Bardeen,
Bradain,
Shockley,
Bell
Labs)
1954:
Si
BJT
(Teal,
Bell
Labs)
1960:
MOSFET
(Atalla&Khang,
Bell
Labs)
1961:
Integrated
circuit
(Kilby,
TI)
1963:
CMOS
(Sah&Wanlass,
Fairchild)
1964:
Commercial
CMOS
IC
(RCA)
1965:
DRAM
(Fairchild)
1968:
Poly-‐Si
gate
(Faggin&Klein,
Fairchild)
1968:
1-‐FET
DRAM
cell
(Dennard,
IBM)
1971:
UV
EPROM
(Frohman,
Intel)
1971:
Full
CPU
in
chip,
Intel
8008
(Faggin,
Intel)
1974:
Digital
watch
1974:
Scaling
theory
(Gänsslen&Dennard,
IBM)
1978:
Use
of
ion
implanter
1978:
Flotox
EEPROM
(Perlegos,
Intel)
1980:
Ion-‐implanted
CMOS
IC
1980:
Plasma
etching
1984:
Scaling
theory
<0.25
μm
(Baccarani,
U.
Bologna)
1986:
0.1
µm
Si
MOSFET
(Sai-‐Halasz,
IBM)
1991:
CMOS
replaces
BJT
also
at
high-‐end
1993:
DGFET
scalable
to
30
nm
(theory,
Frank
et
al.)
2007:
Non-‐SiO2
(HfO2–based)
MOSFET
(Intel)
A
(par3al,
biased?)
history
of
the
MOSFET
from
a
physicist’s
perspec3ve
-‐
M.
Fisches
2009
23. 1947
Las
técnicas
descritas
a
conCnuación
son
peligrosas
para
u
y
los
que
te
rodean
ADVERTENCIA
Google
images:
Nitric
acid
burns
Hydrofluoric
acid
burns
27. 1947
Tipos
de
decapsulado
• DestrucCvo
– La
muestra
deja
de
ser
funcional
• Vivo
– La
muestra
conCnua
siendo
operaCva
Bonding
wires
IC
die
solamente
28. 1947
Equipo
básico
• Equipo
laboratorio
– Bata,
guantes,
pipetas,
gafas…
• Herramientas
– Dremel
– Base
calentadora
– Campana
extractora
(o
al
aire
libre)
• Químicos
– Ácido
nítrico
(H2NO3)
min.
70%
– Acetona
59. Programador
y
seguridad
Registros
de
memoria
Descifrado
Descifrado
y
rutado
de
bus
de
datos
Intercepción
del
bus
de
datos
Intercepción
del
bus
de
direccionamiento
y
control
63. Memoria
• Registros
108
x
1
bit
– Disposición:
Entrada
en
serie.
Salida
en
paralelo.
– 72
bits:
Llaves
de
descifrado
– 16
bits:
Rango
de
memoria
a
descifrar
– 20
bits:
Memoria
de
trabajo