Data Communication Group http :// networks f.ufrgs.br/dcg

49
` Unstructured Supplementary Service Data (USSD) Aula 4: Questões de Segurança Porto Alegre, setembro de 2013 Data Communication Group http :// networks .inf.ufrgs.br/dcg/

description

Unstructured Supplementary Service Data (USSD) Aula 4: Questões de Segurança Porto Alegre, setembro de 2013. Data Communication Group http :// networks .inf.ufrgs.br/dcg/. Agenda. Segurança na Rede GSM Segurança no Gateway USSD Segurança e ntre Gateway USSD e Aplicação Estudo de Caso. - PowerPoint PPT Presentation

Transcript of Data Communication Group http :// networks f.ufrgs.br/dcg

Page 1: Data Communication  Group http :// networks f.ufrgs.br/dcg

`

Unstructured Supplementary

Service Data (USSD)

Aula 4: Questões de Segurança

Porto Alegre, setembro de 2013

Data Communication Grouphttp://networks.inf.ufrgs.br/dcg/

Page 2: Data Communication  Group http :// networks f.ufrgs.br/dcg

Agenda

① Segurança na Rede GSM

② Segurança no Gateway USSD

③ Segurança entre Gateway USSD e

Aplicação

④ Estudo de Caso

2Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 3: Data Communication  Group http :// networks f.ufrgs.br/dcg

Necessidades de Segurança na Rede GSM

3Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Das operadoras Cobrar por serviços Evitar fraudes Proteger os serviços prestados

Dos clientes Privacidade Anonimato Segurança mínima igual ao de uma Rede Pública de

Telefonia Comutada (RPTC)

Page 4: Data Communication  Group http :// networks f.ufrgs.br/dcg

Objetivos de Segurança na Rede GSM

Confidencialidade e Anonimato no rádio

Autenticação forte contra repúdio de cobranças (fraudes)

Prevenir relacionamento entre operadoras Sem advertência Por competição

4Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 5: Data Communication  Group http :// networks f.ufrgs.br/dcg

Requisitos de um Mecanismo de Segurança em Redes GSM

Não deve: Adicionar significante sobrecarga na

chamada Aumentar o tráfego do canal Aumentar a taxa de erros Adicionar complexidade custosa aos

sistemas Deve:

Ser eficiente com baixos custos Ser capaz de identificar acesso de

equipamentos suspeitos5

Unstructured Supplementary Service Data (USSD)Porto Alegre, setembro de 2013

Page 6: Data Communication  Group http :// networks f.ufrgs.br/dcg

6

Arquitetura GSM

MS - Mobile StationBSS - Base Station SubsystemBTS -  Base Transceiver StationBSC - Base Station ControllerNSS - Network Station SubsystemMSC - Mobile Services Switching CenterVLR - Visitior Location RegisterHLR - Home Location RegisterAuC - Autentiction CenterEIR - Equipment Identitty RegisterSMSC - Short Message Service CenterGMSC – Gateway MSC

6

MS

BTS

BTS

BSC

BSC

EIR

SMSCAuC

BSS NSS

BTSHLR

MSC

VLR

GMSC

Page 7: Data Communication  Group http :// networks f.ufrgs.br/dcg

Segurança em Redes GSM

SIM Card possui 4 informações de segurança: International Mobile Subscriber Identity

(IMSI) Authentication Key (Ki) O algoritmos de autenticação A3 O algoritmo de criação da chave cifrada

A8

Equipamento Móvel (ME) possui mais uma informação de segurança O algoritmo de criptografia A5 7

Unstructured Supplementary Service Data (USSD)Porto Alegre, setembro de 2013

Page 8: Data Communication  Group http :// networks f.ufrgs.br/dcg

8

International Mobile Subscriber Identity

Identifica o usuário e operadora

Usuário pode “passar” seus dados para diferentes dispositivos móveis

Unstructured Supplementary Service Data (USSD)Porto Alegre, setembro de 2013

MCC – Mobile Country codeMCN - Mobile Network CodeMSIM – Mobile Station Identification Number

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

