Você está na página 1de 5

AAA Framework - Gerenciamento de Identidade:

O AAA um framework que tem como foco o controle de acesso a recursos


e servios de Rede. Ele possui trs funes, e so resumidas em
autenticao, autorizao e auditoria (ou accounting), dai o nome AAA, no
ingls triple A.
Para auxiliar nessas funes de autenticao, autorizao e auditoria, o AAA
utiliza alguns protocolos de segurana que suportam essas funes. Dois
dos mais conhecidos so Radius e Tacacs+.
Vou focar alguns (vrios) posts relacionados a gerenciamento de identidade,
mas todo o contedo tcnico que eu postar relacionado a esse assunto tem
a ver com as trs funes do AAA.
O contedo tcnico que eu vou postar focado em ambiente Cisco.
No mercado existem vrias ferramentas que podem Gerenciar
identidades, controlar o acesso a servios de rede. Mas o foco aqui sero
os produtos da Cisco, como o ISE e o ACS.
Agora em mais detalhes segue o que cada funo do AAA trata:
- Autenticao: essa funo verifica a identidade de quem est acessando
a rede ou algum recurso da rede. Comparando essa funo com alguma
atividade do dia-a-dia, podemos imaginar essa funo como quem pergunta
em uma portaria: Quem voc?. Essa funo verifica a identidade se
baseando no que voc tem, no que voc sabe ou no que voc . O ato de
voc chegar a uma recepo de um prdio e apresentar o seu RG, por
exemplo, uma forma de autenticao.
- Autorizao: essa funo verifica o que voc est autorizado a fazer a
partir do momento que voc autenticado e permitido a acessar algum
recurso de rede. Ele te concede a autorizao a apenas um acesso parcial,
um acesso total, ou no autoriza a realizar alguma coisa. Por exemplo,
imagine que voc foi identificado (autenticado) na recepo do exemplo
acima, agora, voc recebeu um crach que pode ser usado para acessar
apenas uma sala especifica, por exemplo, rea do financeiro. A funo de
autorizao pode ser mais restritiva ou mais permissiva. Isso vai depender
das suas politicas de acesso. Voc poderia receber um acesso mais
permissivo, baseado no seu cargo/funo da empresa, mas novamente,
depende das politicas de acesso implementada no ambiente. Imagine um
presidente de uma corporao, ele na teoria, pode ter acesso full a todo o
ambiente da empresa, enquanto um estagirio receberia acesso apenas ao
ambiente que o seu superior lhe concede.
- Auditoria (Accounting): Bem, essa funo registra o que voc fez
enquanto esteve autenticado e autorizado. Adaptando a funo de
auditoria do AAA ao nosso dia-a-dia, e aos nossos exemplos anteriores: voc
j foi identificado (autenticado) na recepo, teve o acesso permitido

apenas ao departamento financeiro (autorizado) e agora a passagem do seu


crach (que provavelmente tem um id) registrada em um sistema de
segurana, gravando o horrio de entrada, horrio que voc acessou os
setores que voc era permitido e o horrio de sada. Esses registros (logs)
normalmente so utilizados para auditoria/investigao de algum incidente.
Entenda essa funo como o servio responsvel por envio de logs de
autenticao, autorizao, atividades e etc. No irei usar a traduo ao p
da letra do termo Accounting, pois no faria muito sentido com o nome do
framework (Accounting = Contabilidade), ento, usarei o nome auditoria
quando for me referir a funo de Accounting.
Protocolos de segurana usados com o AAA:
Bom, agora que foram apresentadas as funes do AAA, vamos falar mais
de dois protocolos de segurana que so usados para suportar essas
funes. Primeiro falaremos do Radius, depois em outro post, falarei um
pouco sobre o Tacacs+.
RADIUS:
Protocolo de padro aberto, desenvolvido pela Livingston Enterprises. Possui
como caracterstica a interoperabilidade com equipamentos de rede de
qualquer fabricante. Ele opera em um modelo Client-Server, onde o
cliente seria, por exemplo, um switch, um router, um firewall, um WirelessController, etc, que comumente chamado de NAS (Network Access
Server), que enviam requisies de acesso ao Radius, onde, voc pode
configurar Perfis de acesso, e aplicar atributos a determinadas sesses de
acesso a rede (802.1x, VPN) ou acesso a equipamento para administrao.
O Radius usa UDP como protocolo de transmisso e as antigas
implementaes usam a porta 1645 para autenticao e autorizao, e para
o servio de auditoria (accounting) usa-se a porta 1646. Essas portas
conflitam com outros servios, ento, para as novas implementaes, as
portas foram trocadas para 1812 (autenticao/autorizao) e 1813 (servio
de auditoria).
O protocolo Radius possui diversos campos em seu cabealho. Para detalhes
desses campos vou referenciar o link abaixo, onde ele descrito de forma
mais detalhada. O mais importante para os posts posteriores a esse, que
envolvem o protocolo Radius, entender o campo code e attributes.
Link: https://tools.ietf.org/html/rfc2865
- Code: Esse campo, informa o tipo de mensagem que o NAS est enviando
ao Radius-Server. Abaixo os tipos de mensagens:
*1 = Access-Request:
*2 = Access-Accept:
*3 = Access-Reject:

