SlideShare a Scribd company logo
1 of 37
Download to read offline
Parte I Parte II Parte III
Detecc¸˜ao de ataques por ROP em tempo real
assistida por hardware
Marcus Botacin1, Andr´e Gr´egio1,2, Paulo L´ıcio de Geus1
1Instituto de Computac¸˜ao - UNICAMP
{marcus,paulo}@lasca.ic.unicamp.br
2Universidade Federal do Paran´a (UFPR)
gregio@inf.ufpr.br
09 de Novembro de 2016
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
T´opicos
1 Parte I
Introduc¸˜ao
ROP
Trabalhos Relacionados
Mecanismos de Monitorac¸˜ao
Implementac¸˜oes atuais
2 Parte II
Proposta
Pol´ıticas de Integridade
Testes e Resultados
3 Parte III
Considerac¸˜oes Finais
Conclus˜oes e Agradecimentos
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Introduc¸˜ao
T´opicos
1 Parte I
Introduc¸˜ao
ROP
Trabalhos Relacionados
Mecanismos de Monitorac¸˜ao
Implementac¸˜oes atuais
2 Parte II
Proposta
Pol´ıticas de Integridade
Testes e Resultados
3 Parte III
Considerac¸˜oes Finais
Conclus˜oes e Agradecimentos
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Introduc¸˜ao
Panorama
Problema
Injec¸˜ao de C´odigo Externo.
Mitigac¸˜oes
Can´arios de pilha.
P´aginas n˜ao execut´aveis (NX/XD).
Protec¸˜oes ampliadas de mem´oria (MPX).
Um Novo Problema
Re´uso de C´odigo.
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
ROP
T´opicos
1 Parte I
Introduc¸˜ao
ROP
Trabalhos Relacionados
Mecanismos de Monitorac¸˜ao
Implementac¸˜oes atuais
2 Parte II
Proposta
Pol´ıticas de Integridade
Testes e Resultados
3 Parte III
Considerac¸˜oes Finais
Conclus˜oes e Agradecimentos
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
ROP
Programac¸˜ao Orientada a Retorno (ROP)
ROP
Encadeamento de sequˆencias de c´odigo leg´ıtimo (gadgets).
Figura : ROP.
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
ROP
Programac¸˜ao Orientada a Retorno (ROP)
ROP
ROP permite computac¸˜oes arbit´rarias (Turing-completa).
Figura : Ataque ROP.
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Trabalhos Relacionados
T´opicos
1 Parte I
Introduc¸˜ao
ROP
Trabalhos Relacionados
Mecanismos de Monitorac¸˜ao
Implementac¸˜oes atuais
2 Parte II
Proposta
Pol´ıticas de Integridade
Testes e Resultados
3 Parte III
Considerac¸˜oes Finais
Conclus˜oes e Agradecimentos
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Trabalhos Relacionados
Trabalhos Relacionados
Tempo de compilac¸˜ao
Reescrita de c´odigo.
Limitac¸˜ao: sistemas legados.
Instrumentac¸˜ao
Aceita c´odigo legado.
Efeitos Colaterais de emulac¸˜ao..
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Trabalhos Relacionados
Trabalhos Relacionados
Reescrita de bin´ario
Aceita c´odigo legado.
Sem efeitos colaterais.
N˜ao trata c´odigo gerado em runtime.
Monitorac¸˜ao por hardware
Aceita c´odigo legado.
Sem efeitos colaterais.
Trata c´odigo gerado em runtime.
Limitac¸˜oes de implementac¸˜ao.
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Mecanismos de Monitorac¸˜ao
T´opicos
1 Parte I
Introduc¸˜ao
ROP
Trabalhos Relacionados
Mecanismos de Monitorac¸˜ao
Implementac¸˜oes atuais
2 Parte II
Proposta
Pol´ıticas de Integridade
Testes e Resultados
3 Parte III
Considerac¸˜oes Finais
Conclus˜oes e Agradecimentos
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Mecanismos de Monitorac¸˜ao
Mecanismos
LBR vs. BTS
Dados de branch fornecidos pelo processador.
Armazenamento em registradores vs. Mem´oria.
Polling vs. Interrupc¸˜ao.
Limitado vs. Ilimitado.
Dados
Acesso em kernel
JNE,JMP,CALL,RET
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Implementac¸˜oes atuais
T´opicos
1 Parte I
Introduc¸˜ao
ROP
Trabalhos Relacionados
Mecanismos de Monitorac¸˜ao
Implementac¸˜oes atuais
2 Parte II
Proposta
Pol´ıticas de Integridade
Testes e Resultados
3 Parte III
Considerac¸˜oes Finais
Conclus˜oes e Agradecimentos
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Implementac¸˜oes atuais
Implementac¸˜oes atuais
Kbouncer
Limitac¸˜ao do uso do LBR.
Injec¸˜ao de c´odigo.
Monitorac¸˜ao por processo.
ROPecker
Limitac¸˜ao do uso do LBR.
Base de c´odigo est´atica.
Proposta
Sem injec¸˜ao de c´odigo.
Sem componentes est´aticos.
Monitorac¸˜ao de m´ultiplas instˆancias.
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Proposta
T´opicos
1 Parte I
Introduc¸˜ao
ROP
Trabalhos Relacionados
Mecanismos de Monitorac¸˜ao
Implementac¸˜oes atuais
2 Parte II
Proposta
Pol´ıticas de Integridade
Testes e Resultados
3 Parte III
Considerac¸˜oes Finais
Conclus˜oes e Agradecimentos
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Proposta
Proposta de soluc¸˜ao.
Funcionamento
Threshold de 1 desvio.
Interrupc¸˜ao para isolamento de processos.
Introspecc¸˜ao de sistema para obtenc¸˜ao de contexto.
Arquitetura da Soluc¸˜ao
Cliente-Servidor / Driver-Userland.
Cliente filtra processos monitorados.
Cliente aplica pol´ıticas de integridade.
Limitac¸˜oes do Modelo de Ameac¸as
Apenas N´ıvel de usu´ario.
Apenas instruc¸˜oes RET (sem tricks).
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Proposta
Proposta de soluc¸˜ao.
Figura : Notificac¸˜ao de ataque identificado emitida pelo cliente de
monitorac¸˜ao.
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Pol´ıticas de Integridade
T´opicos
1 Parte I
Introduc¸˜ao
ROP
Trabalhos Relacionados
Mecanismos de Monitorac¸˜ao
Implementac¸˜oes atuais
2 Parte II
Proposta
Pol´ıticas de Integridade
Testes e Resultados
3 Parte III
Considerac¸˜oes Finais
Conclus˜oes e Agradecimentos
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Pol´ıticas de Integridade
Pol´ıtica CALL-RET.
Figura : Exemplo de violac¸˜ao de pol´ıtica do tipo CALL-RET.
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Pol´ıticas de Integridade
Como Identificar as instruc¸˜oes ?.
Tabela : Opcodes de instruc¸˜oes do tipo CALL.
Opcode Mnemonic Opcode Mnemonic
0xE8 CALL rel16 0x9A CALL ptr16:16
0xE8 CALL rel32 0x9A CALL ptr16:32
0xFF CALL r/m16 0xFF CALL m16:16
0xFF CALL r/m32 0xFF CALL m16:32
Tabela : Opcodes de instruc¸˜oes do tipo RET.
Opcode C3 CB C2 iw CA iw
Mnemonic RET RET RET imm16 RET imm16
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Pol´ıticas de Integridade
Pol´ıtica CALL-RET.
Listagem 1 : Correspondˆencias “CALL-RET” indicando fluxo de execuc¸˜ao
´ıntegro.
1 PID 3140 FROM 6 b8e7f17 INSTR e8 − CALL
2 PID 3140 TO 6b9d90c1 INSTR c3 − RET
3 PID 4196 FROM 77 b2ce8e INSTR e8 − CALL
4 PID 4196 TO 77 aa591e INSTR c2 − RET
5 PID 2532 FROM 3 de50b6c INSTR e8 − CALL
6 PID 2532 TO 40714979 INSTR c2 − RET
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Pol´ıticas de Integridade
Pol´ıtica do comprimento do gadget.
Figura : Exploit ROP (Fonte: Kbouncer).
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Pol´ıticas de Integridade
Pol´ıtica do comprimento do gadget.
Listagem 2 : Comprimento dos blocos em programas leg´ıtimos (em
n´umero de instruc¸˜oes).
1 PID 3820 FROM 5 f0dea04 TO 5 f0deb30 INSTR 15
2 PID 3820 FROM 5 f0deb4a TO 5 f0deb53 INSTR 21
3 PID 3820 FROM 5 f0dea0e TO 5 f0dea17 INSTR 19
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Pol´ıticas de Integridade
Pol´ıtica do comprimento da frequˆencia de desvios.
<BLOCO>
1 movzx eax,al
2 test eax,eax
3 je 0x10d2
<FIM DO BLOCO>
<BLOCO>
4 mov rax, [rsp+0x58]
5 mov eax, [rax+0x10]
6 add eax,0x8
7 and eax,0xfffffffa
8 mov [rsp+0x30],eax
9 mov eax, [rsp+0x30]
10 and eax,0x2
11 test eax,eax
12 jne 0x1062
<FIM DO BLOCO>
<BLOCO>
13 lea rax,[rip+0x116c44]
14 mov [rsp+0x28],rax
15 lea rax,[rip+0x106e14]
16 mov [rsp+0x20],rax
17 xor r9d,r9d
18 mov r8d,0x32e
19 lea rdx,[rip+0x116a13]
20 mov ecx,0x2
21 call 0x00000000000b4513
<FIM DO BLOCO>
<BLOCO>
22 xor eax,eax
23 xor eax,eax
24 jmp 0x1062
<FIM DO BLOCO>
...
...
Figura : Blocos com instruc¸˜oes de desvios nas extremidades (em negrito)
e janela deslizante de 16 instruc¸˜oes.
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Pol´ıticas de Integridade
Como Obter Instruc¸˜oes a partir de branches ?
Listagem 3 : Exemplo de buffer de instruc¸˜oes obtido a partir dos
enderec¸os fornecidos pelo mecanismo BTS.
1  x f f x15x0ax11x00x00x48x8dx0d x9f x11x00
x00
Listagem 4 : Convers˜ao das instruc¸˜oes do buffer para opcodes.
1 0x1000 ( s i z e =6) c a l l QWORD PTR [ r i p+0x110a ]
2 0x1006 ( s i z e =7) l e a rcx , [ r i p+0x119f ]
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Testes e Resultados
T´opicos
1 Parte I
Introduc¸˜ao
ROP
Trabalhos Relacionados
Mecanismos de Monitorac¸˜ao
Implementac¸˜oes atuais
2 Parte II
Proposta
Pol´ıticas de Integridade
Testes e Resultados
3 Parte III
Considerac¸˜oes Finais
Conclus˜oes e Agradecimentos
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Testes e Resultados
Um exploit real
Tabela : Janela de instruc¸˜oes de desvio contendo 2 gadgets de 2 bytes e
2 instruc¸˜oes.
FROM TO
—- 0x7c346c0a
0x7c346c0b 0x7c37a140
0x7c37a141 —-
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Testes e Resultados
Um exploit real
Listagem 5 : C´odigo leg´ıtimo (alinhado) contendo uma sequˆencia de
bytes que pode ser abusada em um ataque (gadget).
1 7 c346c08 : f2 0 f 58 c3 addsd %xmm3,%xmm0
2 7 c346c0c : 66 0 f 13 44 24 04 movlpd %xmm0,0 x4(%esp )
Listagem 6 : C´odigo desalinhado contendo o gadget realmente executado.
1 0x1000 ( s i z e =1) pop rax
2 0x1001 ( s i z e =1) r e t
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Testes e Resultados
Um exploit real
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
iexplo mplayer soffice adobe superpi Exploit
Densidade
Aplicações
Densidade de desvios para diferentes aplicações
exploit
benign
Figura : Densidade de desvios em diferentes aplicac¸˜oes.
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Testes e Resultados
Overhead
Ativac¸˜ao do Monitor
1%.
Coleta de dados
14% a 26%
Disassembly online
40%.
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Considerac¸˜oes Finais
T´opicos
1 Parte I
Introduc¸˜ao
ROP
Trabalhos Relacionados
Mecanismos de Monitorac¸˜ao
Implementac¸˜oes atuais
2 Parte II
Proposta
Pol´ıticas de Integridade
Testes e Resultados
3 Parte III
Considerac¸˜oes Finais
Conclus˜oes e Agradecimentos
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Considerac¸˜oes Finais
Soluc¸˜ao Definitiva ?
Weird Machines
Page Fault Computing
ELF Metadata Computing
Look up Tables Computing
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Considerac¸˜oes Finais
An´alise dos Resultados
Sumarizac¸˜ao
Ataques de Reuso cada vez mais frequente..
Soluc¸˜oes exigem recompilac¸˜ao ou c´odigo est´atico.
Soluc¸˜oes por hardware tem limitac¸˜oes de implementac¸˜ao.
Uso de BTS e disassembly dinˆamico ´e opc¸˜ao.
Diferentes heur´ısticas para diferentes construc¸˜oes.
N˜ao temos soluc¸˜ao definitiva.
Soluc¸˜oes de monitoramento sempre ser˜ao necess´arias.
Podemos avanc¸ar estado-da-arte das implementac¸˜oes.
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Considerac¸˜oes Finais
Limitac¸˜oes e Trabalhos Futuros
Limitac¸˜oes
An´alise em kernel.
Jump Oriented Programming (JOP).
Loop Oriented Programming (LOP).
POP+RET como substituto a CALL.
Trabalhos Futuros
Expans˜ao das an´alises.
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Conclus˜oes e Agradecimentos
T´opicos
1 Parte I
Introduc¸˜ao
ROP
Trabalhos Relacionados
Mecanismos de Monitorac¸˜ao
Implementac¸˜oes atuais
2 Parte II
Proposta
Pol´ıticas de Integridade
Testes e Resultados
3 Parte III
Considerac¸˜oes Finais
Conclus˜oes e Agradecimentos
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Conclus˜oes e Agradecimentos
Conclus˜oes
Conclus˜oes
Soluc¸˜ao Baseada em BTS ao inv´es do LBR.
Sem injec¸˜ao de c´odigo.
Monitoramento system wide
Disassembly dinˆamico.
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
Parte I Parte II Parte III
Conclus˜oes e Agradecimentos
Agradecimentos
CNPq, pelo financiamento via Proj. MCTI/CNPq/Universal-A
edital 14/2014 (Processo 444487/2014-0)
CAPES, pelo financiamento via Proj. FORTE - Forense Digital
Tempestiva e Eficiente (Processo: 23038.007604/2014-69).
Instituto de Computac¸˜ao/Unicamp
Departamento de Inform´atica/UFPR
Contato:
marcus@lasca.ic.unicamp.br
paulo@lasca.ic.unicamp.br
gregio@inf.ufpr.br
Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16