MCC MCN MSIN

Page 9: Data Communication  Group http :// networks f.ufrgs.br/dcg

Authentication Key (Ki)

Chave de 128 bits É a semente utilizada para a

criação de todas as chaves e desafios na rede GSM

Armazenada no SIM e no AuC i.e. cada SIM possui um Ki único

9Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 10: Data Communication  Group http :// networks f.ufrgs.br/dcg

A3

Algoritmos A3

10Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Ki (128 bits)SRES (32 bits)

RAND (128 bits)

RAND – Desafio randômico gerado pelo AuCKi – Authentication KeySRES – Signed Response

Confidencialidade da identidade do usuário

Page 11: Data Communication  Group http :// networks f.ufrgs.br/dcg

Algoritmos A8

11Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

A8Ki (128 bits)Kc (64 bits)

RAND (128 bits)

RAND – Desafio randômico gerado pelo AuCKi– Authentication keyKc – Ciphering Key – Chave de cifra

Confidencialidade de dados (SMS, voz, etc.)

Page 12: Data Communication  Group http :// networks f.ufrgs.br/dcg

Mobile Station (MS)

MS = SIM + ME O SIM pode ser protegido com um

Personal Identification Number (PIN) gerado pelo usuário O PIN é armazenado no cartão Quando digitado incorretamente três

vezes bloqueia o mesmo Para o desbloqueio utiliza-se o Personal

Unblocking Key (PUK), que também é armazenado no cartão e pode ser obtido com a operadora

12Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 13: Data Communication  Group http :// networks f.ufrgs.br/dcg

Criptografia no ME

13Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

A5Fn (22 bits)Texto criptografado(114 bits)

Kc (64 bits)(produzido pelo A8)

Dado (plaintext)

Kc – Ciphering Key – Chave de cifraFn– Número do Quadro

Page 14: Data Communication  Group http :// networks f.ufrgs.br/dcg

A5/0, A5/1, A5/2 e A5/3

A5/0 Não possui criptografia

A5/1 Mais forte e pode ser utilizado por países filiados

ao CEPT (European Conference of Postal and Telecommunications)

A5/2 Mais fraco que o A5/1

A5/3 Baseado no algoritmo Kasumi (3GPP 2002) Suportado em redes 2G e 3G

14Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 15: Data Communication  Group http :// networks f.ufrgs.br/dcg

Segurança em Redes GSM

Mobile Switching Center (MSC) Responsável por realizar

redirecionamentos, autenticação, registro (auditoria) e criação das ligações entre os dispositivos de uma rede GSM

Home Location Register (HLR) Responável pelo registro da localização

de cada usuário da rede GSM. Informação importante para evitar fraudes (auditoria)

15Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 16: Data Communication  Group http :// networks f.ufrgs.br/dcg

Authentication Centre (AuC)

Utilizado pelo HLR para gerar desafios randômicos (RAND)

Pode ser integrado com outras funções da rede, e.g. com o HLR O banco de dados do AuC contém:

IMSI Temporary Mobile Subscriber Identity

(TMSI) Location Area Identity (LAI) Ki

16Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 17: Data Communication  Group http :// networks f.ufrgs.br/dcg

17

International Mobile Station Equipment Identity (IMEI)

Identificação exclusiva do dispositivo

Utilizado para identificação de dispositivos válidos (autorizados). Ex: *#06#

Unstructured Supplementary Service Data (USSD)Porto Alegre, setembro de 2013

CC: Country CodeFAC: Final Assembly CodeMC: Manufacturer CodeSN: Serial NumberU: Unused

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

CC FAC MC SN U

Page 18: Data Communication  Group http :// networks f.ufrgs.br/dcg

Equipment Identity Register (EIR)

Armazena as listas de acesso sobre os IMEIs, que pode ser : Preta: bloqueados Branca: liberados Cinza: suspeitos

EIR impede o acesso de dispositivos com IMEIs inválidos/bloqueados

18Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 19: Data Communication  Group http :// networks f.ufrgs.br/dcg

Segurança no GSM

19Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

SIMMERede GSM

