top of page
Buscar
Foto do escritorJulio Della Flora

Ataques de fault injection com ênfase em ultrassom

Atualizado: 18 de jun. de 2020


Baixe o meu e-book sobre Ferramentas para Hardware Hacking em: https://juliodellaflora.com

1

00:00:01,650 --> 00:00:11,639

[Música]


2

00:00:13,130 --> 00:00:20,489

bom pessoal boa noite boa tarde gente já

houveram as apresentações não preciso


3

00:00:20,490 --> 00:00:25,559

ficar me prolongando muitas

apresentações ainda mais hoje que essa


4

00:00:25,560 --> 00:00:30,509

palestra ela teve que se encaixado em

ser recolhida e teoricamente essa


5

00:00:30,510 --> 00:00:35,909

palestra deveria ter mais ou menos 50

minutos a uma hora então eu vou tentar


6

00:00:35,910 --> 00:00:39,389

fazê lo com 40 minutos mas é um pouco

corrido ou diminuir uma introdução para


7

00:00:39,390 --> 00:00:44,878

vocês e gente levanta a mão aí quem já

ouviu falar default injecte um ataque em


8

00:00:44,879 --> 00:00:49,319

hardware ataque de injeção de falha de

hardware beleza umas quatro cinco


9

00:00:49,320 --> 00:00:54,718

pessoas seis legal bastante gente até a

minha idéia aqui é trazer um pouquinho


10

00:00:54,719 --> 00:00:59,189

desse universo relacionado eletrônica

tanto analógica ou digital e trazer para


11

00:00:59,190 --> 00:01:03,689

vocês uma fusão entre o universo

eletrônico o universo da computação mas


12

00:01:03,690 --> 00:01:07,739

mais especificamente na área da

segurança da informação segurança em


13

00:01:07,740 --> 00:01:12,658

hardware é um trending topic e agora que

aí o titular em voga então tem muita


14

00:01:12,659 --> 00:01:18,839

coisa de ot que a gente pode tratar

eu trouxe dois duas provas de conceito


15

00:01:18,840 --> 00:01:23,879

para apresentar a vocês que já estão

aqui meio em dourados e se tudo der


16

00:01:23,880 --> 00:01:28,079

certo vou conseguir mostrar ao vivo as

provas de conceito a vocês


17

00:01:28,080 --> 00:01:33,719

entretanto caso de algo errado elas

estão gravadas em formato gif formato de


18

00:01:33,720 --> 00:01:38,309

vídeo ao total eu tenho se não me engano

são quatro provas de conceito nessa


19

00:01:38,310 --> 00:01:42,118

palestra então uma palestra densa tem

bastante coisa apresentar para vocês e


20

00:01:42,119 --> 00:01:47,188

pouco tempo vamos correr lá é bom vocês

já viram a introdução no meu nome é


21

00:01:47,189 --> 00:01:52,648

julho de uma flora eu sou professor e

coordenador da pós-graduação em ética o


22

00:01:52,649 --> 00:01:58,408

hacking e cyber security na unis iv é

quem tiver interessado em uma poça e


23

00:01:58,409 --> 00:02:05,699

puxando jabá já sou também analista de

segurança da com viso é e aí estão as


24

00:02:05,700 --> 00:02:09,988

minhas referências nessa o bacharel em

computação e fiz especializações e fiz


25

00:02:09,989 --> 00:02:13,409

mestrado também na área

bom gente


26

00:02:13,410 --> 00:02:17,219

como começara iniciando aí com o

objetivo desse grupo de ataques é o que


27

00:02:17,220 --> 00:02:21,269

é objetivo do falte injection dos

ataques de injeção de falha né


28

00:02:21,270 --> 00:02:24,839

o objetivo do falte injection é

basicamente introduzir algum tipo de


29

00:02:24,840 --> 00:02:29,609

falha no alvo com o objetivo de buscar

algum tipo de alteração no comportamento


30

00:02:29,610 --> 00:02:33,509

daquele hardware

então é injetar uma falha para buscar


31

00:02:33,510 --> 00:02:36,089

uma alteração no comportamento padrão do


32

00:02:35,430 --> 00:02:38,309

hardware

esse tipo de falha geralmente ela é


33

00:02:38,310 --> 00:02:44,489

introduzida através de um tipo de

manipulação de condições ambientais e


34

00:02:44,490 --> 00:02:47,579

falasse porra julho mas que tipo de

condição ambiental


35

00:02:47,580 --> 00:02:51,659

vou trazer pra frente pra vocês vão ver

que é manipulação eletromagnética


36

00:02:51,660 --> 00:02:57,749

manipulação elétrica manipulação do

clock manipulação na luz entre outras


37

00:02:57,750 --> 00:03:03,989

vertentes default jackson mas o objetivo

é manipular variáveis do ambiente de


38

00:03:03,990 --> 00:03:08,789

forma que você consiga comprometer um

microcontrolador ou os demais


39

00:03:08,790 --> 00:03:14,879

componentes presentes no alvo

o que acontece é que não só você precisa


40

00:03:14,880 --> 00:03:19,949

ou pode manipular e introduzir falhas

nome que o controlador no processador


41

00:03:19,950 --> 00:03:25,229

você pode também introduzir falhas nos

dispositivos periféricos do


42

00:03:25,230 --> 00:03:29,339

microprocessador como por exemplo uma

memória flash você pode induzir falhas


43

00:03:29,340 --> 00:03:33,929

ou sistema microeletromecânico que o

chamado mês por exemplo os giroscópios e


44

00:03:33,930 --> 00:03:37,859

acelerômetros eu vou mostrar tudo isso

na palestra espero conseguir mostrar pra


45

00:03:37,860 --> 00:03:40,919

vocês tudo isso na palestra

vamos começar com um pouquinho de


46

00:03:40,920 --> 00:03:44,699

história eu já cortei bastante a

história inclusive uma história bem


47

00:03:44,700 --> 00:03:48,899

interessante mas eu cortei bastante ela

para poder caber ea idéia aqui é o


48

00:03:48,900 --> 00:03:53,639

seguinte pessoal

bom vocês conhecem um chip né esse é o