More Related Content

Similar to XVII SBSEG: Detecção de ataques por ROP em tempo real assistida por hardware

[White paper] detectando problemas em redes industriais através de monitorame...
[White paper] detectando problemas em redes industriais através de monitorame...[White paper] detectando problemas em redes industriais através de monitorame...
[White paper] detectando problemas em redes industriais através de monitorame...
TI Safe
 
Aplicac3a7c3a3o da-abordagem-gqm-para-a-definic3a7c3a3o-de-um-processo-de-eng...
Aplicac3a7c3a3o da-abordagem-gqm-para-a-definic3a7c3a3o-de-um-processo-de-eng...Aplicac3a7c3a3o da-abordagem-gqm-para-a-definic3a7c3a3o-de-um-processo-de-eng...
Aplicac3a7c3a3o da-abordagem-gqm-para-a-definic3a7c3a3o-de-um-processo-de-eng...
JADSON SANTOS
 

Similar to XVII SBSEG: Detecção de ataques por ROP em tempo real assistida por hardware (20)

Modelo de Atendimento
Modelo de AtendimentoModelo de Atendimento
Modelo de Atendimento
 
Opc4
Opc4Opc4
Opc4
 
Monitoramento de Redes TCP/IP - Monografia
Monitoramento de Redes TCP/IP - MonografiaMonitoramento de Redes TCP/IP - Monografia
Monitoramento de Redes TCP/IP - Monografia
 