3. Envia TMSI

4. Estabelecimento do canal

5. REQUISIÇÃO DE AUTENTICAÇÃO (RAND)

8. RESPOSTA DE AUTENTICAÇÃO (SRES)

6. EXECUTA ALGORITMOGSM (RAND)

7. RESPOSTA (SRES, Kc)

1. Envia IMSI

2. Repassa IMSI

Page 20: Data Communication  Group http :// networks f.ufrgs.br/dcg

Operadora GSMME

SIM

Esquema de Autenticação e Criptografia

20Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

A3

A8

A5

Ki

KcFn

mi

A3

A8

A5

Kc Fn

mi

Signed Response (SRES)

Desafio RAND

Dado Criptografado

Ki

Desafio RAND

Autenticação: Valores de SRES são iguais?

mi– Mensagem

Page 21: Data Communication  Group http :// networks f.ufrgs.br/dcg

Agenda

① Segurança na Rede GSM

② Segurança no Gateway Gateway

③ Segurança entre Gateway USSD e

Aplicação

④ Estudo de Caso

21Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 22: Data Communication  Group http :// networks f.ufrgs.br/dcg

Requisitos para um Gateway USSD

22Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Gateway USSD deve: Repassar informações da rede GSM

para a aplicação Traduzir protocolos Interconectar redes Diminuir ao máximo o transporte de

informações não criptografadas

Page 23: Data Communication  Group http :// networks f.ufrgs.br/dcg

Segurança no Gateway Público

23Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Compartilhado com diferentes aplicações USSD terceirizadas

Localizados na operadora

Acesso físico de estranhos: Gateways podem ser modificados por

diferentes operadores que podem ver mensagens confidenciais

Page 24: Data Communication  Group http :// networks f.ufrgs.br/dcg

Segurança no Gateway Público

24Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Mistura de conteúdo: Não confiável Confiável

Cobrança dos usuários: Pela conta telefônica das operadoras

Ausência de auditoria

Page 25: Data Communication  Group http :// networks f.ufrgs.br/dcg

Segurança no Gateway Privado

25Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Uso exclusivo por aplicações USSD específicas

Localização: Local restrito na operadora No próprio serviço terceirizado

Cobrança: Pode ser cobrado na conta bancária

Permite auditoria

Page 26: Data Communication  Group http :// networks f.ufrgs.br/dcg

Gateway USSD Seguro

Segurança no Gateway

26Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Hardware SS7

HSM

Gateway Banco

Tráfego Seguro

Interface de Rádio e SS7

HSM: Hardware Securiy Model

Page 27: Data Communication  Group http :// networks f.ufrgs.br/dcg

Agenda

① Segurança na Rede GSM

② Segurança no Gateway USSD

③ Segurança entre Gateway USSD e

Aplicação

④ Estudo de Caso

27Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 28: Data Communication  Group http :// networks f.ufrgs.br/dcg

Segurança entre Gateway e Aplicação

Grande maioria dos Gateways criptografa a comunicação com o servidor

Algoritmos mais utilizados: RSA (Rivest, Shamir & Adleman)

Chave assimétrica AES (Advanced Encryption Standard)

Chave simétrica

28Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 29: Data Communication  Group http :// networks f.ufrgs.br/dcg

RSA

Algoritmo de chave assimétrica Trabalha com duas chaves

Privada (ou secreta) e pública Embora diferentes, estão matematicamente

ligadas

Proposto por  Ron Rivest, Adi Shamir e Leonard Adleman em 1977

Tamanho das chaves: 512, 1024 ou 2048 (tipicamente)

29Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 30: Data Communication  Group http :// networks f.ufrgs.br/dcg

RSA – Geração das chaves

Chave1 = {e,n} (privada)

Chave2 = {d,n} (pública)

Plaintext (M) e texto criptografado (C) são inteiros entre 0 e n-1, onde n é o tamanho do dado e da chave Criptografia:

C = Me mod n De-criptografia:

M = Cd mod n

30Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 31: Data Communication  Group http :// networks f.ufrgs.br/dcg

RSA – Geração das chaves