49

00:03:53,640 --> 00:04:00,029

chip de computador bem antigo da época

da década de 80 é década de 90 é alguns


50

00:04:00,030 --> 00:04:03,779

aí são chips da toshiba

vocês podem perceber que quando eu falo


51

00:04:03,780 --> 00:04:08,519

que o chip de computador

o que vocês acham que tudo isso o chip


52

00:04:08,520 --> 00:04:11,909

essa parte preta inteira é o chip do

computador


53

00:04:11,910 --> 00:04:17,208

na verdade o chip do computador é o o o

sistema realmente há o sistema


54

00:04:17,209 --> 00:04:22,918

eletrônico do micro controlador ou do

microprocessador ele essa pastilha


55

00:04:22,919 --> 00:04:26,789

pequena brilhante dentro do chip e toda

essa


56

00:04:26,790 --> 00:04:31,589

o lucro preto é chamado de

encapsulamento é onde o chip fica para


57

00:04:31,590 --> 00:04:38,369

ser protegido de eventuais problemas

eventuais distorções ou de enfim de


58

00:04:38,370 --> 00:04:42,449

qualquer tipo de problema ambiental que

venha a existir como calor é uma


59

00:04:42,450 --> 00:04:47,399

interferência entre outros

então a idéia aqui é que o que acontece


60

00:04:47,400 --> 00:04:52,979

lá em 1970 alguns pesquisadores

descobriram que quando eles encapsula


61

00:04:52,980 --> 00:05:00,059

vão certos circuitos eletrônicos é

algumas poucas partes de urânio eram


62

00:05:00,060 --> 00:05:05,699

colocadas sem querer dentro do

encapsulamento desses micro chips


63

00:05:05,700 --> 00:05:10,739

essas pequenas partes de urânio elas te

caiu nem vocês não sei se conhece o


64

00:05:10,740 --> 00:05:14,279

processo de caimento radioativo da 6ª

série nesta 7ª série


65

00:05:14,280 --> 00:05:20,489

o irã o urânio de cair se não me engano

catório e e libera uma partícula alfa e


66

00:05:20,490 --> 00:05:24,389

essa partícula ou só tem 2 e tem dois

prótons e dois nêutrons e ela é


67

00:05:24,390 --> 00:05:29,429

carregada com a partículas carregadas em

disparada de um elemento radioativo ela


68

00:05:29,430 --> 00:05:33,209

causa alteração no comportamento de um

microcontrolador ou de um


69

00:05:33,210 --> 00:05:35,759

microprocessador

olha que coisa maluca né os cientistas


70

00:05:35,760 --> 00:05:41,309

descobriram isso lá em 1970 depois de

ficarem quase loucos porque os chips são


71

00:05:41,310 --> 00:05:45,659

comportamentos diferentes do que o

imaginado eles não sabiam porque esses


72

00:05:45,660 --> 00:05:50,129

chips de um comportamento diferente e

descobriram que ali duas ou três partes


73

00:05:50,130 --> 00:05:55,289

por milhão de urânio já era suficiente

para gritar o chip para causar beach


74

00:05:55,290 --> 00:05:59,939

flip que seria beach flip é quando o

microcontrolador que é que aquela


75

00:05:59,940 --> 00:06:04,319

instrução aquele bicho seja zero mas

aquele biffle padre vira um então isso é


76

00:06:04,320 --> 00:06:10,889

uma corrupção ou freeze um flip the

beach isso acontecia já desde 1970 e já


77

00:06:10,890 --> 00:06:17,599

estudado desde 1970 inclusive sondas

espaciais que são muito suscetível


78

00:06:17,600 --> 00:06:21,509

suscetíveis a raios cósmicos possuem os

mesmos problemas


79

00:06:21,510 --> 00:06:28,349

uma sonda chamado fogos guti em 2014

caiu na rússia é o projeto foi foi


80

00:06:28,350 --> 00:06:31,799

cancelado e eles acharam que foi um

ataque que é um ataque dos estados


81

00:06:31,800 --> 00:06:37,379

unidos entretanto eles descobriram que

foram raios cósmicos que ultrapassaram a


82

00:06:37,380 --> 00:06:41,909

camadas de blindagem da sonda e

acharam o circuito dela é não


83

00:06:41,910 --> 00:06:45,719

operacional

isso acabou com o projeto de bilhões de


84

00:06:45,720 --> 00:06:48,899

dólares da rússia

simplesmente porque eles não mediram e


85

00:06:48,900 --> 00:06:54,179

não conseguiram fazer o isolamento

apropriado para os raios cósmicos aqui


86

00:06:54,180 --> 00:06:59,099

dentro da nossa atmosfera os raios

cósmicos são bem menores né mas quando a


87

00:06:59,100 --> 00:07:03,059

gente fala de projetos espaciais a gente

tem que levar isso em consideração tudo


88

00:07:03,060 --> 00:07:06,719

isso é apenas uma introdução para que

vocês entendam um pouco o que é esse tal


89

00:07:06,720 --> 00:07:11,189

de ataque de injeção de falha quando

você injeta falha do hardware como eu


90

00:07:11,190 --> 00:07:14,609

falei pra vocês

existem alguns tipos de injeção de falha


91

00:07:14,610 --> 00:07:19,769

alguns deles são por exemplo luz branca

você consegue injetar falhas e citando


92

00:07:19,770 --> 00:07:24,719

certos componentes com luz branca você

consegue disparar feixes de laser e


93

00:07:24,720 --> 00:07:29,459

também inoperável e não utilizar certos

componentes de acordo com a freqüência


94

00:07:29,460 --> 00:07:35,039

do laser com acordo de acordo com a

potência também o clock falte jackson é


95

00:07:35,040 --> 00:07:39,179

quando você modifica altera ou cria

gritos no clock e só vou mostrar pra


96

00:07:39,180 --> 00:07:45,899

vocês na prática é temperatura tensão e

eletromagnetismo segue pela mesma linha


97

00:07:45,900 --> 00:07:51,539

tem certo chips que aquecendo esse chip

ele cria comportamento anômalo por


98

00:07:51,540 --> 00:07:57,059

