Sei sulla pagina 1di 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/

`
Agenda

① Segurança na Rede GSM

② Segurança no Gateway USSD

③ Segurança entre Gateway USSD e


Aplicação

④ Estudo de Caso

Unstructured Supplementary Service Data (USSD)


2
Porto Alegre, setembro de 2013
Necessidades de Segurança na Rede
GSM

 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)

Unstructured Supplementary Service Data (USSD)


3
Porto Alegre, setembro de 2013
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

Unstructured Supplementary Service Data (USSD)


4
Porto Alegre, setembro de 2013
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 suspeitos

Unstructured Supplementary Service Data (USSD)


5
Porto Alegre, setembro de 2013
Arquitetura GSM
MS BSS NSS

GMSC HLR
BTS

BSC MSC
MS - Mobile Station

BTS VLR BSS - Base Station Subsystem


BTS - Base Transceiver Station
BSC - Base Station Controller
NSS - Network Station Subsystem
MSC - Mobile Services Switching Center
VLR - Visitior Location Register
BSC HLR - Home Location Register
AuC - Autentiction Center
AuC SMSC EIR - Equipment Identitty Register
SMSC - Short Message Service Center
GMSC – Gateway MSC 6
BTS EIR
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
Unstructured Supplementary Service Data (USSD)
7
Porto Alegre, setembro de 2013
International Mobile Subscriber
Identity
 Identifica o usuário e operadora

 Usuário pode “passar” seus dados para


diferentes dispositivos móveis

MCC MCN MSIN

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

MCC – Mobile Country code


MCN - Mobile Network Code
MSIM – Mobile Station Identification
Number

Unstructured Supplementary Service Data (USSD)


8
Porto Alegre, setembro de 2013
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

Unstructured Supplementary Service Data (USSD)


9
Porto Alegre, setembro de 2013
Algoritmos A3

 Confidencialidade da identidade do usuário

RAND (128 bits)

Ki (128 bits)
A3 SRES (32 bits)

RAND – Desafio randômico gerado pelo AuC


Ki – Authentication Key
SRES – Signed Response

Unstructured Supplementary Service Data (USSD)


10
Porto Alegre, setembro de 2013
Algoritmos A8

 Confidencialidade de dados (SMS, voz,


etc.)

RAND (128 bits)

Ki (128 bits)
A8 Kc (64 bits)

RAND – Desafio randômico gerado pelo AuC


Ki– Authentication key
Kc – Ciphering Key – Chave de cifra

Unstructured Supplementary Service Data (USSD)


11
Porto Alegre, setembro de 2013
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
Unstructured Supplementary Service Data (USSD)
12
Porto Alegre, setembro de 2013
Criptografia no ME

Kc (64 bits)
(produzido pelo A8)

A5 Texto criptografado
Fn (22 bits) (114 bits)

Dado (plaintext)

Kc – Ciphering Key – Chave de cifra


Fn– Número do Quadro

Unstructured Supplementary Service Data (USSD)


13
Porto Alegre, setembro de 2013
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
Unstructured Supplementary Service Data (USSD)
14
Porto Alegre, setembro de 2013
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)

Unstructured Supplementary Service Data (USSD)


15
Porto Alegre, setembro de 2013
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

Unstructured Supplementary Service Data (USSD)


16
Porto Alegre, setembro de 2013
International Mobile Station
Equipment Identity (IMEI)
 Identificação exclusiva do dispositivo

 Utilizado para identificação de dispositivos


válidos (autorizados). Ex: *#06#

CC FAC MC SN U
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

CC: Country Code


FAC: Final Assembly Code
MC: Manufacturer Code
SN: Serial Number
U: Unused

Unstructured Supplementary Service Data (USSD)


17
Porto Alegre, setembro de 2013
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

Unstructured Supplementary Service Data (USSD)


18
Porto Alegre, setembro de 2013
Segurança no GSM

Rede GSM ME SIM


1. Envia IMSI
2. Repassa IMSI

3. Envia TMSI

4. Estabelecimento do canal

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


6. EXECUTA ALGORITMO
GSM (RAND)

7. RESPOSTA (SRES, Kc)

8. RESPOSTA DE AUTENTICAÇÃO (SRES)

Unstructured Supplementary Service Data (USSD)


19
Porto Alegre, setembro de 2013
Esquema de Autenticação e
Criptografia

ME Operadora GSM
SIM Desafio RAND

Ki Signed Response (SRES) Ki


A3 A3
Desafio RAND

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

Fn Kc Kc Fn
mi Dado Criptografado mi
A5 A5

mi– Mensagem
Unstructured Supplementary Service Data (USSD)
20
Porto Alegre, setembro de 2013
Agenda

① Segurança na Rede GSM

② Segurança no Gateway Gateway

③ Segurança entre Gateway USSD e


Aplicação

④ Estudo de Caso

Unstructured Supplementary Service Data (USSD)


21
Porto Alegre, setembro de 2013
Requisitos para um Gateway USSD

 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

Unstructured Supplementary Service Data (USSD)


22
Porto Alegre, setembro de 2013
Segurança no Gateway Público

 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

Unstructured Supplementary Service Data (USSD)


23
Porto Alegre, setembro de 2013
Segurança no Gateway Público

 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

Unstructured Supplementary Service Data (USSD)


24
Porto Alegre, setembro de 2013
Segurança no Gateway Privado

 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

Unstructured Supplementary Service Data (USSD)


25
Porto Alegre, setembro de 2013
Segurança no Gateway

Gateway USSD Seguro

Hardwar
Gateway Banco
e SS7

Interface de
Rádio e SS7
HSM
Tráfego Seguro

HSM: Hardware Securiy Model

Unstructured Supplementary Service Data (USSD)


26
Porto Alegre, setembro de 2013
Agenda

① Segurança na Rede GSM

② Segurança no Gateway USSD

③ Segurança entre Gateway USSD e


Aplicação

④ Estudo de Caso

Unstructured Supplementary Service Data (USSD)


27
Porto Alegre, setembro de 2013
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

Unstructured Supplementary Service Data (USSD)


28
Porto Alegre, setembro de 2013
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)
Unstructured Supplementary Service Data (USSD)
29
Porto Alegre, setembro de 2013
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
Unstructured Supplementary Service Data (USSD)
30
Porto Alegre, setembro de 2013
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

Unstructured Supplementary Service Data (USSD)


31
Porto Alegre, setembro de 2013
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
Unstructured Supplementary Service Data (USSD)
32
Porto Alegre, setembro de 2013
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

Unstructured Supplementary Service Data (USSD)


33
Porto Alegre, setembro de 2013
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

Unstructured Supplementary Service Data (USSD)


34
Porto Alegre, setembro de 2013
RSA x AES

 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
Unstructured Supplementary Service Data (USSD)
35
Porto Alegre, setembro de 2013
Qual Utilizar?

 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

Unstructured Supplementary Service Data (USSD)


36
Porto Alegre, setembro de 2013
Troca de Mensagens Criptografadas

Aplicação Segura Gateway USSD


RSASocket RSASocket
Connect

Gera Chaves RSA Privada/Pública Gera Chaves RSA Privada/Pública


PrivateKey = ARK PrivateKey = GRK
PublicKey = AUK PublicKey = GUK
Chave AES = AKey Chave AES = GKey
TCP/IP Connect
TCP/IP Accept Estabelecimento de conexão
TCP/IP

Envia AUK
Envia GUK Troca das chaves RSA Públicas

Envia AKey (criptografada com GUK)

Envia GKey (criptografada com AUK) Troca das chaves AES

Unstructured Supplementary Service Data (USSD)


37
Porto Alegre, setembro de 2013
Troca de Mensagens Criptografadas

Aplicação Segura Gateway USSD


RSASocket RSASocket
USSD XML (bind)
Processo
Criptografa com a chave GKey de
Envia XML Criptografado
Binding
De-criptografa com a chave GKey

USSD XML (response)

Criptografa com a chave AKey


Envia XML Criptografado

De-criptografa com a chave AKey

USSD XML (response)

Unstructured Supplementary Service Data (USSD)


38
Porto Alegre, setembro de 2013
Troca de Mensagens Criptografadas

Aplicação Segura Gateway USSD


RSASocket RSASocket

USSD XML (begin)


USSD
Criptografa XML com AKey Service
Envia XML Criptografado

De-criptografa XML com a chave AKey

USSD XML (begin)

USSD XML (end/continue)

Criptografa XML com a chave GKey


Envia XML Criptografado

De-criptografa XML com GKey

USSD XML (end/continue)

Unstructured Supplementary Service Data (USSD)


39
Porto Alegre, setembro de 2013
Troca de Mensagens Criptografadas

 Demonstração de troca de pacotes no LeibICT

Unstructured Supplementary Service Data (USSD)


40
Porto Alegre, setembro de 2013
Análise de Desempenho

 Análise sobre o Gateway LeibICT (simulador)

 1000 requisições ao Gateway

 Taxa de 10 requisições/segundo
Tamanho da Máx.
Pacotes Bytes Bytes/Pacote %
chave RSA Requisições/s
Sem
3006 1105182 367,7 100,00 750+
criptografia
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

Unstructured Supplementary Service Data (USSD)


41
Porto Alegre, setembro de 2013
Agenda

① Segurança no GSM

② Segurança no Gateway

③ Segurança entre Gateway e Aplicação

④ Estudo de Caso

Unstructured Supplementary Service Data (USSD)


42
Porto Alegre, setembro de 2013
Partner Matched Technology
(África do Sul)
 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
Unstructured Supplementary Service Data (USSD)
43
Porto Alegre, setembro de 2013
Segurança no Gateway

Facility Segura Infraestrutura


Link Seguro
MNO existente

Banco

USSD
Dispositivo Core Rede GSM
MAP HLR
VPN USSD
Gateway
Banco

HSM

HSM: Hardware Securiy Model

Unstructured Supplementary Service Data (USSD)


44
Porto Alegre, setembro de 2013
Segurança no Gateway
Facility Segura Infraestrutura
Link Seguro
MNO existente

Banco

USSD
Dispositivo Core Rede GSM
MAP HLR
VPN USSD
Gateway
Banco

HSM

Hardware
Pilha SS7
SS7
USSD
MAP STP
Gateway
Hardware
Pilha SS7
SS7

Link E1
Facility Segura
Unstructured Supplementary Service Data (USSD)
45
Porto Alegre, setembro de 2013
Partner Matched Technology
(África do Sul)
 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

Unstructured Supplementary Service Data (USSD)


46
Porto Alegre, setembro de 2013
Segurança no Gateway

VPN

Criptografia de USSD
Rádio Servidor SSL Roteador Gatewa
Seguro
Mobile
USSD y
Banking
PIN

Unstructured Supplementary Service Data (USSD)


47
Porto Alegre, setembro de 2013
Referências

 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

Unstructured Supplementary Service Data (USSD)


48
Porto Alegre, setembro de 2013
Obrigado!
Perguntas?
Cristiano Bonato Both
cbboth@inf.ufrgs.br

http://networks.inf.ufrgs.br/dcg
Unstructured Supplementary
Service Data (USSD)
Porto Alegre, setembro de 2013

Potrebbero piacerti anche