SlideShare a Scribd company logo
Second factor authentication in
LemonLDAP::NG
Pass the SALT 2018
Xavier GUIMARD Clément OUDOT
MFA / 2FA / OTP / U2F ?
Multi Factor Authentication
Multi-factor authentication (MFA) is a method of
confrming a user's claimed identity in which a
user is granted access only after successfully
presenting 2 or more pieces of evidence (or
factors) to an authentication mechanism:
●
knowledge (something they and only they
know)
●
possession (something they and only they
have)
●
inherence (something they and only they are)
Definition from Wikipedia
Why you need it
●
Passwords are still the main security token
used to authenticate
●
With GPU and rainbow tables it is more and
more easy to crack a password
●
A password base can be stolen
●
Second factor authentication is hype (see
Twitter, Github, LinkedIn...)
One-Time Password
●
One-Time Password (OTP) is a password that is
valid for only one login session or transaction
●
Two standards:
– HOTP (RFC 4226): HMAC-Based One-Time
Password
– TOTP (RFC 6238): Time-Based One-Time Password
●
Rely on a secret shared between user and
server
TOTP
●
Shared secret key K
●
T0: start time
●
TI: time interval
●
Time Counter TC = foor((unixtime(now) −
unixtime(T0)) / TI)
●
TOTP = Truncate( SHA1(K 0x5c5c… SHA1(K⊕ ∥
0x3636… TC)) ) & 0x7FFFFFFF⊕ ∥
●
TOTP Value = TOTP mod 10d, where d is the
desired number of digits of the one-time
password
Using a TOTP
●
Registration on
client: shared key can
be registered
manually or using a
QR code
●
Server associates
shared secret to user
●
At next
authentication, TOTP
value is computed by
client and server
Universal Second Factor
●
Universal 2nd Factor (U2F) is an open authentication
standard that strengthens and simplifes two-factor
authentication using specialized USB or NFC devices.
●
Managed by FIDO Alliance https://fdoalliance.org/
●
Support in modern browsers:
– Chrome/Chromium ≥ 38
– Firefox:
●
38 to 56 with U2F Support Add-on
●
57 to 59, with “security.webauth.u2f” set to “true” in
“about:confg”
●
probably enabled by default for versions ≥ 60
– Opera ≥ 40
Using U2F
●
Registration: Token
generates private/public
keys and a handle and send
public key and handle to
server
●
The server associates the
public key and the handle
to user
●
At next authentication,
server sends the handle
and a crypto challenge and
the U2F token signs the
challenge and sends it back
[Pass The SALT 2018] Second factor authentication in LemonLDAP::NG
[Pass The SALT 2018] Second factor authentication in LemonLDAP::NG
Implementation in
LemonLDAP::NG
LemonLDAP::NG
●
WebSSO, Access Control and Identity Provider
●
Apache, Nginx, Node.js, Plack support
●
Default protection by Handler, identity forwarded
trough HTTP headers
●
Standard protocols: CAS, SAML and OpenID
Connect
●
Self services (password change, password lost,
account registration)
●
GPL License
●
https://lemonldap-ng.org
2FA implementation
●
New feature for 2.0 major version
●
Possibility to add a second authentication step to
any current authentication method
●
A lot of possibilities to ask a second factor:
– U2F tokens
– TOTP (to use with FreeOTP, Google-Authenticator,…)
– U2F-or-TOTP (enable both U2F and TOTP)
– Yubikey tokens provide by Yubico
– REST (Remote REST app)
– External 2F (to call an external command)
Ask for second factor
User self registration
User self management
2FA sessions explorer
[Pass The SALT 2018] Second factor authentication in LemonLDAP::NG

More Related Content

PPT
MQTT security
PDF
The Easy Way to Secure Microservices
PDF
Last mile authentication problem: Exploiting the missing link in end-to-end s...
PDF
FIPS 140-2 Validations in a Secure Enclave
PDF
[LDAPCon 2019] LemonLDAP::NG 2.0: Mutli-factor authentication, Identity Feder...
PDF
wolfSSL and TLS 1.3
PPSX
Secure socket layer
PPTX
Bitcoin cryptography
MQTT security
The Easy Way to Secure Microservices
Last mile authentication problem: Exploiting the missing link in end-to-end s...
FIPS 140-2 Validations in a Secure Enclave
[LDAPCon 2019] LemonLDAP::NG 2.0: Mutli-factor authentication, Identity Feder...
wolfSSL and TLS 1.3
Secure socket layer
Bitcoin cryptography

Similar to [Pass The SALT 2018] Second factor authentication in LemonLDAP::NG (20)