exemplo tem certo chips que você aquece

e esse chip ele para de gravar


99

00:07:57,060 --> 00:08:00,959

instruções ou para de lei instruções de

uma determinada temperatura então ele


100

00:08:00,960 --> 00:08:05,159

começa só ler instruções ou começa só

agravará instruções em determinada


101

00:08:05,160 --> 00:08:10,109

temperatura tem vários projetos e várias

pesquisas científicas acerca de gestões


102

00:08:10,110 --> 00:08:16,019

de falha com temperatura também há uma

outra coisa que eu ia falar para vocês é


103

00:08:16,020 --> 00:08:20,789

a gente vai abordar um novo tipo de

ataque que começou a ser conhecido nos


104

00:08:20,790 --> 00:08:27,569

últimos anos que são ataques baseados em

ultra som em som de outra freqüência ea


105

00:08:27,570 --> 00:08:32,609

idéia aqui pessoal é que eu comecei a

estudar esse tema quando eu me deparei


106

00:08:32,610 --> 00:08:40,709

com os etf chamado rick waugh km2 em

2016 inclusive pelo site live flow onde


107

00:08:40,710 --> 00:08:47,639

o dono do do blog e o dono do canal do

youtube live overflow ele fazia um rap


108

00:08:47,640 --> 00:08:53,239

aqui pessoal se jogam ctf levanta a mão

aí quem joga já jogou joga stf


109

00:08:53,240 --> 00:08:58,249

esse ct é que você teve baseada em

hardware muito interessante você precisa


110

00:08:58,250 --> 00:09:02,719

da plaquinha do hardware para você

conseguir jogar e você faz o upload do


111

00:09:02,720 --> 00:09:08,028

firmware para conseguir quebrar consegui

achar essas flex que acontece que esse


112

00:09:08,029 --> 00:09:13,309

risco é o rock m2 de 2016

ele não foi jogado por nenhum time


113

00:09:13,310 --> 00:09:16,669

brasileiro então não tem percebido pelo

gráfico não tem nenhum time brasileiro


114

00:09:16,670 --> 00:09:23,629

que jogou pra ser mais exato uma das

chances de encerrar km2 é uma chamada


115

00:09:23,630 --> 00:09:29,389

glitch ataque fiesta que era um falso

injection um ataque de injeção de falhas


116

00:09:29,390 --> 00:09:34,969

que custava 100 pontos ele dava 100

pontos para quem conseguisse quebrar o


117

00:09:34,970 --> 00:09:40,219

que acontece nesse falte get on aqui eu

tenho um arduino já vou começar a parte


118

00:09:40,220 --> 00:09:46,369

prática que para mostrar pra vocês

vou mostrar como cara do bairro flor é o


119

00:09:46,370 --> 00:09:52,579

colega do meu flow fez a a a estrutura

de ataque dele e como eu tentei fazer a


120

00:09:52,580 --> 00:09:57,019

minha baseado na falha de conseguir

reproduzir dele eu conseguir fazer uma


121

00:09:57,020 --> 00:10:01,729

maneira mais simples de conseguir obter

essa flag simplesmente que eu falhei e


122

00:10:01,730 --> 00:10:06,169

obter a flec da maneira mais complexa

que foi a maneira que ele obteve mostrar


123

00:10:06,170 --> 00:10:13,249

aqui para vocês o seguinte eu vou abrir

a câmera do notebook para que vocês


124

00:10:13,250 --> 00:10:21,398

consigam ver então o pessoal


125

00:10:29,670 --> 00:10:32,389

a tirada


126

00:10:33,490 --> 00:10:42,639

percebam e gente aqui um arduino ano né

vocês já ouviram falar ele está


127

00:10:42,640 --> 00:10:48,599

confirmado é especial onde ele está com

uma instrução lupi quando eu coloco ele


128

00:10:48,600 --> 00:10:52,419

e fico lendo a porta serial percebo aqui

que eu estou lendo a porta serial


129

00:10:52,420 --> 00:10:59,889

através de um conector conversor néon

rs232 de um adaptador de serial pra usb


130

00:10:59,890 --> 00:11:05,319

quando eu uso esse adaptador eu consigo

ler o console serial do edu ilan e


131

00:11:05,320 --> 00:11:10,778

através daí eu sei que ele dá uma

instrução de locke que eu vou fazer aqui


132

00:11:10,779 --> 00:11:15,039

agora eu vou conectar o meu e do hino e

meio difícil que vocês percebam que


133

00:11:15,040 --> 00:11:21,219

ficar com o microfone em conectar as

coisas mas a idéia aqui vamos lá eu


134

00:11:21,220 --> 00:11:25,619

conectar o meu eduíno conectar o rs 232


135

00:11:27,100 --> 00:11:34,299

eu já fiz a cagada aqui conectar até

agora mostrar pra vocês o console seria


136

00:11:34,300 --> 00:11:36,838

ao que ele está fazendo


137

00:11:45,660 --> 00:11:50,729

aqui o pessoal que eu vou fazer

por conectar através do comando screen


138

00:11:50,730 --> 00:11:55,489

já ouviram falar desse comando não é pra

acessar o terminal


139

00:12:05,250 --> 00:12:11,439

então deve ter te y é eu preciso dar um

ponto aqui achou ele o w


140

00:12:11,440 --> 00:12:15,419

é o wc h usb né


141

00:12:15,600 --> 00:12:24,969

o pará alpa a vontade que acontece aqui

pessoal é ele tenha um balde rede de 19


142

00:12:24,970 --> 00:12:29,799

200 então vou colocar aqui o banco de

leite 19 200 e vamos ver o que acontece


143

00:12:29,800 --> 00:12:37,569

percebam aí o chip da lockheed que

acontece aqui ou agora sim ficou show de


144

00:12:37,570 --> 00:12:44,739

bola embora não vão precisar segurar o

microfone vai ser linda tabela ainda não


145

00:12:44,740 --> 00:12:48,429

ligou

percebam aí que tá em locke


146

00:12:48,430 --> 00:12:52,569

vocês conseguem imaginar que dentro do

arduino tem uma instrução onde ele está


147

