Implementarea Multi Factor Authentication (MFA) pentru validarea utilizatorilor SSL VPN folosind solutia Cisco DUO

George Ciolacu

Security System Engineer- Expert Center

Cisco Duo este o solutie cloud-based de tip MFA (multi factor authentication) prin care se verifica identitatea utilizatorilor inainte de a li se acorda access la aplicatiile corporate si care protejeaza compania de atacuri de tip phising si alte tipuri de amenintari de tip “access”. Solutia analizeaza comportamentul utilizatorilor, locatia si parametrii dispozitivelor utilizate pentru a putea configura politici de acces cat mai granulare.

Informatii generale

Duo SSL VPN suporta inrolare “inline self-service” si Duo Prompt pentru VPN de tip clientless , iar pentru client based SSL VPN (AnyConnect) ne putem folosi de push, apelare telefonica sau token.

Pentru a putea implementa Duo pe gateway-ul de VPN, Cisco ASA va trebui sa ruleze un firmware cu versiunea minima 8.3. 

Diagrama de retea:

Cisco Duo

1) Conexiunea SSL VPN este initiata
2) Se efectueaza autentificarea primara folosind un server on-premise (sau local pe Cisco ASA)
3) Cisco ASA initiaza o sesiune TCP 636 (LDAPS) catre Duo Security
4) Se efectueaza autentificarea secundara prin serviciul Duo Security
5) Cisco ASA primeste raspunsul la autentificarea secundara
6) Conexiunea SSL VPN este stabilita.

Note:

Duo Security pune la dispozitie pasii necesari pentru integrarea cu Cisco ASA folosind linkul urmator: Cisco LDAP

Documentatia aflata mai sus nu cuprinde si configuratia ASA necesara in prealabil cum ar fi activarea serviciului clientless/client SSL VPN, configurare NAT, ACL, etc.

Testarea solutiei

Dupa realizarea integrarii cu platforma Duo Security folosind pasii de mai sus s-a trecut la testarea solutiei pentru cele 2 cazuri: Clientless SSL VPN si AnyConnect SSL VPN.

  • Prin Clientless SSL VPN:

Se acceseaza portalul VPN in care va trebui sa completam cu username si parola ce apartin autentificarii primare (in cazul exemplului nostru am folosit baza de date locala) apoi se apasa butonul Login.

Dupa ce autentificarea primara este reusita, vom fi intampinati de pagia MFA DUO in care avem optiunea de a primi un mesaj push pe telefon sau sa introducem token-ul din aplicatia DUO aflata pe telefon.

Se apasa butonul “Send me a push” iar pe telefon acceptam sau rejectam cererea de autentificare.

Daca cererea este acceptata, atunci vom fi logati in portalul VPN si vom avea access la resursele companiei.

  • Prin AnyConnect SSL VPN:

Se apasa butonul Connect din aplicatia Cisco AnyConnect care va prezenta utilizatorului fereastra de introducere a credentialelor.

 Username si password vor corespunde autentificarii primare, iar in campul second password avem 4 optiuni de completare:

1)      Se introduce token-ul din aplicatia Duo Security instalata pe telefonul utilizatorului
2)      Se introduce cuvantul “push” ce va genera o autentificare de tip push pe telefonul utilizatorului
3)      Se introduce cuvantul “phone” ce va genera un apel telefonic prin care este dictat token-ul
4)      Se introduce cuvantul “sms” ce va genera un SMS trimis cu token-ul pe telefonul utilizatorului

In exemplul nostru, vom folosi cuvantul “push” pentru a trimite o notificare de tip push pe telefonul utilizatorului.

Dupa acceptarea request-ului de pe telefon, se va realiza conexiunea la VPN si utilizatorul va avea access la resursele companiei.