O MAP (Mobile Application Part, 3GPP TS 29.002) é a aplicação SS7 que transporta serviços GSM/UMTS como operações TCAP. As operações-chave incluem SendRoutingInfoForSM e MT-ForwardSM (entrega de SMS), UpdateLocation e CancelLocation (roaming) e ProvideSubscriberInfo e AnyTimeInterrogation (localização/estado) — cada uma identificada por um código de operação MAP.
O que o MAP faz
O MAP é a linguagem falada entre as entidades da rede de núcleo móvel — HLR/HSS, VLR, MSC, SGSN, SMSC, EIR e AUC. Trata da gestão de mobilidade (registar onde está um subscritor), do tratamento de chamadas (encaminhar chamadas para um subscritor em roaming), dos serviços suplementares, da autenticação e do encaminhamento e entrega de mensagens curtas. Cada serviço MAP mapeia numa ou mais operações TCAP invocadas sobre SCCP, endereçadas por global title ao nó certo.
Operações de SMS
Duas operações transportam um SMS terminado no terminal. SendRoutingInfoForSM (SRI-SM) pede ao HLR, para um dado MSISDN, que devolva o IMSI do subscritor e o endereço do MSC/SGSN que o serve atualmente. MT-ForwardSM entrega depois o TPDU SMS-DELIVER a esse nó servidor. MO-ForwardSM transporta uma mensagem originada no terminal do MSC servidor para o SMSC. ReportSM-DeliveryStatus e AlertServiceCentre gerem as repetições quando o subscritor estava inalcançável.
| Operação | Opcode | Finalidade |
|---|---|---|
| sendRoutingInfoForSM | 45 | O HLR devolve IMSI + MSC/SGSN servidor para um MSISDN |
| mt-ForwardSM | 44 | Entregar uma mensagem curta MT ao MSC/SGSN servidor |
| mo-ForwardSM | 46 | Transporta uma mensagem curta originada no telemóvel (MO) para o SMSC |
| reportSM-DeliveryStatus | 47 | O SMSC informa o HLR sobre o resultado da entrega / define o MWD |
| alertServiceCentre | 49 | O HLR alerta o SMSC de que um assinante está novamente acessível |
| readyForSM | 66 | O MSC/SGSN sinaliza que o assinante agora está disponível para SMS |
Operações de mobilidade e dados de subscritor
Quando um subscritor entra em roaming num novo VLR, o VLR envia UpdateLocation ao HLR, que armazena a nova localização e devolve o perfil do subscritor com InsertSubscriberData, depois emite CancelLocation ao VLR antigo. Para uma chamada de entrada, o GMSC usa SendRoutingInfo para perguntar ao HLR onde está o subscritor, e o HLR obtém um número de roaming do MSC servidor via ProvideRoamingNumber. Estas operações são também as abusadas por ataques de rastreio de localização e interceção se não forem filtradas.
| Operação | Opcode | Finalidade |
|---|---|---|
| updateLocation | 2 | O VLR regista um assinante em roaming no HLR |
| cancelLocation | 3 | O HLR remove o assinante do VLR anterior |
| provideRoamingNumber | 4 | O HLR obtém um MSRN do MSC servidor para uma chamada recebida |
| insertSubscriberData | 7 | O HLR baixa o perfil do assinante para o VLR |
| sendRoutingInfo | 22 | O GMSC pergunta ao HLR como encaminhar uma chamada recebida |
| sendAuthenticationInfo | 56 | O VLR/SGSN obtém vetores de autenticação do HLR/AUC |
Operações de interrogação
Existem várias operações MAP para consultar o estado ou a localização de um subscritor para funções de rede legítimas, e são exatamente as que uma signalling firewall vigia mais de perto. AnyTimeInterrogation (ATI) permite a uma entidade autorizada pedir ao HLR a localização e o estado de um subscritor a qualquer momento. ProvideSubscriberInfo (PSI) pede ao MSC/VLR servidor a localização ao nível de célula e a alcançabilidade. Recebidas através de uma interligação a partir de uma rede estrangeira, ambas são fortes indicadores de uma tentativa de ataque de rastreio de localização.
| Operação | Opcode | Devolve |
|---|---|---|
| anyTimeInterrogation | 71 | Localização + estado do assinante a partir do HLR (a pedido) |
| provideSubscriberInfo | 70 | Célula/área de localização + estado do assinante a partir do MSC/VLR servidor |
| provideSubscriberLocation | 83 | Localização geográfica via GMLC (LCS) |
| sendIMSI | 58 | IMSI para um determinado MSISDN do HLR |
| anyTimeSubscriptionInterrogation | 62 | Dados de assinatura do HLR (a pedido) |
Perguntas frequentes
Para que serve o SendRoutingInfoForSM?
O SRI-SM (opcode 45) é o primeiro passo da entrega de MT-SMS: o SMSC pede ao HLR do destinatário que devolva o IMSI do subscritor e o endereço do MSC ou SGSN que o serve atualmente, para que a mensagem possa ser encaminhada para o nó certo. Também revela informação que os atacantes procuram.
Qual é a diferença entre MT-ForwardSM e MO-ForwardSM?
O MT-ForwardSM (opcode 44) entrega uma mensagem terminada no terminal do SMSC até ao MSC/SGSN servidor de um terminal. O MO-ForwardSM (opcode 46) transporta uma mensagem originada no terminal no sentido inverso — do MSC servidor até ao SMSC.
O que faz o UpdateLocation?
O UpdateLocation (opcode 2) é enviado por um VLR ao HLR do subscritor quando este entra em roaming na sua área, registando o novo nó servidor. O HLR descarrega depois o perfil do subscritor com InsertSubscriberData e cancela o registo antigo com CancelLocation. Um UpdateLocation forjado é um vetor de interceção clássico.
Porque é que AnyTimeInterrogation e ProvideSubscriberInfo são sensíveis à segurança?
Ambas devolvem a localização e o estado de um subscritor. Usadas dentro de uma rede suportam serviços legítimos, mas recebidas de uma rede estrangeira por interligação são uma marca de rastreio de localização — e é por isso que a GSMA FS.11 as classifica como mensagens a bloquear ou escrutinar na fronteira SS7.
Onde estão definidos os códigos de operação MAP?
Na 3GPP TS 29.002, a especificação MAP, que define cada operação, os seus argumentos e erros, e o código de operação usado no Invoke do TCAP. O mesmo documento define os application contexts negociados na parte de diálogo do TCAP.
Especificações de origem
Os padrões publicados nos quais esta página se baseia. Abre num novo separador.