00:12:52,570 --> 00:12:56,769

dentro de um loop e para conseguir a

flag é preciso sair desse lupi


148

00:12:56,770 --> 00:13:00,459

agora imagine como é que eu saio do loop

no hardware que eu posso fazer para


149

00:13:00,460 --> 00:13:06,099

tirar o o software é executado dentro do

hardware de um loop é um negócio meio cá


150

00:13:06,100 --> 00:13:10,479

brozzo nessa nova etapa dentro do raio é

que eu faço com isso tá executado direta


151

00:13:10,480 --> 00:13:21,449

ram times é tão direto o que puder fazer

gol e continuou no loc aqui


152

00:13:23,810 --> 00:13:28,129

o que acontece pessoal é que não leve

overflow ele utilizou uma técnica


153

00:13:28,130 --> 00:13:36,249

chamada voltas falte jackson que é onde

você faz é a atenção cair para baixo da


154

00:13:36,250 --> 00:13:43,989

operação padrão do hardware

então vamos ver lá quando eu chego aqui


155

00:13:43,990 --> 00:13:50,119

funcionando já o microfone ainda não

deva continuar não tá tranquilo por


156

00:13:50,120 --> 00:13:59,559

enquanto é tranquilo daqui a pouco eu

tenho que então percebeu em gent funil


157

00:13:59,560 --> 00:14:06,949

que acontece aqui pessoal é que essa

imagem ela mostra o usuário leve ao fogo


158

00:14:06,950 --> 00:14:11,809

e ele está fazendo utilizando um

hardware fpga para simular uma queda de


159

00:14:11,810 --> 00:14:17,179

tensão quando ele simula esta queda de

tensão ele faz com que certos locais o


160

00:14:17,180 --> 00:14:22,639

microcontrolador funcionem e certos

locais não isso causa certos tipos de


161

00:14:22,640 --> 00:14:28,639

bichos flip e esses bichos clipes é por

padrão vão acabar quebrângulo então ao


162

00:14:28,640 --> 00:14:34,159

objetivo dele é desligar muito

rapidamente a atenção da alimentação do


163

00:14:34,160 --> 00:14:38,479

micro controlador e ligar novamente de

maneira que eu consiga pular um loop


164

00:14:38,480 --> 00:14:47,479

então observe eu vou tentar pular lupi

eu tenho que dizer pra vocês não foi


165

00:14:47,480 --> 00:14:52,639

legal ótico tem que dizer para vocês que

percebam aí ele tem um osciloscópio né a


166

00:14:52,640 --> 00:14:59,899

mesma questão a lot tal e percebam

naquele pedaço pequeno em branco que ele


167

00:14:59,900 --> 00:15:06,079

deu uma queda de tensão essa queda de

tensão é o que propicia a essa falha é o


168

00:15:06,080 --> 00:15:10,219

ataque dessa falha eu também tentei

fazer isso aí tem um gif


169

00:15:10,220 --> 00:15:15,859

eu construí com arduino mas quali e

miseravelmente porque o meu arduino ele


170

00:15:15,860 --> 00:15:21,499

conseguia injetar falhas detenção de 125

nanossegundos eu precisava de mais ou


171

00:15:21,500 --> 00:15:28,159

menos 2 e eu precisava de mais ou menos

64 anos segundos para entrar no loop e


172

00:15:28,160 --> 00:15:31,789

quebrar esse look então não conseguir

fazer com meu irmão mas percebo que a


173

00:15:31,790 --> 00:15:36,379

técnica ali e saía um osciloscópio e

esse é o seu os coppio ele está ligado


174

00:15:36,380 --> 00:15:39,909

maior domínio

estou fazendo atenção cair põe


175

00:15:39,910 --> 00:15:44,749

nanossegundos não é por menos de

milésimos - de de décimos de milésimo


176

00:15:44,750 --> 00:15:48,648

segundo né

então o que acontece


177

00:15:48,649 --> 00:15:53,119

só pra falar pra vocês o amigo do

liverpool conseguiu fazer por volta de


178

00:15:53,120 --> 00:15:57,499

paul jackson eu tentei não consegui

a explicação do voltante fort jackson


179

00:15:57,500 --> 00:16:03,079

tac já expliquei pra vocês é como é que

funciona e mostra pra vocês que tentei


180

00:16:03,080 --> 00:16:08,148

coloquei lá o microcontrolador direto na

placa alimentei direto na placa mesmo


181

00:16:08,149 --> 00:16:11,629

assim eu não tinha velocidade suficiente

para fazer isso tá


182

00:16:11,630 --> 00:16:15,319

o tempo estava se esgotando e eu pensei

assim bom se eu não conseguir fazer por


183

00:16:15,320 --> 00:16:19,159

voltas

que tal fazer por clock com que a idéia


184

00:16:19,160 --> 00:16:24,139

do clube falta em jackson então ele gera

uma base uma uma variação aí que ela é


185

00:16:24,140 --> 00:16:29,119

baseada na má interpretação do clock

vocês sabem que o bloco tem um tempo


186

00:16:29,120 --> 00:16:33,919

definido por se chamar clock como bom

senso porque tem um clock de 16


187

00:16:33,920 --> 00:16:39,049

a mega hits estão 16 milhões de vezes


188

00:16:38,180 --> 00:16:41,329

por segundo

milhões e milhões na mega hertz aquilo


189

00:16:41,330 --> 00:16:46,789

hair 16 milhões de vezes por segundo

a idéia aqui é o injetar pequenas


190

00:16:46,790 --> 00:16:52,879

variações de clock

pra quê quando o injete e se coloque a


191

00:16:52,880 --> 00:16:58,579

instrução que está sendo executada e não

termine de ser executado em uma nova


192

00:16:58,580 --> 00:17:03,559

instrução passe a ser executada isso

cria um pânico geral no software não


193

00:17:03,560 --> 00:17:08,659

sabe mais o que fazer porque ele não

terminou de executar a instrução n e eu


194

00:17:08,660 --> 00:17:14,088

já bati o martelo do clock eles executar

o n mais um tão isso deixa o software


195

00:17:14,089 --> 00:17:19,698