*4 = Accounting-Request:
*5 = Accounting-Response:
*11 = Access-Chalenge:
- Attributes: Esse campo contm a lista dos AVPairs, (valores que devem
ser aplicados a uma determinada sesso) . O Radius suporta 255 atributos,
onde a maioria j pr-definido. As mensagens Access-Request, AccessAccept, Access-Reject e Access-Challenge, podem possuir atributos.
Um exemplo de atributo preenchido que pode ser encontrado em um
Access-Request o atributo User-Name, o valor encontrado nesse
atributo pesquisado no banco de dados de usurio.
Em uma mensagem do tipo Access-Accept (Outbound), podemos
encontrar atributos como o Framed-IP-Address que pode incluir um ip que
deve ser fornecido ao usurio (para aquela sesso), aps ser autenticado.
Abaixo, uma captura de um pacote Radius, entregando em uma mensagem
de Access-Accept o tipo de servio que essa sesso especfica pode
suportar. Para esse exemplo, o t=Service-Type(6): possibilita o servio
de acesso a um host (Login).

Obs.: Pacotes Radius de Auditoria (accounting) tambm usam atributos.

Alm dos atributos padronizados, um pacote Radius pode suportar o envio


de valores especficos, reconhecidos apenas em plataformas de um
determinado fabricante. Nesses casos, no pacote Radius o atributo 26
setado. Esse atributo se chama Vendor-Specific-Attribute (VSA), e dentro
dele existem os valores que devem ser entregues para uma determinada
sesso e que reconhecido apenas por equipamento daquele fabricante.
Dentro desse atributo existe um campo e um ID que identifica o fabricante.
No caso da Cisco, Vendor-ID 9, Vendor Type 1:
Formato dos atributos Cisco:
Protocol:atribute sep value
Obs.: sep define se os atributos so obrigatrios (=) ou opcionais (*).
Por exemplo:
Para uma conexo remota de administrao de dispositivo, o Radius Server
pode entregar os atributos no seguinte formato:

shell:priv-lvl=15
Abaixo um exemplo de captura de um pacote Radius com o Atributo 26
(suporte a VSA) atravs do Wireshark:

- Primeira Linha: o campo Attribute Value Pairs expandido;


- Segunda linha : l = 25 campo referente ao tamanho do atributo /
t=Vendor-Specific(26) informa que o tipo de atributo especifico de um
fabricante / v=Cisco(9), informa que o vendor Cisco e o ID para esse
vendor 9;
- Terceira linha: VSA: l=19 campo referente ao tamanho do atributo / t=
Cisco-AVPair(1): esse campo informa o Vendor Code, no caso (1) /
shell:priv-lvl=15 esse campo informa o valor do atributo que ser
entregue ao NAS para a sesso remota.
Supondo que o NAS seja um roteador/switch Cisco, o nvel de privilgio para
esse user ser 15. Ou seja, nvel mximo.
- Quarta Linha: Cisco-AVPair: shell:priv-lvl=15, o atributo + o valor.
Autenticao e Autorizao na mesma sesso:
Umas das caractersticas do Radius que ele realiza a autenticao e a
autorizao em um mesmo processo. No caso do usurio ser encontrado no
banco de dados de usurio e sua senha for vlida, o Radius envia em uma
mensagem Access-Accept com uma lista de AVPairs que devem ser usados
para essa sesso que foi autenticada. Por exemplo, possvel voc enviar
um vlan ID a um usurio que est tentando acessar a rede, reforando a
politica de acesso.
O Radius no suporta a entrega de comandos para uma sesso de
administrao de device de rede como feito pelo Tacacs+.
Segurana:
Quanto segurana do protocolo, o Radius realiza a criptografia do seu
pacote apenas da senha do usurio. Qualquer outro campo enviado ao
Radius Server em texto claro, inclusive username.
Auditoria (Accounting):
Bom, agora, veremos como o Radius realiza a funo de Auditoria
(Accounting). Como j dito antes, essa funo deve registrar as atividades
de uma sesso autenticada e autorizada. O Radius realiza isso no inicio

(start) e no fim (stop) de uma sesso. As informaes registradas


normalmente so bytes, horrio, pacotes, etc.
Conforme dito antes, a porta 1813 usada para realizar essa funo de
Accounting.

Por enquanto no vou abordar linhas de comando, farei isso quando


escrever um post usando o ACS.
O prximo post irei abordar o protocolo Tacacs+.

Você também pode gostar