Seleciona dois números primos grandes p q, onde p ≠ q

n = p * q

Calcula Φ = (p-1)(q-1)

Seleciona e, tal que mmc(Φ,e)=1; 0 < e < Φ

Calcula d, tal que d * e mod Φ = 1

31Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 32: Data Communication  Group http :// networks f.ufrgs.br/dcg

AES

Algoritmo de chave simétrica Mesma chave utilizada para criptografar e

de-criptografar

Baseado no cifrador de Rijndael (Rijndael cipher)

Amplamente adotada pelo governo dos EUA

Considerada “quebrável” via força bruta Não existe capacidade computacional

suficiente para quebra-la hoje 32Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 33: Data Communication  Group http :// networks f.ufrgs.br/dcg

AES

Trabalha com 3 tamanhos de chaves 128, 192 e 256

Aplica o conceito de rede de permutação e substituição

Aplica um número de ciclos (rounds) de transformação do dado de entrada (plaintext), de acordo com o tamanho da chave 10 ciclos para chaves de 128 bits 12 ciclos para chaves de 192 bits 14 ciclos para chaves de 256 bits

33Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 34: Data Communication  Group http :// networks f.ufrgs.br/dcg

AES - Detalhes

Entrada (plaintext) é transforada em uma matriz, chamada de estado

Chave de criptografia também é transformada em uma matriz São geradas sub-chaves utilizadas em cada round

Rounds = número de ciclos

http://www.formaestudio.com/rijndaelinspector/archivos/Rijndael_Animation_v4_eng.swf

34Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 35: Data Communication  Group http :// networks f.ufrgs.br/dcg

RSA x AES

35Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Ambos possuem implementação relativamente simples

RSA é computacionalmente mais caro do que AES Trata-se de matemática com números muito

grandes Não há necessidade de compartilhamento de

chaves privadas

AES pode ser implementado com operações entre bits relativamente simples Ambos os lados da comunicação devem compartilhar a

mesma chave

Quanto maior o volume de dados, mais perceptível a diferencia entre complexidade de cada um

Page 36: Data Communication  Group http :// networks f.ufrgs.br/dcg

Qual Utilizar?

36Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Resposta: AMBOS!

Gateway combina os dois algoritmos de criptografia

RSA é utilizado para a troca segura de chaves Chave AES é criptografada com a chave RSA

AES é utilizado para criptografar a mensagem

Page 37: Data Communication  Group http :// networks f.ufrgs.br/dcg

Troca de Mensagens Criptografadas

37Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Aplicação Segura Gateway USSD

RSASocket RSASocket

Connect

Gera Chaves RSA Privada/PúblicaPrivateKey = ARKPublicKey = AUK

Chave AES = AKey

Gera Chaves RSA Privada/PúblicaPrivateKey = GRKPublicKey = GUK

Chave AES = GKeyTCP/IP Connect

Envia AUK

Envia GUK

TCP/IP Accept

Envia AKey (criptografada com GUK)

Envia GKey (criptografada com AUK)

Estabelecimento de conexãoTCP/IP

Troca das chaves AES

Troca das chaves RSA Públicas

Page 38: Data Communication  Group http :// networks f.ufrgs.br/dcg

Troca de Mensagens Criptografadas

38Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Aplicação Segura Gateway USSD

RSASocket RSASocket

USSD XML (bind)

Criptografa com a chave GKey

De-criptografa com a chave GKey

Envia XML Criptografado

Envia XML Criptografado

USSD XML (response)

Criptografa com a chave AKey

USSD XML (response)

De-criptografa com a chave AKey

Processo de

Binding

Page 39: Data Communication  Group http :// networks f.ufrgs.br/dcg

Troca de Mensagens Criptografadas

39Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Aplicação Segura Gateway USSD

RSASocket RSASocket

De-criptografa XML com a chave AKey

USSD XML (begin)

USSD XML (end/continue)

Criptografa XML com a chave GKey

Envia XML Criptografado

USSD XML (begin)

Criptografa XML com AKey

Envia XML Criptografado

De-criptografa XML com GKey