completamente maluco porque o hardware é

baseado em confiança e eu tô trazendo


196

00:17:19,699 --> 00:17:24,529

ali um oscilador de cristal que

teoricamente teria que oscilará 16 mega


197

00:17:24,530 --> 00:17:30,709

hertz ele não está oscilando ele tem

picos de the clock aleatórios além dos


198

00:17:30,710 --> 00:17:35,329

16 mega hertz é exatamente isso que

estou mostrando nesse slide percebam ali


199

00:17:35,330 --> 00:17:39,109

que a seta azul é um pico de oscilação

anômala


200

00:17:39,110 --> 00:17:43,058

então é uma anomalia na freqüência de

geração do clock


201

00:17:43,059 --> 00:17:50,509

aí eu vou mostrar pra vocês ao vivo que

acontece quando a gente faz isso né


202

00:17:50,510 --> 00:17:58,599

dentro da minha da minha plataforma aqui

do meu arduino é eu agora eu tô voltando


203

00:17:58,840 --> 00:18:07,999

pro meu desktop gente sumiu

eu vou tentar não ficar trocando de tela


204

00:18:08,000 --> 00:18:13,549

viu gente trancada no problema pro

pessoal é que assim o troco né de tela e


205

00:18:13,550 --> 00:18:19,009

da ele não percebo aqui pessoal que ele

continua lá em locke e bloc do ok e


206

00:18:19,010 --> 00:18:24,139

blogs né

a idéia é o seguinte o que eu vou fazer


207

00:18:24,140 --> 00:18:27,829

aqui eu vou pegar o meu arduino que

acabei de mostrar pra vocês


208

00:18:27,830 --> 00:18:34,579

ele tem um pequeno cristal um pequeno

cristal oscilador de 16 mega hertz e eu


209

00:18:34,580 --> 00:18:38,749

vou fazer um curto circuito

nesse cristal oscilador de maneira que


210

00:18:38,750 --> 00:18:43,039

eu tente reverter a flag é que eu tenho

que sair do loop do lote para ver o que


211

00:18:43,040 --> 00:18:46,489

tem além desse no pico com tentar fazer

ao vivo não necessariamente vou


212

00:18:46,490 --> 00:18:49,369

conseguir mas vamos lá na esperança é a


213

00:18:48,470 --> 00:18:51,979

última que morre

não vou pegar aqui vou pegar uma agulha


214

00:18:51,980 --> 00:18:58,669

linha aqui um pedacinho de metal e vou

passar ele no meu é o oscilador do meu


215

00:18:58,670 --> 00:19:02,979

cristal oscilador percebam aí vamos ver

se vai dar certo


216

00:19:13,670 --> 00:19:20,089

é só porque a gente quer né aí lá

pessoal eu consegui pular um loop


217

00:19:20,090 --> 00:19:25,789

eu dei um erro na instrução ele

conseguiu pular o loop e além do loop


218

00:19:25,790 --> 00:19:31,039

dessa instrução que seria provavelmente

um raio é uma instrução aeiou é depois


219

00:19:31,040 --> 00:19:33,529

eu vou mostrar pra vocês um código

parecido com esse aqui porque não tem


220

00:19:33,530 --> 00:19:37,849

esse código porque é uma é uma chaminé

então eles não disponibilizam código mas


221

00:19:37,850 --> 00:19:44,659

percebam aí que tá escrito chip lockheed

né e a flag é o ai é mais rir


222

00:19:44,660 --> 00:19:49,009

quer dizer o que eu estou fazendo aqui

né não deveria estar aqui então eu pulei


223

00:19:49,010 --> 00:19:53,899

uma instrução

eu pulei um laço de repetição utilizando


224

00:19:53,900 --> 00:19:58,009

uma falha de hardware e só isso é uma

coisa mais global e não é uma coisa que


225

00:19:58,010 --> 00:20:02,059

vai meu deus do céu eu consigo fazer um

hardware funcionar da maneira que eu


226

00:20:02,060 --> 00:20:06,889

quero inclusive pessoal que desbloqueia

console tem esse tipo de técnica e muito


227

00:20:06,890 --> 00:20:12,229

tempo pessoal que desbloqueou xbox 360 é

mais ou menos a mesma técnica é pessoal


228

00:20:12,230 --> 00:20:17,839

é que burke o nintendo wii eo e depois o

suíte também utilizavam técnicas


229

00:20:17,840 --> 00:20:22,789

parecidas para conseguir o boot é para

conseguir acesso ao kernel loading do


230

00:20:22,790 --> 00:20:26,809

que beleza

vou tirar isso aqui continua pra vocês o


231

00:20:26,810 --> 00:20:30,949

próximo é utilizando um roteador fica um

pouco mais interessante que eu por ser


232

00:20:30,950 --> 00:20:37,839

uma rotina

então gente vou deixar o código aqui ó


233

00:20:38,560 --> 00:20:44,659

desse jeito pra num me ferrar de novo a

apresentação não é tão a idéia aqui eu


234

00:20:44,660 --> 00:20:50,059

fiz um código no arduino depois é

tentando simular esta challenge e


235

00:20:50,060 --> 00:20:54,679

percebam a ikea que faz esse código

mas basicamente nada né é um fórum


236

00:20:54,680 --> 00:21:00,139

dentro e outro fora e ele faz

incrementos depois ele vê o resto do j /


237

00:21:00,140 --> 00:21:05,029

sem se o resto foi 0 ele incremento um

computador quando o incremento esse


238

00:21:05,030 --> 00:21:11,899

contador em teoria ele precisa o

computador precisa dar sempre 2500 um


239

00:21:11,900 --> 00:21:17,719

número de 2.500 inteiro

percebo que acontece aqui no meu arduino


240

00:21:17,720 --> 00:21:22,239

isso já é um exemplo real e agora

infelizmente vou ter que mudar ea gente


241

00:21:22,240 --> 00:21:26,939

tem que fazer o slide ficar full screen

de novo


242

00:21:26,940 --> 00:21:33,209

mas percebo que acontece com o meu

arduino com esse código que é um código


243

00:21:33,210 --> 00:21:36,059

realmente feito um cenário real que pode