PPTX
Google authentication
PDF
The OpenID Connect Protocol
PPTX
Fido U2F Protocol by Ather Ali
PPTX
Fido U2F PROTOCOL
PPTX
DFIR Training: RDP Triage
PDF
OpenID Connect Explained
PPTX
Digital authentication
PDF
WebAuthn & FIDO2
PPTX
Security Best Practices for Your Ignition System
PDF
FIDO U2F 1.0 Specs: Overview and Insights
PPTX
OpenId Connect Protocol
PDF
Securing Your Resources with Short-Lived Certificates!
PDF
Industry Best Practices for SSH Access
PDF
Industry Best Practices For SSH - DevOps.com Webinar
PDF
Creating OTP with free software
PDF
[APIdays INTERFACE 2021] The Evolution of API Security for Client-side Applic...
PDF
INTERFACE, by apidays - The Evolution of API Security by Johann Dilantha Nal...
PDF
Fast IDentity Online New wave of open authentication standards
PDF
FIDO2 and Microsoft
PDF
CIS14: An Overview of FIDO’s Universal 2nd Factor (U2F) Specification
Google authentication
The OpenID Connect Protocol
Fido U2F Protocol by Ather Ali
Fido U2F PROTOCOL
DFIR Training: RDP Triage
OpenID Connect Explained
Digital authentication
WebAuthn & FIDO2
Security Best Practices for Your Ignition System
FIDO U2F 1.0 Specs: Overview and Insights
OpenId Connect Protocol
Securing Your Resources with Short-Lived Certificates!
Industry Best Practices for SSH Access
Industry Best Practices For SSH - DevOps.com Webinar
Creating OTP with free software
[APIdays INTERFACE 2021] The Evolution of API Security for Client-side Applic...
INTERFACE, by apidays - The Evolution of API Security by Johann Dilantha Nal...
Fast IDentity Online New wave of open authentication standards
FIDO2 and Microsoft
CIS14: An Overview of FIDO’s Universal 2nd Factor (U2F) Specification
Ad

More from Worteks (20)