Relatório final
Relatório finalRelatório final
Relatório final
 
Implementação com Validação Real de um Controle Proporcional, Integral e Deri...
Implementação com Validação Real de um Controle Proporcional, Integral e Deri...Implementação com Validação Real de um Controle Proporcional, Integral e Deri...
Implementação com Validação Real de um Controle Proporcional, Integral e Deri...
 
análise de falhas
análise de falhasanálise de falhas
análise de falhas
 
Aula 0
Aula 0Aula 0
Aula 0
 
Teste de performance mrg realtime
Teste de performance mrg realtimeTeste de performance mrg realtime
Teste de performance mrg realtime
 
Uma Arquitetura Autonômica para Detecção e Reação a Ameaças de Segurança em R...
Uma Arquitetura Autonômica para Detecção e Reação a Ameaças de Segurança em R...Uma Arquitetura Autonômica para Detecção e Reação a Ameaças de Segurança em R...
Uma Arquitetura Autonômica para Detecção e Reação a Ameaças de Segurança em R...
 
Testes nao funcionais 1
Testes nao funcionais 1Testes nao funcionais 1
Testes nao funcionais 1
 
Questionário de automação industrial
Questionário de automação industrialQuestionário de automação industrial
Questionário de automação industrial
 
[White paper] detectando problemas em redes industriais através de monitorame...
[White paper] detectando problemas em redes industriais através de monitorame...[White paper] detectando problemas em redes industriais através de monitorame...
[White paper] detectando problemas em redes industriais através de monitorame...
 