existir


244

00:21:36,060 --> 00:21:41,549

observe o que acontece quando utilizou a

mesma técnica no arduino num cenário


245

00:21:41,550 --> 00:21:44,099

real

aí já não é mais o racha flec já não é


246

00:21:44,100 --> 00:21:48,719

mais um ctf né

observe a little utilizando um pedaço de


247

00:21:48,720 --> 00:21:51,899

metal

esse pedaço de metal toco tocando ali as


248

00:21:51,900 --> 00:21:58,529

lides do do meu micro controlador é do

meu cristal senador e percebam que têm


249

00:21:58,530 --> 00:22:06,859

alguns locais que ele o controle ó tá

2425 ele não pode isso ele precisa dar


250

00:22:06,860 --> 00:22:12,299

2.500 ea ltda 2425 então eu pulei

pedaços do look


251

00:22:12,300 --> 00:22:17,809

eu pulei pedaços do incremento né e

então percebeu você consegue fazer um


252

00:22:17,810 --> 00:22:23,999

flip de beach um friso em the beach e

isso funciona também pra sistemas


253

00:22:24,000 --> 00:22:29,219

modernos de arquitetura moderna pode ser

a arm pode servir esportes e x86 vai


254

00:22:29,220 --> 00:22:32,399

funcionar da mesma maneira óbvio que

você tem que saber o que você vai


255

00:22:32,400 --> 00:22:36,209

cutucar né

mas a ideia mas a mesma isso aqui é o


256

00:22:36,210 --> 00:22:41,609

clock você pode fazer por temperatura

por voltas você pode fazer é utilizar o


257

00:22:41,610 --> 00:22:47,129

laser utilizar luz branca utilizar é ela

é o magnetismo entre outros


258

00:22:47,130 --> 00:22:53,849

aqui é o meu segundo cenário onde eu

mostro pra vocês como conseguir uma uma


259

00:22:53,850 --> 00:22:57,839

coisa bem interessante no roteador

através de uma falha que vai se basear


260

00:22:57,840 --> 00:23:02,819

não somente nome que o controlador no

processador mais vai se basear na


261

00:23:02,820 --> 00:23:08,449

transmissão na falha da transmissão

entre a memória flash e um processador


262

00:23:08,450 --> 00:23:16,579

da do do haiti do circuito dodô meu

embarcado no caso é um roteador


263

00:23:16,580 --> 00:23:23,189

a idéia aqui é o seguinte pessoal vou

pegar o roteador e vou ligar o meu


264

00:23:23,190 --> 00:23:31,139

roteador novamente aqui vou lá para a

interface serial de novo gente vai não


265

00:23:31,140 --> 00:23:38,729

dar nenhum problema e aqui vamos lá

vamos nós de novo deixou desligar esse


266

00:23:38,730 --> 00:23:50,668

e é o que eu vou fazer pessoal novamente

screen e barra deve perder y um ponto e


267

00:23:50,669 --> 00:23:58,709

aqui já é outro e se bené usb serial

aqui nós já 15 minutos putz


268

00:23:58,710 --> 00:24:04,019

aqui funciona assim o balde hate 11 52

00


269

00:24:04,020 --> 00:24:10,918

perceba o que acontece quando eu ligo

meu roteador ou ligar rotina normal né


270

00:24:10,919 --> 00:24:14,359

espera um pouquinho e tal


271

00:24:14,850 --> 00:24:18,899

vocês percebam que depois que ele fizer

todo o processo de boot ele vai cair


272

00:24:18,900 --> 00:24:22,979

numa num mano requisito de credencial e

senha


273

00:24:22,980 --> 00:24:27,209

esse requisito de credencial e senha eu

vou ter que colocar uma senha e um login


274

00:24:27,210 --> 00:24:31,439

e uma senha e pode ser que eu não saiba

esse login e sem que eu posso fazer para


275

00:24:31,440 --> 00:24:35,399

tentar vai passar esse roteador

levando em consideração que ele não tem


276

00:24:35,400 --> 00:24:39,689

uma interface de gee tag por exemplo é

porque os filmes do jpeg podem estar


277

00:24:39,690 --> 00:24:42,839

rompidos

não percebo o login e senha não sei o


278

00:24:42,840 --> 00:24:45,449

login e senha

o que eu posso fazer eu posso tentar


279

00:24:45,450 --> 00:24:52,259

gente é corromper as instruções que são

carregados da memória flash processador


280

00:24:52,260 --> 00:24:56,819

corromper essas instruções

eu talvez se eu tiver sorte eu caiu num


281

00:24:56,820 --> 00:25:01,439

console administrativo

o meu limite próximos pode cair numa


282

00:25:01,440 --> 00:25:05,819

chave ruth olha o que acontece então vou

ligar desligar e ligar de novo e agora


283

00:25:05,820 --> 00:25:12,599

eu vou pegar esse pedacinho aqui de

metal e voa a aterrar o chip select da


284

00:25:12,600 --> 00:25:18,119

minha memória flash com o data out são

dois pinos né township select ou aterrar


285

00:25:18,120 --> 00:25:25,199

esses dois e vejam o que acontece agora

liguei-lhe gay vou esperar um pouco e


286

00:25:25,200 --> 00:25:28,879

vou começar a induzir falhas daqui a

pouco


287

00:25:28,880 --> 00:25:34,009

beleza vou começar a reduzir falha agora

vamos ver se vai


288

00:25:35,680 --> 00:25:41,559

olá as quais foi o system erro então

estou causando erros no squash qual se


289

00:25:41,560 --> 00:25:48,369

tem um mês ele não reiniciar né

e se ele não entrar no boot infinito em


290

00:25:48,370 --> 00:25:50,789

um loop infinito


291

00:25:51,850 --> 00:25:56,289

pode ser que eu não consiga na primeira

vez ela não conseguindo a primeira vez


292

00:25:56,290 --> 00:25:59,039

vamos tentar de novo


293

00:25:59,500 --> 00:26:07,779

vamos lá vou esperar mais um pouquinho

né porque ele está carregando que não é


294

00:26:07,780 --> 00:26:13,599