PDF
[Open Source Experience 2021] Une infrastructure Cloud et une solution IDaaS ...
PDF
[Identity Days 2021] W'IDaaS - Identity as a Service
PDF
[Identity Days 2021] Quel avenir pour OpenLDAP ?
PDF
[Pass the SALT 2021] Hosting Identity in the Cloud with free softwares
PDF
[OW2con'21] Hosting Identity in the Cloud with OW2 free softwares
PDF
[AFUP Lyon 2021] LDAP Tool Box Self Service Password
PDF
[OpenDay 2021] Logiciel libre, entreprises et modèles économiques
PDF
[Campus du Libre 2020] Présentation de la solution W'Sweet
PDF
[Identity Days 2020] Politique des mots de passe des annuaires LDAP et outils...
PDF
[Université Lyon 1] Exemples de logiciels libres : LemonLDAP::NG et W'Sweet
PDF
[Pass the SALT 2020] Understand password policy in OpenLDAP and discover tool...
PDF
[OW2online 2020] LDAP Synchronization Connector
PDF
[Aperhologramme 2020] Comment faire du logiciel libre ?
PDF
[POSS 2019] OVirt and Ceph: Perfect Combination.?
PDF
[POSS 2019] MicroServices authentication and authorization with LemonLDAP::NG
PDF
[POSS 2019] TLS for Dummies
PDF
[POSS 2019] Learn AWK in 15 minutes
PDF
[LDAPCon 2019] The FusionIAM initiative
PDF
[Identity Days 2019] Maîtrisez les accès à vos applications Web (Cloud et On...
PDF
[RedHat Forum 2019] REX - COMMENT MONTER UNE OFFRE DE CLOUD EN MARQUE BLANCHE...
[Open Source Experience 2021] Une infrastructure Cloud et une solution IDaaS ...
[Identity Days 2021] W'IDaaS - Identity as a Service
[Identity Days 2021] Quel avenir pour OpenLDAP ?
[Pass the SALT 2021] Hosting Identity in the Cloud with free softwares
[OW2con'21] Hosting Identity in the Cloud with OW2 free softwares
[AFUP Lyon 2021] LDAP Tool Box Self Service Password
[OpenDay 2021] Logiciel libre, entreprises et modèles économiques
[Campus du Libre 2020] Présentation de la solution W'Sweet
[Identity Days 2020] Politique des mots de passe des annuaires LDAP et outils...
[Université Lyon 1] Exemples de logiciels libres : LemonLDAP::NG et W'Sweet
[Pass the SALT 2020] Understand password policy in OpenLDAP and discover tool...
[OW2online 2020] LDAP Synchronization Connector
[Aperhologramme 2020] Comment faire du logiciel libre ?
[POSS 2019] OVirt and Ceph: Perfect Combination.?
[POSS 2019] MicroServices authentication and authorization with LemonLDAP::NG
[POSS 2019] TLS for Dummies
[POSS 2019] Learn AWK in 15 minutes
[LDAPCon 2019] The FusionIAM initiative
[Identity Days 2019] Maîtrisez les accès à vos applications Web (Cloud et On...
[RedHat Forum 2019] REX - COMMENT MONTER UNE OFFRE DE CLOUD EN MARQUE BLANCHE...
Ad

Recently uploaded (20)

PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
Softaken Excel to vCard Converter Software.pdf
PPTX
history of c programming in notes for students .pptx
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
System and Network Administration Chapter 2
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PPTX
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PPTX
ai tools demonstartion for schools and inter college
PDF
Understanding Forklifts - TECH EHS Solution
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
PTS Company Brochure 2025 (1).pdf.......
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PPT
Introduction Database Management System for Course Database
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
Softaken Excel to vCard Converter Software.pdf
history of c programming in notes for students .pptx
Navsoft: AI-Powered Business Solutions & Custom Software Development
How to Choose the Right IT Partner for Your Business in Malaysia
System and Network Administration Chapter 2
How to Migrate SBCGlobal Email to Yahoo Easily
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
2025 Textile ERP Trends: SAP, Odoo & Oracle
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
ai tools demonstartion for schools and inter college
Understanding Forklifts - TECH EHS Solution
Operating system designcfffgfgggggggvggggggggg
Upgrade and Innovation Strategies for SAP ERP Customers
VVF-Customer-Presentation2025-Ver1.9.pptx
PTS Company Brochure 2025 (1).pdf.......
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Introduction Database Management System for Course Database
wealthsignaloriginal-com-DS-text-... (1).pdf

[Pass The SALT 2018] Second factor authentication in LemonLDAP::NG

  • 1. Second factor authentication in LemonLDAP::NG Pass the SALT 2018 Xavier GUIMARD Clément OUDOT
  • 2. MFA / 2FA / OTP / U2F ?
  • 3. Multi Factor Authentication Multi-factor authentication (MFA) is a method of confrming a user's claimed identity in which a user is granted access only after successfully presenting 2 or more pieces of evidence (or factors) to an authentication mechanism: ● knowledge (something they and only they know) ● possession (something they and only they have) ● inherence (something they and only they are) Definition from Wikipedia
  • 4. Why you need it ● Passwords are still the main security token used to authenticate ● With GPU and rainbow tables it is more and more easy to crack a password ● A password base can be stolen ● Second factor authentication is hype (see Twitter, Github, LinkedIn...)
  • 5. One-Time Password ● One-Time Password (OTP) is a password that is valid for only one login session or transaction ● Two standards: – HOTP (RFC 4226): HMAC-Based One-Time Password – TOTP (RFC 6238): Time-Based One-Time Password ● Rely on a secret shared between user and server
  • 6. TOTP ● Shared secret key K ● T0: start time ● TI: time interval ● Time Counter TC = foor((unixtime(now) − unixtime(T0)) / TI) ● TOTP = Truncate( SHA1(K 0x5c5c… SHA1(K⊕ ∥ 0x3636… TC)) ) & 0x7FFFFFFF⊕ ∥ ● TOTP Value = TOTP mod 10d, where d is the desired number of digits of the one-time password
  • 7. Using a TOTP ● Registration on client: shared key can be registered manually or using a QR code ● Server associates shared secret to user ● At next authentication, TOTP value is computed by client and server
  • 8. Universal Second Factor ● Universal 2nd Factor (U2F) is an open authentication standard that strengthens and simplifes two-factor authentication using specialized USB or NFC devices. ● Managed by FIDO Alliance https://fdoalliance.org/ ● Support in modern browsers: – Chrome/Chromium ≥ 38 – Firefox: ● 38 to 56 with U2F Support Add-on ● 57 to 59, with “security.webauth.u2f” set to “true” in “about:confg” ● probably enabled by default for versions ≥ 60 – Opera ≥ 40
  • 9. Using U2F ● Registration: Token generates private/public keys and a handle and send public key and handle to server ● The server associates the public key and the handle to user ● At next authentication, server sends the handle and a crypto challenge and the U2F token signs the challenge and sends it back
  • 13. LemonLDAP::NG ● WebSSO, Access Control and Identity Provider ● Apache, Nginx, Node.js, Plack support ● Default protection by Handler, identity forwarded trough HTTP headers ● Standard protocols: CAS, SAML and OpenID Connect ● Self services (password change, password lost, account registration) ● GPL License ● https://lemonldap-ng.org
  • 14. 2FA implementation ● New feature for 2.0 major version ● Possibility to add a second authentication step to any current authentication method ● A lot of possibilities to ask a second factor: – U2F tokens – TOTP (to use with FreeOTP, Google-Authenticator,…) – U2F-or-TOTP (enable both U2F and TOTP) – Yubikey tokens provide by Yubico – REST (Remote REST app) – External 2F (to call an external command)
  • 15. Ask for second factor