Proposta para Aceleração de Desempenho de Algoritmos de Visão Computacional e...
Proposta para Aceleração de Desempenho de Algoritmos de Visão Computacional e...Proposta para Aceleração de Desempenho de Algoritmos de Visão Computacional e...
Proposta para Aceleração de Desempenho de Algoritmos de Visão Computacional e...
 
Gestão de Consequências.ppt
Gestão de Consequências.pptGestão de Consequências.ppt
Gestão de Consequências.ppt
 
SIC_201_VRSJ
SIC_201_VRSJSIC_201_VRSJ
SIC_201_VRSJ
 
Aplicac3a7c3a3o da-abordagem-gqm-para-a-definic3a7c3a3o-de-um-processo-de-eng...
Aplicac3a7c3a3o da-abordagem-gqm-para-a-definic3a7c3a3o-de-um-processo-de-eng...Aplicac3a7c3a3o da-abordagem-gqm-para-a-definic3a7c3a3o-de-um-processo-de-eng...
Aplicac3a7c3a3o da-abordagem-gqm-para-a-definic3a7c3a3o-de-um-processo-de-eng...
 
Como ser programador durante o dia e mesmo assim dormir bem à noite
Como ser programador durante o dia e mesmo assim dormir bem à noiteComo ser programador durante o dia e mesmo assim dormir bem à noite
Como ser programador durante o dia e mesmo assim dormir bem à noite
 
Intro Sist Embarcados - Sergio cavalcante
Intro Sist Embarcados - Sergio cavalcanteIntro Sist Embarcados - Sergio cavalcante
Intro Sist Embarcados - Sergio cavalcante
 
Julio Silvello - Femtojava - Self Checking Adders
Julio Silvello - Femtojava - Self Checking AddersJulio Silvello - Femtojava - Self Checking Adders
Julio Silvello - Femtojava - Self Checking Adders
 
Monitoração - muito além do sistema operacional - WeOp 2014
Monitoração - muito além do sistema operacional - WeOp 2014Monitoração - muito além do sistema operacional - WeOp 2014
Monitoração - muito além do sistema operacional - WeOp 2014
 

More from Marcus Botacin

More from Marcus Botacin (20)

Machine Learning by Examples - Marcus Botacin - TAMU 2024
Machine Learning by Examples - Marcus Botacin - TAMU 2024Machine Learning by Examples - Marcus Botacin - TAMU 2024
Machine Learning by Examples - Marcus Botacin - TAMU 2024
 