pessoal e carrego quero beleza desemboca

carregado e reunificar francisco fala


295

00:26:13,600 --> 00:26:17,829

pessoal

isso é uma rotina um chute ou da oms


296

00:26:17,830 --> 00:26:21,539

aqui ó né


297

00:26:22,450 --> 00:26:28,569

olha que absurdo né

é incrível porque pensa só mandar um top


298

00:26:28,570 --> 00:26:35,049

que vocês venham rodando status que é

isso aqui


299

00:26:35,050 --> 00:26:39,639

o que acontece é pra dar uma uma ideia

geral para vocês é tem a ver com este


300

00:26:39,640 --> 00:26:44,679

processo que quando ele não consegue

carregar a o software padrão ele põe


301

00:26:44,680 --> 00:26:50,169

padrão administrativamente a a segunda

coisa que vai carregar seria uma ruschel


302

00:26:50,170 --> 00:26:55,389

então aí que eu fiz eu acabei de vai

passar a segurança do roteador é


303

00:26:55,390 --> 00:27:00,639

simplesmente fazendo um curto circuito

nos pinos netão percebam aí é mais ou


304

00:27:00,640 --> 00:27:04,629

menos essa idéia

bom gente agora eu quero passar


305

00:27:04,630 --> 00:27:07,319

rapidinho né


306

00:27:08,440 --> 00:27:14,109

só pra mostrar pra vocês

a beleza mas tem alguma coisa mais


307

00:27:14,110 --> 00:27:18,189

profissional pra gente mexer é tem sim

pra vocês começarem a brincar com isso


308

00:27:18,190 --> 00:27:24,039

eu sugiro pra vocês uma de vela por boyd

nelma uma placa desenvolvimento fpga


309

00:27:24,040 --> 00:27:29,199

geralmente muito boas a fazer qualquer

coisa com o ipva também um arduino pra


310

00:27:29,200 --> 00:27:33,969

você poder brincar com ele a arquitetura

a vr é interessante checar do rio há um


311

00:27:33,970 --> 00:27:40,089

nó james eo daee já é expresse planejar

é outra arquitetura e e obviamente seria


312

00:27:40,090 --> 00:27:44,829

interessante vocês têm um osciloscópio

para saber quando faz o ataque um


313

00:27:44,830 --> 00:27:48,379

analisador lógico para saber quando

quais são os momentos


314

00:27:48,380 --> 00:27:51,709

está carregando o que quer não está

carregando é que o boot carrega o piano


315

00:27:51,710 --> 00:27:54,019

e tal

e quais são os momentos que o qual se


316

00:27:54,020 --> 00:28:00,759

está fazendo é trocando informações nem

entre o processador e memória flash


317

00:28:00,760 --> 00:28:08,529

até aqui tudo bem barato tranqüilo aqui

já fica feio aqui é mais profissional


318

00:28:08,530 --> 00:28:14,419

então observe o preço

isso aqui é um equipamento do pessoal da


319

00:28:14,420 --> 00:28:17,449

skill que é o mesmo pessoal que fez

aquele ctf de hardware


320

00:28:17,450 --> 00:28:22,909

esse pessoal o equipamento deles é

completo com todos os feixes de laser e


321

00:28:22,910 --> 00:28:27,759

tal segmento de laser

ele custa aproximadamente 500 mil euros


322

00:28:27,760 --> 00:28:33,169

mais 50 mil euros de licença por ano

não muito longe da nossa realidade


323

00:28:33,170 --> 00:28:37,549

entretanto chibiu isso foi muito

interessante 250 dólares já é uma


324

00:28:37,550 --> 00:28:42,439

ferramenta legal para fazer clock falte

jackson para fazer voltas pop jackson é


325

00:28:42,440 --> 00:28:45,109

bem legal para quem quiser dar uma

olhada no chip whisper ótima ferramenta


326

00:28:45,110 --> 00:28:49,819

do colinho flynn

depois procure no google agora o pessoal


327

00:28:49,820 --> 00:28:55,779

eu quero causar uma falha não mais no

processador mas sim num dispositivo


328

00:28:55,780 --> 00:28:59,569

microeletromecânico no sistema

microeletromecânico conhecido como mês


329

00:28:59,570 --> 00:29:05,179

que são giroscópios e acelerômetros eu

vou causar e nesse dispositivo que é um


330

00:29:05,180 --> 00:29:11,509

giroscópio chamado de l3 g 4 200 de esse

é e se esse circo tinha aqui ó


331

00:29:11,510 --> 00:29:16,819

aqui é uma imagem ampliada de cada

centímetro 200 nanômetros um nanômetro


332

00:29:16,820 --> 00:29:23,029

não micrômetros e percebam que ele tem

quatro massas de prova essas massas


333

00:29:23,030 --> 00:29:27,589

elas são elas mexem conforme você mexe o

celular como comprar você mexe o


334

00:29:27,590 --> 00:29:33,379

aparelho e essa bolinha aqui ela mexendo

ela cria variações de energia dentro


335

00:29:33,380 --> 00:29:37,429

desse sistema aqui que é mais ou menos

como se fosse um capacitor fazendo com


336

00:29:37,430 --> 00:29:42,289

que você saiba e que posição o celular

está num espaço é assim que funciona um


337

00:29:42,290 --> 00:29:46,759

giroscópio mas fala se em beleza

mas isso aqui é metal e metal entra em


338

00:29:46,760 --> 00:29:51,889

ressonância com qualquer outra coisa no

mundo todo é tentar acertar a freqüência


339

00:29:51,890 --> 00:29:56,359

correta de ressonância desse metal vai

tudo quebrado em um mês exatamente vai


340

00:29:56,360 --> 00:30:02,178

tudo vibrar para essa nova experiência

eu utilizei o meu é gerador de funk


341

00:30:02,179 --> 00:30:07,398

não que é um osciloscópio instar

utilizei um amplificador de áudio e um


342

00:30:07,399 --> 00:30:11,178

alto-falante normal

observe coloquei o meu celular que o


343

00:30:11,179 --> 00:30:19,248

chai homem me 5s plus e percebam pelo

vídeo que acontece quando eu gera uma


344