USSD XML (end/continue)

USSD Service

Page 40: Data Communication  Group http :// networks f.ufrgs.br/dcg

Troca de Mensagens Criptografadas

40Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Demonstração de troca de pacotes no LeibICT

Page 41: Data Communication  Group http :// networks f.ufrgs.br/dcg

Análise de Desempenho

41Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Análise sobre o Gateway LeibICT (simulador)

1000 requisições ao Gateway

Taxa de 10 requisições/segundoTamanho da chave RSA Pacotes Bytes Bytes/Pacote % Máx.

Requisições/s

Sem criptografia

3006 1105182 367,7 100,00 750+

512 3001 1328380 442,6 120,40 67-69

1024 2988 1327960 444,4 120,88 35-36

2048 2693 1459414 541,9 147,40 11-12

Page 42: Data Communication  Group http :// networks f.ufrgs.br/dcg

Agenda

① Segurança no GSM

② Segurança no Gateway

③ Segurança entre Gateway e

Aplicação

④ Estudo de Caso

42Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Page 43: Data Communication  Group http :// networks f.ufrgs.br/dcg

Partner Matched Technology(África do Sul)

43Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Rede Nokia/Siemens

Afirmam que não se deve utilizar Gateways públicos

Propõe uma solução para instituições financeiras, que inclui: Servidor de segurança Serviços de auditoria Pacote de integração com a prestadora de

serviços

Page 44: Data Communication  Group http :// networks f.ufrgs.br/dcg

Segurança no Gateway

44Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Facility Segura

HSM

Core USSD

Banco

Banco

Dispositivo

VPN

USSDMAP

Gateway

HLR Rede GSM

Link Seguro

Infraestrutura

MNO existente

HSM: Hardware Securiy Model

Page 45: Data Communication  Group http :// networks f.ufrgs.br/dcg

Facility Segura

HSM

Core USSD

Banco

Banco

Dispositivo

VPN

USSDMAP

Gateway

HLR Rede GSM

Link Seguro

Infraestrutura

MNO existente

Segurança no Gateway

45Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Pilha SS7

Pilha SS7

Hardware SS7

Hardware SS7

STP

USSDMAP

Gateway

Facility SeguraLink E1

Page 46: Data Communication  Group http :// networks f.ufrgs.br/dcg

Partner Matched Technology(África do Sul)

46Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Garantem: Validação do SIM card Criptografia para transações financeiras,

utilizando um Hardware Security Model (HSM) Cada instituição financeira registra sua

chave criptográfica no HSM Habilita um processo de auditoria

“aceitável” Somente a instituição financeira consegue

de-criptografar Segurança física de acesso ao ambiente de

rede

Page 47: Data Communication  Group http :// networks f.ufrgs.br/dcg

Segurança no Gateway

47Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Criptografia deRádio

VPN

SSL

PIN

ServidorUSSD

Gateway

RoteadorSeguro

USSD Mobile Bankin

g

Page 48: Data Communication  Group http :// networks f.ufrgs.br/dcg

Referências

48Unstructured Supplementary Service Data (USSD)

Porto Alegre, setembro de 2013

Raj Jain - Advanced Topics in Networking: Wireless and Mobile Networking: Network Security Concepts (Spring 2006)

https://www.boxcryptor.com/en/aes-and-rsa-encryption LeibICT – USSD S-Gateway Documentation Desai, S. “Mitigating Security Risks in USSD-based

Mobile Payment Applications”, Aujas white paper, 2011. “Secure USSD Facility for Financial Institutions”, Pattern

Matched Technologies white paper, 2010. Korkusuz, A. “Security in the GSM Network”,

Dissertação de mestrado, Bogazici University, Turquial, 2012.

3 GPP TS 43.020 v12.0.0, 2013-03

Page 49: Data Communication  Group http :// networks f.ufrgs.br/dcg

`

Obrigado!Perguntas?

Cristiano Bonato [email protected]

Unstructured SupplementaryService Data (USSD)

Porto Alegre, setembro de 2013

http://networks.inf.ufrgs.br/dcg