Near-memory & In-Memory Detection of Fileless Malware
Near-memory & In-Memory Detection of Fileless MalwareNear-memory & In-Memory Detection of Fileless Malware
Near-memory & In-Memory Detection of Fileless Malware
 
GPThreats-3: Is Automated Malware Generation a Threat?
GPThreats-3: Is Automated Malware Generation a Threat?GPThreats-3: Is Automated Malware Generation a Threat?
GPThreats-3: Is Automated Malware Generation a Threat?
 
[HackInTheBOx] All You Always Wanted to Know About Antiviruses
[HackInTheBOx] All You Always Wanted to Know About Antiviruses[HackInTheBOx] All You Always Wanted to Know About Antiviruses
[HackInTheBOx] All You Always Wanted to Know About Antiviruses
 
[Usenix Enigma\ Why Is Our Security Research Failing? Five Practices to Change!
[Usenix Enigma\ Why Is Our Security Research Failing? Five Practices to Change![Usenix Enigma\ Why Is Our Security Research Failing? Five Practices to Change!
[Usenix Enigma\ Why Is Our Security Research Failing? Five Practices to Change!
 
Hardware-accelerated security monitoring
Hardware-accelerated security monitoringHardware-accelerated security monitoring
Hardware-accelerated security monitoring
 
How do we detect malware? A step-by-step guide
How do we detect malware? A step-by-step guideHow do we detect malware? A step-by-step guide
How do we detect malware? A step-by-step guide
 
Among Viruses, Trojans, and Backdoors:Fighting Malware in 2022
Among Viruses, Trojans, and Backdoors:Fighting Malware in 2022Among Viruses, Trojans, and Backdoors:Fighting Malware in 2022
Among Viruses, Trojans, and Backdoors:Fighting Malware in 2022
 
Extraindo Caracterı́sticas de Arquivos Binários Executáveis
Extraindo Caracterı́sticas de Arquivos Binários ExecutáveisExtraindo Caracterı́sticas de Arquivos Binários Executáveis
Extraindo Caracterı́sticas de Arquivos Binários Executáveis
 
On the Malware Detection Problem: Challenges & Novel Approaches
On the Malware Detection Problem: Challenges & Novel ApproachesOn the Malware Detection Problem: Challenges & Novel Approaches
On the Malware Detection Problem: Challenges & Novel Approaches
 
All You Need to Know to Win a Cybersecurity Adversarial Machine Learning Comp...
All You Need to Know to Win a Cybersecurity Adversarial Machine Learning Comp...All You Need to Know to Win a Cybersecurity Adversarial Machine Learning Comp...
All You Need to Know to Win a Cybersecurity Adversarial Machine Learning Comp...
 
Near-memory & In-Memory Detection of Fileless Malware
Near-memory & In-Memory Detection of Fileless MalwareNear-memory & In-Memory Detection of Fileless Malware
Near-memory & In-Memory Detection of Fileless Malware
 
Does Your Threat Model Consider Country and Culture? A Case Study of Brazilia...
Does Your Threat Model Consider Country and Culture? A Case Study of Brazilia...Does Your Threat Model Consider Country and Culture? A Case Study of Brazilia...
Does Your Threat Model Consider Country and Culture? A Case Study of Brazilia...
 
Integridade, confidencialidade, disponibilidade, ransomware
Integridade, confidencialidade, disponibilidade, ransomwareIntegridade, confidencialidade, disponibilidade, ransomware
Integridade, confidencialidade, disponibilidade, ransomware
 
An Empirical Study on the Blocking of HTTP and DNS Requests at Providers Leve...
An Empirical Study on the Blocking of HTTP and DNS Requests at Providers Leve...An Empirical Study on the Blocking of HTTP and DNS Requests at Providers Leve...
An Empirical Study on the Blocking of HTTP and DNS Requests at Providers Leve...
 
On the Security of Application Installers & Online Software Repositories
On the Security of Application Installers & Online Software RepositoriesOn the Security of Application Installers & Online Software Repositories
On the Security of Application Installers & Online Software Repositories
 
UMLsec
UMLsecUMLsec
UMLsec
 
The Internet Banking [in]Security Spiral: Past, Present, and Future of Online...
The Internet Banking [in]Security Spiral: Past, Present, and Future of Online...The Internet Banking [in]Security Spiral: Past, Present, and Future of Online...
The Internet Banking [in]Security Spiral: Past, Present, and Future of Online...
 
Análise do Malware Ativo na Internet Brasileira: 4 anos depois. O que mudou?
Análise do Malware Ativo na Internet Brasileira: 4 anos depois. O que mudou?Análise do Malware Ativo na Internet Brasileira: 4 anos depois. O que mudou?
Análise do Malware Ativo na Internet Brasileira: 4 anos depois. O que mudou?
 
Towards Malware Decompilation and Reassembly
Towards Malware Decompilation and ReassemblyTowards Malware Decompilation and Reassembly
Towards Malware Decompilation and Reassembly
 

Recently uploaded

Recently uploaded (9)

Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 

XVII SBSEG: Detecção de ataques por ROP em tempo real assistida por hardware

  • 1. Parte I Parte II Parte III Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware Marcus Botacin1, Andr´e Gr´egio1,2, Paulo L´ıcio de Geus1 1Instituto de Computac¸˜ao - UNICAMP {marcus,paulo}@lasca.ic.unicamp.br 2Universidade Federal do Paran´a (UFPR) gregio@inf.ufpr.br 09 de Novembro de 2016 Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 2. Parte I Parte II Parte III T´opicos 1 Parte I Introduc¸˜ao ROP Trabalhos Relacionados Mecanismos de Monitorac¸˜ao Implementac¸˜oes atuais 2 Parte II Proposta Pol´ıticas de Integridade Testes e Resultados 3 Parte III Considerac¸˜oes Finais Conclus˜oes e Agradecimentos Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 3. Parte I Parte II Parte III Introduc¸˜ao T´opicos 1 Parte I Introduc¸˜ao ROP Trabalhos Relacionados Mecanismos de Monitorac¸˜ao Implementac¸˜oes atuais 2 Parte II Proposta Pol´ıticas de Integridade Testes e Resultados 3 Parte III Considerac¸˜oes Finais Conclus˜oes e Agradecimentos Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 4. Parte I Parte II Parte III Introduc¸˜ao Panorama Problema Injec¸˜ao de C´odigo Externo. Mitigac¸˜oes Can´arios de pilha. P´aginas n˜ao execut´aveis (NX/XD). Protec¸˜oes ampliadas de mem´oria (MPX). Um Novo Problema Re´uso de C´odigo. Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 5. Parte I Parte II Parte III ROP T´opicos 1 Parte I Introduc¸˜ao ROP Trabalhos Relacionados Mecanismos de Monitorac¸˜ao Implementac¸˜oes atuais 2 Parte II Proposta Pol´ıticas de Integridade Testes e Resultados 3 Parte III Considerac¸˜oes Finais Conclus˜oes e Agradecimentos Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 6. Parte I Parte II Parte III ROP Programac¸˜ao Orientada a Retorno (ROP) ROP Encadeamento de sequˆencias de c´odigo leg´ıtimo (gadgets). Figura : ROP. Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 7. Parte I Parte II Parte III ROP Programac¸˜ao Orientada a Retorno (ROP) ROP ROP permite computac¸˜oes arbit´rarias (Turing-completa). Figura : Ataque ROP. Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 8. Parte I Parte II Parte III Trabalhos Relacionados T´opicos 1 Parte I Introduc¸˜ao ROP Trabalhos Relacionados Mecanismos de Monitorac¸˜ao Implementac¸˜oes atuais 2 Parte II Proposta Pol´ıticas de Integridade Testes e Resultados 3 Parte III Considerac¸˜oes Finais Conclus˜oes e Agradecimentos Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 9. Parte I Parte II Parte III Trabalhos Relacionados Trabalhos Relacionados Tempo de compilac¸˜ao Reescrita de c´odigo. Limitac¸˜ao: sistemas legados. Instrumentac¸˜ao Aceita c´odigo legado. Efeitos Colaterais de emulac¸˜ao.. Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 10. Parte I Parte II Parte III Trabalhos Relacionados Trabalhos Relacionados Reescrita de bin´ario Aceita c´odigo legado. Sem efeitos colaterais. N˜ao trata c´odigo gerado em runtime. Monitorac¸˜ao por hardware Aceita c´odigo legado. Sem efeitos colaterais. Trata c´odigo gerado em runtime. Limitac¸˜oes de implementac¸˜ao. Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 11. Parte I Parte II Parte III Mecanismos de Monitorac¸˜ao T´opicos 1 Parte I Introduc¸˜ao ROP Trabalhos Relacionados Mecanismos de Monitorac¸˜ao Implementac¸˜oes atuais 2 Parte II Proposta Pol´ıticas de Integridade Testes e Resultados 3 Parte III Considerac¸˜oes Finais Conclus˜oes e Agradecimentos Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 12. Parte I Parte II Parte III Mecanismos de Monitorac¸˜ao Mecanismos LBR vs. BTS Dados de branch fornecidos pelo processador. Armazenamento em registradores vs. Mem´oria. Polling vs. Interrupc¸˜ao. Limitado vs. Ilimitado. Dados Acesso em kernel JNE,JMP,CALL,RET Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 13. Parte I Parte II Parte III Implementac¸˜oes atuais T´opicos 1 Parte I Introduc¸˜ao ROP Trabalhos Relacionados Mecanismos de Monitorac¸˜ao Implementac¸˜oes atuais 2 Parte II Proposta Pol´ıticas de Integridade Testes e Resultados 3 Parte III Considerac¸˜oes Finais Conclus˜oes e Agradecimentos Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 14. Parte I Parte II Parte III Implementac¸˜oes atuais Implementac¸˜oes atuais Kbouncer Limitac¸˜ao do uso do LBR. Injec¸˜ao de c´odigo. Monitorac¸˜ao por processo. ROPecker Limitac¸˜ao do uso do LBR. Base de c´odigo est´atica. Proposta Sem injec¸˜ao de c´odigo. Sem componentes est´aticos. Monitorac¸˜ao de m´ultiplas instˆancias. Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 15. Parte I Parte II Parte III Proposta T´opicos 1 Parte I Introduc¸˜ao ROP Trabalhos Relacionados Mecanismos de Monitorac¸˜ao Implementac¸˜oes atuais 2 Parte II Proposta Pol´ıticas de Integridade Testes e Resultados 3 Parte III Considerac¸˜oes Finais Conclus˜oes e Agradecimentos Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 16. Parte I Parte II Parte III Proposta Proposta de soluc¸˜ao. Funcionamento Threshold de 1 desvio. Interrupc¸˜ao para isolamento de processos. Introspecc¸˜ao de sistema para obtenc¸˜ao de contexto. Arquitetura da Soluc¸˜ao Cliente-Servidor / Driver-Userland. Cliente filtra processos monitorados. Cliente aplica pol´ıticas de integridade. Limitac¸˜oes do Modelo de Ameac¸as Apenas N´ıvel de usu´ario. Apenas instruc¸˜oes RET (sem tricks). Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 17. Parte I Parte II Parte III Proposta Proposta de soluc¸˜ao. Figura : Notificac¸˜ao de ataque identificado emitida pelo cliente de monitorac¸˜ao. Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 18. Parte I Parte II Parte III Pol´ıticas de Integridade T´opicos 1 Parte I Introduc¸˜ao ROP Trabalhos Relacionados Mecanismos de Monitorac¸˜ao Implementac¸˜oes atuais 2 Parte II Proposta Pol´ıticas de Integridade Testes e Resultados 3 Parte III Considerac¸˜oes Finais Conclus˜oes e Agradecimentos Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 19. Parte I Parte II Parte III Pol´ıticas de Integridade Pol´ıtica CALL-RET. Figura : Exemplo de violac¸˜ao de pol´ıtica do tipo CALL-RET. Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 20. Parte I Parte II Parte III Pol´ıticas de Integridade Como Identificar as instruc¸˜oes ?. Tabela : Opcodes de instruc¸˜oes do tipo CALL. Opcode Mnemonic Opcode Mnemonic 0xE8 CALL rel16 0x9A CALL ptr16:16 0xE8 CALL rel32 0x9A CALL ptr16:32 0xFF CALL r/m16 0xFF CALL m16:16 0xFF CALL r/m32 0xFF CALL m16:32 Tabela : Opcodes de instruc¸˜oes do tipo RET. Opcode C3 CB C2 iw CA iw Mnemonic RET RET RET imm16 RET imm16 Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 21. Parte I Parte II Parte III Pol´ıticas de Integridade Pol´ıtica CALL-RET. Listagem 1 : Correspondˆencias “CALL-RET” indicando fluxo de execuc¸˜ao ´ıntegro. 1 PID 3140 FROM 6 b8e7f17 INSTR e8 − CALL 2 PID 3140 TO 6b9d90c1 INSTR c3 − RET 3 PID 4196 FROM 77 b2ce8e INSTR e8 − CALL 4 PID 4196 TO 77 aa591e INSTR c2 − RET 5 PID 2532 FROM 3 de50b6c INSTR e8 − CALL 6 PID 2532 TO 40714979 INSTR c2 − RET Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 22. Parte I Parte II Parte III Pol´ıticas de Integridade Pol´ıtica do comprimento do gadget. Figura : Exploit ROP (Fonte: Kbouncer). Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 23. Parte I Parte II Parte III Pol´ıticas de Integridade Pol´ıtica do comprimento do gadget. Listagem 2 : Comprimento dos blocos em programas leg´ıtimos (em n´umero de instruc¸˜oes). 1 PID 3820 FROM 5 f0dea04 TO 5 f0deb30 INSTR 15 2 PID 3820 FROM 5 f0deb4a TO 5 f0deb53 INSTR 21 3 PID 3820 FROM 5 f0dea0e TO 5 f0dea17 INSTR 19 Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 24. Parte I Parte II Parte III Pol´ıticas de Integridade Pol´ıtica do comprimento da frequˆencia de desvios. <BLOCO> 1 movzx eax,al 2 test eax,eax 3 je 0x10d2 <FIM DO BLOCO> <BLOCO> 4 mov rax, [rsp+0x58] 5 mov eax, [rax+0x10] 6 add eax,0x8 7 and eax,0xfffffffa 8 mov [rsp+0x30],eax 9 mov eax, [rsp+0x30] 10 and eax,0x2 11 test eax,eax 12 jne 0x1062 <FIM DO BLOCO> <BLOCO> 13 lea rax,[rip+0x116c44] 14 mov [rsp+0x28],rax 15 lea rax,[rip+0x106e14] 16 mov [rsp+0x20],rax 17 xor r9d,r9d 18 mov r8d,0x32e 19 lea rdx,[rip+0x116a13] 20 mov ecx,0x2 21 call 0x00000000000b4513 <FIM DO BLOCO> <BLOCO> 22 xor eax,eax 23 xor eax,eax 24 jmp 0x1062 <FIM DO BLOCO> ... ... Figura : Blocos com instruc¸˜oes de desvios nas extremidades (em negrito) e janela deslizante de 16 instruc¸˜oes. Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 25. Parte I Parte II Parte III Pol´ıticas de Integridade Como Obter Instruc¸˜oes a partir de branches ? Listagem 3 : Exemplo de buffer de instruc¸˜oes obtido a partir dos enderec¸os fornecidos pelo mecanismo BTS. 1 x f f x15x0ax11x00x00x48x8dx0d x9f x11x00 x00 Listagem 4 : Convers˜ao das instruc¸˜oes do buffer para opcodes. 1 0x1000 ( s i z e =6) c a l l QWORD PTR [ r i p+0x110a ] 2 0x1006 ( s i z e =7) l e a rcx , [ r i p+0x119f ] Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 26. Parte I Parte II Parte III Testes e Resultados T´opicos 1 Parte I Introduc¸˜ao ROP Trabalhos Relacionados Mecanismos de Monitorac¸˜ao Implementac¸˜oes atuais 2 Parte II Proposta Pol´ıticas de Integridade Testes e Resultados 3 Parte III Considerac¸˜oes Finais Conclus˜oes e Agradecimentos Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 27. Parte I Parte II Parte III Testes e Resultados Um exploit real Tabela : Janela de instruc¸˜oes de desvio contendo 2 gadgets de 2 bytes e 2 instruc¸˜oes. FROM TO —- 0x7c346c0a 0x7c346c0b 0x7c37a140 0x7c37a141 —- Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 28. Parte I Parte II Parte III Testes e Resultados Um exploit real Listagem 5 : C´odigo leg´ıtimo (alinhado) contendo uma sequˆencia de bytes que pode ser abusada em um ataque (gadget). 1 7 c346c08 : f2 0 f 58 c3 addsd %xmm3,%xmm0 2 7 c346c0c : 66 0 f 13 44 24 04 movlpd %xmm0,0 x4(%esp ) Listagem 6 : C´odigo desalinhado contendo o gadget realmente executado. 1 0x1000 ( s i z e =1) pop rax 2 0x1001 ( s i z e =1) r e t Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 29. Parte I Parte II Parte III Testes e Resultados Um exploit real 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 iexplo mplayer soffice adobe superpi Exploit Densidade Aplicações Densidade de desvios para diferentes aplicações exploit benign Figura : Densidade de desvios em diferentes aplicac¸˜oes. Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 30. Parte I Parte II Parte III Testes e Resultados Overhead Ativac¸˜ao do Monitor 1%. Coleta de dados 14% a 26% Disassembly online 40%. Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 31. Parte I Parte II Parte III Considerac¸˜oes Finais T´opicos 1 Parte I Introduc¸˜ao ROP Trabalhos Relacionados Mecanismos de Monitorac¸˜ao Implementac¸˜oes atuais 2 Parte II Proposta Pol´ıticas de Integridade Testes e Resultados 3 Parte III Considerac¸˜oes Finais Conclus˜oes e Agradecimentos Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 32. Parte I Parte II Parte III Considerac¸˜oes Finais Soluc¸˜ao Definitiva ? Weird Machines Page Fault Computing ELF Metadata Computing Look up Tables Computing Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 33. Parte I Parte II Parte III Considerac¸˜oes Finais An´alise dos Resultados Sumarizac¸˜ao Ataques de Reuso cada vez mais frequente.. Soluc¸˜oes exigem recompilac¸˜ao ou c´odigo est´atico. Soluc¸˜oes por hardware tem limitac¸˜oes de implementac¸˜ao. Uso de BTS e disassembly dinˆamico ´e opc¸˜ao. Diferentes heur´ısticas para diferentes construc¸˜oes. N˜ao temos soluc¸˜ao definitiva. Soluc¸˜oes de monitoramento sempre ser˜ao necess´arias. Podemos avanc¸ar estado-da-arte das implementac¸˜oes. Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 34. Parte I Parte II Parte III Considerac¸˜oes Finais Limitac¸˜oes e Trabalhos Futuros Limitac¸˜oes An´alise em kernel. Jump Oriented Programming (JOP). Loop Oriented Programming (LOP). POP+RET como substituto a CALL. Trabalhos Futuros Expans˜ao das an´alises. Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 35. Parte I Parte II Parte III Conclus˜oes e Agradecimentos T´opicos 1 Parte I Introduc¸˜ao ROP Trabalhos Relacionados Mecanismos de Monitorac¸˜ao Implementac¸˜oes atuais 2 Parte II Proposta Pol´ıticas de Integridade Testes e Resultados 3 Parte III Considerac¸˜oes Finais Conclus˜oes e Agradecimentos Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 36. Parte I Parte II Parte III Conclus˜oes e Agradecimentos Conclus˜oes Conclus˜oes Soluc¸˜ao Baseada em BTS ao inv´es do LBR. Sem injec¸˜ao de c´odigo. Monitoramento system wide Disassembly dinˆamico. Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16
  • 37. Parte I Parte II Parte III Conclus˜oes e Agradecimentos Agradecimentos CNPq, pelo financiamento via Proj. MCTI/CNPq/Universal-A edital 14/2014 (Processo 444487/2014-0) CAPES, pelo financiamento via Proj. FORTE - Forense Digital Tempestiva e Eficiente (Processo: 23038.007604/2014-69). Instituto de Computac¸˜ao/Unicamp Departamento de Inform´atica/UFPR Contato: marcus@lasca.ic.unicamp.br paulo@lasca.ic.unicamp.br gregio@inf.ufpr.br Detecc¸˜ao de ataques por ROP em tempo real assistida por hardware SBSeg’16