00:30:19,249 --> 00:30:26,508

onda de 20 mil e quatrocentos hertz

já no espectro ultrassom é porque mais


345

00:30:26,509 --> 00:30:33,768

de 20 mil redes já é outra som é o

ouvido humano em teoria houve até 20.000


346

00:30:33,769 --> 00:30:38,658

hertz beleza

observe o que acontece a uma freqüência


347

00:30:38,659 --> 00:30:44,089

de 20.400 percebam que o meu

oscilloscope o meu giroscópio dentro do


348

00:30:44,090 --> 00:30:48,558

meu celular está vibrando entra em

ressonância junto com freqüência


349

00:30:48,559 --> 00:30:54,618

eu fiz isso no celular mas se eu fizesse

um drone se utilizasse uma arma né de


350

00:30:54,619 --> 00:30:59,628

fecho direcionado e apontasse um drone

este é o ataque mais sólido possível


351

00:30:59,629 --> 00:31:03,829

para esse tipo de tecnologia porque você

está atacando o dispositivo de hardware


352

00:31:03,830 --> 00:31:07,788

não interromper no conexão de wifi

conexão de bluetooth


353

00:31:07,789 --> 00:31:12,768

eu tô falando para o drone que ele está

de ponta-cabeça eu estou deixando maluco


354

00:31:12,769 --> 00:31:17,298

o dispositivo que é responsável por

fazer o drone equilibrar isso derruba


355

00:31:17,299 --> 00:31:23,178

qualquer drone enfim qualquer outro

dispositivo observa em aí esse é bem


356

00:31:23,179 --> 00:31:28,878

interessante também

esse é um robô que ele se auto balanceia


357

00:31:28,879 --> 00:31:34,248

ele é alto balanceado quando já era uma

determinada função de freqüência a


358

00:31:34,249 --> 00:31:39,558

perceba que ele perde o balanço porque o

giroscópio dele começa a vibrar em


359

00:31:39,559 --> 00:31:44,359

ressonância com essa freqüência gerada e

ele acaba caindo parando de funcionar


360

00:31:44,360 --> 00:31:49,158

isso tem uma série de aplicações

esses dias atrás mesmo a gente conseguiu


361

00:31:49,159 --> 00:31:55,638

a gente não é pesquisadores conseguiram

aí utilizar gazelle upra matar iphones 7


362

00:31:55,639 --> 00:31:59,868

para cima vocês viram esta notícia

utilizando gás hélio ele interrompe o


363

00:31:59,869 --> 00:32:03,439

funcionamento do sistema

microeletromecânico dentro do iphone que


364

00:32:03,440 --> 00:32:07,398

era também um sistema

microeletromecânico que era o gerador ou


365

00:32:07,399 --> 00:32:11,449

cristal oscilador do iphone

ele parava de funcionar então quando


366

00:32:11,450 --> 00:32:15,979

você deixa o iphone num ambiente com

muito ele o cristal oscilador do iphone


367

00:32:15,980 --> 00:32:21,349

para de funcionar eo iphone morre

observe só por conta do gás velho essa e


368

00:32:21,350 --> 00:32:27,409

saiu semana passada esse ataque né então

algumas conclusões possíveis pessoal é


369

00:32:27,410 --> 00:32:30,439

possível arbitrar qualquer padrão de

ressonância


370

00:32:30,440 --> 00:32:34,459

nesse celular algo que eu mostrei pra

vocês né com certa facilidade tendo o


371

00:32:34,460 --> 00:32:38,928

hardware necessário e o smartphone

testado é relativamente um modelo


372

00:32:38,929 --> 00:32:43,189

relativamente recente é o meu smartphone

o único que eu tinha em casa para testar


373

00:32:43,190 --> 00:32:46,579

é o texto geralmente com as coisas que

tenho casa em sair comprando um monte de


374

00:32:46,580 --> 00:32:50,869

coisas a fazer prova de conceito então

muitos outros dispositivos que utilizam


375

00:32:50,870 --> 00:32:56,058

os sistemas microeletromecânicos são

chamadas de mães também podem ser


376

00:32:56,059 --> 00:33:01,399

explorados da mesma maneira ou podem ser

explorados é utilizando mais ou menos a


377

00:33:01,400 --> 00:33:06,259

mesma técnica beleza pessoal então a

ideia mas mesmo essa pra aguçar a


378

00:33:06,260 --> 00:33:10,279

vontade de vocês para mexer com hardware

para vocês tenham uma noção geral dos


379

00:33:10,280 --> 00:33:15,649

sistemas de como funcionam as falhas de

gestão em hardware para que vocês têm


380

00:33:15,650 --> 00:33:18,469

uma procurada nisso quando chegar em

casa se tiverem interesse


381

00:33:18,470 --> 00:33:22,428

beleza gente pra a idéia dessa palestra

foi juntar um pouco de eletrônica com


382

00:33:22,429 --> 00:33:27,849

ranking há um raking mais baseada

eletrônica que é uma coisa que o nosso


383

00:33:27,850 --> 00:33:33,499

keynote jogo durante faz muito bem é

dodô grandes estúdios que é o que vai


384

00:33:33,500 --> 00:33:36,979

ter as 8 horas agora no palco principal

esteio principal


385

00:33:36,980 --> 00:33:41,869

então é só um nome muito interessante

para vocês verem o grande mico osman


386

00:33:41,870 --> 00:33:48,199

john fitzpatrick collins o flu entre

outros pesquisadores que são engenheiros


387

00:33:48,200 --> 00:33:52,699

é eletricistas mais focados na área de

hard rock


388

00:33:52,700 --> 00:33:56,869

bom pessoal era isso que eu queria dizer

quem quiser lá conversar comigo pode


389

00:33:56,870 --> 00:34:02,899

adicionar facebook pode mandar e mail

pode me conversar comigo pelo twitter tô


390

00:34:02,900 --> 00:34:09,459

aberto aí a perguntas às vezes demora um

pouco para responder mas é isso aí gente


391

00:34:09,550 --> 00:34:41,999

[Música]

64 visualizações0 comentário

Posts recentes

Ver tudo

Comments


bottom of page